欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機PM2.5溫度報警系統proteus仿真+源碼 [打印本頁]

作者: 峰峰喜歡倉鼠    時間: 2018-10-13 16:15
標題: 單片機PM2.5溫度報警系統proteus仿真+源碼
PM2.5溫度報警系統仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序:

  1. 部分代碼:
  2. //18b20初始化函數
  3. void init_18b20()
  4. {
  5.         bit q;
  6.         dq = 1;                                //把總線拿高
  7.         delay_uint(1);            //15us
  8.         dq = 0;                                //給復位脈沖
  9.         delay_uint(80);                //750us
  10.         dq = 1;                                //把總線拿高 等待
  11.         delay_uint(10);                //110us
  12.         q = dq;                                //讀取18b20初始化信號
  13.         delay_uint(20);                //200us
  14.         dq = 1;                                //把總線拿高 釋放總線
  15. }

  16. //寫18b20內的數據
  17. void write_18b20(uchar dat)
  18. {
  19.         uchar i;
  20.         for(i=0;i<8;i++)
  21.         {                                         //寫數據是低位開始
  22.                 dq = 0;                         //把總線拿低寫時間隙開始
  23.                 dq = dat & 0x01; //向18b20總線寫數據了
  24.                 delay_uint(5);         // 60us
  25.                 dq = 1;                         //釋放總線
  26.                 dat >>= 1;
  27.         }        
  28. }


  29. //讀取18b20內的數據
  30. uchar read_18b20()
  31. {
  32.         uchar i,value;
  33.         for(i=0;i<8;i++)
  34.         {
  35.                 dq = 0;                         //把總線拿低讀時間隙開始
  36.                 value >>= 1;         //讀數據是低位開始
  37.                 dq = 1;                         //釋放總線
  38.                 if(dq == 1)                 //開始讀寫數據
  39.                         value |= 0x80;
  40.                 delay_uint(5);         //60us        讀一個時間隙最少要保持60us的時間
  41.         }
  42.         return value;                 //返回數據
  43. }


  44. //讀取溫度的值 讀出來的是小數
  45. uint read_Temp()
  46. {
  47.         uint value;
  48.         uchar low;                           //在讀取溫度的時候如果中斷的太頻繁了,就應該把中斷給關了,否則會影響到18b20的時序
  49.         init_18b20();                   //初始化18b20

  50.         write_18b20(0xcc);           //跳過64位ROM
  51.         write_18b20(0x44);           //啟動一次溫度轉換命令


  52.         init_18b20();                   //初始化18b20

  53.         write_18b20(0xcc);           //跳過64位ROM
  54.         write_18b20(0xbe);           //發出讀取暫存器命令

  55.         low = read_18b20();           //讀溫度低字節
  56.         value = read_18b20();  //讀溫度高字節

  57.         value <<= 8;                   //把溫度的高位左移8位
  58.         value |= low;                   //把讀出的溫度低位放到value的低八位中
  59.         value *= 0.625;               //轉換到溫度值 小數
  60.         return value;                   //返回讀出的溫度 帶小數
  61. }
復制代碼

全部資料51hei下載地址:
程序.rar (96.71 KB, 下載次數: 126)



作者: admin    時間: 2018-10-13 16:19
好像proteus工程不全?只有備份文件
作者: 祁醉醉    時間: 2018-12-18 21:05
這個是還測了PM2.5是嗎?  有去掉這個部分的代碼嗎?
作者: zhzzz    時間: 2019-3-12 09:50
有實物圖嗎
作者: 33233232    時間: 2019-4-17 08:24
可以的,對我有些幫助。
作者: 聽風一小仙    時間: 2019-4-26 16:53
仿真文件不全啊,有沒有完整的

作者: 遷就    時間: 2019-4-27 11:01
感謝樓主分享
作者: yyhlsf    時間: 2019-4-27 19:35
謝謝分享
作者: qwoehoweh    時間: 2020-4-1 23:18
不全不全不全




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1