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

標(biāo)題: 單片機(jī)煙霧可燃?xì)怏w甲烷天然氣檢測(cè)程序 [打印本頁(yè)]

作者: f三人行    時(shí)間: 2017-8-22 16:14
標(biāo)題: 單片機(jī)煙霧可燃?xì)怏w甲烷天然氣檢測(cè)程序
51單片機(jī)做的煙霧可燃?xì)怏w甲烷天然氣檢測(cè)程序


單片機(jī)源程序如下:
  1. /*
  2. 用打火機(jī),液晶顯示的第二行是閾值,大于該值,報(bào)警。
  3. 閾值不宜大于400
  4. */
  5. #include<reg52.h>
  6. #include<intrins.h>
  7. #define uchar unsigned char
  8. #define uint unsigned int
  9. #define IO_1602 P0 //IO 口
  10. sbit RS_1602=P2^5;
  11. sbit RW_1602=P2^6;
  12. sbit E_1602=P2^7;
  13. sbit CS=P1^0;
  14. sbit CLK=P1^1;
  15. sbit DIO=P1^2;
  16. sbit beed=P1^7;
  17. sbit key0=P3^0;
  18. sbit key1=P3^1;
  19. void delay_ms(unsigned int t)//11.0592MHz 1ms
  20. {
  21.         uchar x,y;
  22.         for(t;t>0;t--)
  23.         {
  24.                 for(x=0;x<114;x++)
  25.                 for(y=0;y<1;y++);
  26.         }
  27. }
  28. void Wr1602Cmd(unsigned char dat)
  29. {//寫命令函數(shù)
  30.         E_1602=0;
  31.         IO_1602=dat;
  32.         RS_1602=0;
  33.         RW_1602=0;
  34.         E_1602=1;
  35.         delay_ms(1);
  36.         E_1602=0;
  37.         delay_ms(1);
  38. }
  39. void Wr1602Dat(unsigned char dat)
  40. {//寫數(shù)據(jù)函數(shù)
  41.         E_1602=0;
  42.         IO_1602=dat;
  43.         RS_1602=1;
  44.         RW_1602=0;
  45.         E_1602=1;
  46.         delay_ms(1);
  47.         E_1602=0;
  48.         delay_ms(1);
  49. }
  50. void Init1602(void)
  51. {
  52.         delay_ms(20);
  53.         Wr1602Cmd(0x38);
  54.         delay_ms(5);
  55.         Wr1602Cmd(0x38);
  56.         delay_ms(5);
  57.         Wr1602Cmd(0x06);
  58.         Wr1602Cmd(0x0c);//
  59.         Wr1602Cmd(0x01);//清屏
  60.         Wr1602Cmd(0x80);//設(shè)置地址
  61. }
  62. uchar RdAdc0832(bit Hx)
  63. {
  64.         uchar value0,value1,i;
  65.         CS=1;CLK=0;DIO=1;
  66.         CS=0;
  67.         DIO=1;_nop_();_nop_();_nop_();_nop_(); //寫 ST 位
  68.         CLK=1;_nop_();_nop_();_nop_();_nop_();
  69.         CLK=0;_nop_();_nop_();_nop_();_nop_();
  70.         DIO=1;_nop_();_nop_();_nop_();_nop_();//寫 SGL 位
  71.         CLK=1;_nop_();_nop_();_nop_();_nop_();
  72.         CLK=0;_nop_();_nop_();_nop_();_nop_();
  73.         DIO=Hx;_nop_();_nop_();_nop_();_nop_();//寫通道號(hào)
  74.         //位
  75.         CLK=1;_nop_();_nop_();_nop_();_nop_();
  76.         CLK=0;_nop_();_nop_();_nop_();_nop_();
  77.         DIO=1;
  78.         for(i=0;i<8;i++)
  79.         {
  80.                 CLK=1;_nop_();_nop_();_nop_();_nop_();
  81.                 CLK=0;_nop_();_nop_();_nop_();_nop_();
  82.                 value0<<=1;
  83.                 if(DIO==1) value0|=0x01;
  84.                 else value0&=0xfe;
  85.         }
  86.         for(i=0;i<8;i++)
  87.         {
  88.                 value1>>=1;
  89.                 if(DIO==1) value1|=0x80;
  90.                 else value1&=0x7f;
  91.                 CLK=1;_nop_();_nop_();_nop_();_nop_();
  92.                 CLK=0;_nop_();_nop_();_nop_();_nop_();
  93.         }
  94.         CS=1;
  95.         if(value0!=value1) P1&=0X7F;
  96.         else P1|=0X80;
  97.         return value0;
  98. }
  99. void main()
  100. {
  101.         unsigned long i,a,b,c,d,temp=200,x,y,z;

  102.         Init1602();
  103.         while(1)
  104.         {
  105.                 Wr1602Cmd(0x80);
  106.                 i=RdAdc0832(0);
  107.                 i=(i*5000/255);
  108.                 a=i/1000;
  109.                 b=i%1000/100;
  110.                 c=i%1000%100%10;
  111.                 Wr1602Dat('V');
  112.                 Wr1602Dat('O');
  113.                 Wr1602Dat('L');
  114.                 Wr1602Dat('=');
  115.                 Wr1602Dat('0'+a);
  116.                 Wr1602Dat('.');
  117.                 Wr1602Dat('0'+b);
  118.                 Wr1602Dat('0'+c);
  119.                 Wr1602Dat('0'+i%1000%100%10);
  120.                 Wr1602Dat('V');
  121.                 d=a*100+b*10+c;
  122.                 Wr1602Cmd(0xC0);
  123.                 Wr1602Dat('S');                                        //閾值 threshold
  124.                 Wr1602Dat('e');
  125.                 Wr1602Dat('t');
  126.                 Wr1602Dat(' ');
  127.                 Wr1602Dat('V');
  128.                 Wr1602Dat('a');
  129.                 Wr1602Dat('l');
  130.                 Wr1602Dat('u');
  131.                 Wr1602Dat('e');
  132.                 Wr1602Dat(':');

  133.                  if(key0==0)  
  134.                 {       
  135.                          
  136.                         delay_ms(10);        //消抖
  137.                         if(key0==0)
  138.                         {       
  139.                                 while(!key0);//等待按鍵松開。
  140.                                 temp+=20;

  141.                         }                 
  142.                 }

  143.                         if(key1==0)  
  144.                 {       
  145.                          
  146.                         delay_ms(10);        //消抖
  147.                         if(key1==0)
  148.                         {       
  149.                                 while(!key1);//等待按鍵松開。
  150.                                 temp-=20;

  151.                         }                 
  152. ……………………

  153. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
煙霧可燃?xì)怏w甲烷天然氣檢測(cè)程序.zip (26.76 KB, 下載次數(shù): 82)







歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: www.99热 | 亚洲成人在线视频播放 | 欧美精品一区二区三 | 精品日韩一区二区三区 | 欧美最猛黑人xxxⅹ 粉嫩一区二区三区四区公司1 | 亚洲午夜精品一区二区三区他趣 | 精品久久久久久亚洲精品 | 在线中文字幕av | 七七婷婷婷婷精品国产 | 2018中文字幕第一页 | av一二三四 | 日韩精品人成在线播放 | av片免费 | 中文字幕蜜臀av | 亚洲福利一区二区 | 欧美日韩视频 | 伊人激情网 | 99精品视频免费观看 | 久久综合久久久 | 亚洲国产欧美一区 | 日韩欧美国产一区二区 | 色婷婷综合久久久中字幕精品久久 | 91porn国产成人福利 | 欧美一区二区三区视频 | 久久狼人天堂 | 国产二区在线播放 | 亚洲午夜精品一区二区三区他趣 | 成人在线免费电影 | 国产在线网站 | 日韩不卡在线 | 国产日韩欧美一区 | 亚洲视频在线观看免费 | 色婷婷久久久亚洲一区二区三区 | 国产精品成人一区二区 | 日韩欧美亚洲 | 久久久久精| 国产精品久久久久久久久久不蜜臀 | www日韩高清 | 日本污视频 | 免费成人高清在线视频 | 欧美日韩免费在线 |