久久久久久久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://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 在线超碰 | 一级黄色生活视频 | 成人超碰在线 | 中文字幕在线视频一区二区三区 | 看一级黄色毛片 | 成人久久18免费网站图片 | 欧美激情va永久在线播放 | 国产亚洲网站 | 日韩高清一区 | 国产日韩精品一区二区 | 久久久久无码国产精品一区 | 亚洲精品一区国产精品 | 精品国产91久久久久久 | 久久国产成人午夜av影院武则天 | 国产成人午夜电影网 | 日韩精品极品视频在线观看免费 | 精品视频久久久久久 | 亚洲人成一区二区三区性色 | 在线观看国产三级 | 成人精品毛片国产亚洲av十九禁 | 99亚洲精品 | 亚州精品天堂中文字幕 | 欧美激情一区二区三区 | 91精品国产综合久久精品图片 | 中文字幕乱码亚洲精品一区 | 四虎精品在线 | 国产精品人人做人人爽 | 成人三级在线播放 | 欧美成人在线影院 | 盗摄精品av一区二区三区 | 请别相信他免费喜剧电影在线观看 | 久久国产精品久久 | 老司机深夜福利网站 | 久久久久久国产精品免费免费男同 | 亚洲精品久久久久久宅男 | 韩国欧洲一级毛片 | 久久高清 | 免费久久久| 亚洲精品国产成人 | a级免费视频 | www.xxxx欧美 |