<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > dth11溫濕度傳感器的單片機程序

dth11溫濕度傳感器的單片機程序

作者: 時(shí)間:2016-11-29 來(lái)源:網(wǎng)絡(luò ) 收藏
#include
#define uint unsigned int#define uchar unsigned chartypedef bit BOOL  ;sbit io = P1^0 ;sbit rs = P2^4 ;sbit rw = P2^5 ;sbit ep = P2^6 ;uchar data_byte;uchar RH,RL,TH,TL;/************************************************延時(shí)模塊***************************************************/void delay(uchar ms){       // 延時(shí)子程序uchar i ;while(ms--){for(i = 0 ; i<250;i++) ;}}void delay1()//延時(shí)10us{uchar i;i--;i--;i--;i--;i--;i--;}void longdelay(uchar s) //長(cháng)延時(shí){while(s--){delay(60) ;}}/***********************************************LCD模塊********************************************************/BOOL lcd_bz()//測試LCD忙碌狀態(tài){     BOOL result ;rs = 0 ;rw = 1 ;ep = 1 ;result = (BOOL)(P0 & 0x80) ;ep = 0 ;return result ;}void write_cmd(uchar cmd)// 寫(xiě)指令{      while(lcd_bz()) ;rs = 0 ;rw = 0 ;ep = 0 ;P0 = cmd ;ep = 1 ;ep = 0 ; }void write_addr(uchar addr)//寫(xiě)地址{      write_cmd(addr|0x80) ;}void write_byte(uchar dat)//寫(xiě)字節{     while(lcd_bz()) ;rs = 1 ;rw = 0 ;ep = 0 ;P0 = dat ;ep = 1 ;ep = 0 ;}void lcd_init()// 初始化{      write_cmd(0x38) ;delay(1);write_cmd(0x08) ; delay(1);write_cmd(0x01) ;delay(1);write_cmd(0x06) ;delay(1);write_cmd(0x0c) ;delay(1);}void display(uchar addr, uchar q)//在某一地址上顯示一字節{  delay(10) ;write_addr(addr) ;write_byte(q) ;longdelay(2) ;}/************************************************ DHT11測試模塊***********************************************/void start()//開(kāi)始信號{io=1;delay1();io=0;delay(20);//>18msio=1;delay1();//20-40usdelay1();delay1();delay1();delay1();}uchar receive_byte()//接收一個(gè)字節{uchar i,temp,count;for(i=0;i<8;i++){count=2;while((!io)&&count++)//等待50us低電平結束temp=0;delay1();delay1();delay1();delay1();if(io==1)temp=1;count=2;while((io)&&count++);if(count==1)break;data_byte<<=1; data_byte|=temp;}return data_byte;}void receive()//接收數據{uchar T_H,T_L,R_H,R_L,check,num_check;uchar count;start();//開(kāi)始信號io=1;if(!io)//讀取DHT11響應信號{count=2;while((!io)&&count++);//DHT11高電平80us是否結束count=2;while((io)&&count++);R_H=receive_byte();R_L=receive_byte();T_H=receive_byte();T_L=receive_byte();check=receive_byte();io=0;//拉低延時(shí)50usdelay1();delay1();delay1();delay1();delay1();io=1;num_check=R_H+R_L+T_H+T_L;if(num_check=check){RH=R_H;RL=R_L;TH=T_H;TL=T_L;check=num_check;}}}/********************************************************主函數****/void main(){lcd_init();delay(10);while(1){receive();delay(100);display(0x00,R) ;display(0x01,:);display(0x02,RH/10+0x30);display(0x03,RH%10+0x30);display(0x04,%);display(0x40,T) ;display(0x41,:);display(0x42,TH/10+0x30);display(0x43,TH%10+0x30);display(0x44,0xdf);display(0x45,0x43);}}/**********************************************/


關(guān)鍵詞: dth11溫濕度傳感器單片

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>