久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: DS18B20應用,模數轉換顯示溫度 [打印本頁]

作者: zny    時間: 2019-6-8 01:06
標題: DS18B20應用,模數轉換顯示溫度

通過DS18B20的溫度檢測,模數轉化顯示相對應的溫度。

仿真圖,如圖所示。





代碼源程序如下:
  1. #include "reg51.h"
  2. #include "intrins.h"
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. #define out P0

  6. sbit smg1=out^4;
  7. sbit smg2=out^5;
  8. sbit DQ=P3^7;
  9. void delay5(uchar);
  10. void init_ds18b20(void);
  11. uchar readbyte(void);
  12. void writebyte(uchar);
  13. uchar retemp(void);

  14. void main(void)                                              
  15. {
  16.         uchar i,temp;
  17.         delay5(1000);
  18.         while(1)
  19.         {
  20.                  temp=retemp();       
  21.                  for(i=0;i<10;i++)                       
  22.                  {
  23.                          out=(temp/10)&0x0f;
  24.                          smg1=0;
  25.                          smg2=1;
  26.                          delay5(1000);                       
  27.                          out=(temp%10)&0x0f;
  28.                          smg1=1;
  29.                          smg2=0;
  30.                          delay5(1000);                       
  31.                  }
  32.         }
  33. }

  34. void delay5(uchar n)                       
  35. {
  36.          do
  37.          {
  38.                  _nop_();
  39.                  _nop_();
  40.                  _nop_();
  41.                  n--;
  42.          }
  43.          while(n);
  44. }

  45. void init_ds18b20(void)               
  46. {
  47.          uchar x=0;
  48.          DQ =0;   
  49.          delay5(120);
  50.          DQ =1;   
  51.          delay5(16);
  52.          delay5(80);
  53. }

  54. uchar readbyte(void)                        
  55. {
  56.         uchar i=0;
  57.         uchar date=0;
  58.         for (i=8;i>0;i--)
  59.         {
  60.                   DQ =0;
  61.                   delay5(3);       
  62.                         DQ =1;
  63.                   date>>=1;
  64.                   if(DQ)
  65.                   date|=0x80;       
  66.                   delay5(11);
  67.          }
  68.         return(date);
  69. }
  70. void writebyte(uchar dat)                        
  71. {
  72. uchar i=0;
  73. for(i=8;i>0;i--)
  74. {
  75.           DQ =0;
  76.           DQ =dat&0x01;                               
  77.           delay5(12);                                  
  78.           DQ = 1;          
  79.           dat>>=1;
  80.           delay5(5);
  81.           }
  82. }
  83. uchar retemp(void)                       
  84. {
  85.         uchar a,b,tt;
  86.         uint t;
  87.         init_ds18b20();
  88.         writebyte(0xCC);
  89.         writebyte(0x44);
  90.         init_ds18b20();
  91.         writebyte(0xCC);
  92.         writebyte(0xBE);
  93.         a=readbyte();
  94.         b=readbyte();
  95.         t=b;
  96.         t<<=8;
  97.         t=t|a;
  98.         tt=t*0.0625;
  99.         return(tt);
  100. }
復制代碼

所有文件在下方,需要自取。
DS18B20應用.zip (83.46 KB, 下載次數: 16)



作者: Tumen233    時間: 2019-6-8 10:19
謝謝了 這個正好需要
作者: xingmou2000    時間: 2019-6-8 12:12
我做的能顯示小數點后1位




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 成人av在线网站 | 亚洲综合伊人 | 婷婷久久五月 | 99视频在线精品免费观看2 | 天天操夜夜撸 | 成人网av | 亚色在线 | 久久新视频 | 国产一级特黄aaa大片 | 天天干天天操天天爽 | 国产又猛又黄又爽 | 国产毛片毛片 | 一级片免费视频 | 亚洲激情在线 | 成人激情视频网 | 麻豆精品一区二区 | 自拍偷拍中文字幕 | 欧美成人精品一区二区三区在线看 | 亚洲激情网站 | 日本黄色免费网站 | a级片在线| 日韩少妇视频 | 黄色免费在线视频 | 国产操操操 | 国产成人在线播放 | 免费的黄色小视频 | 成人黄色免费 | 欧美顶级黄色大片免费 | 日本黄a三级三级三级 | 国产视频一区二区在线观看 | 亚洲色综合 | 欧美久久一区二区 | 日韩视频第一页 | 国语对白做受欧美 | 黄色一级免费视频 | 超碰在线小说 | av大片在线观看 | 成人午夜激情视频 | 国产福利视频在线 | 久久久久久久影院 | 亚洲天堂一区二区 |