新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機做的溫濕度測量儀

        51單片機做的溫濕度測量儀

        作者: 時間:2016-11-29 來源:網絡 收藏
        本人去年用51單片機做的溫濕度傳感器模塊,有實物,有程序,供大家分享。

        該1602液晶的D0~D7數據口連接單片機的P17~P10口,所以程序里的指令和數據都是逆向輸入的。
        程序和電路圖下載:http://www.51hei.com/f/溫濕度傳感器+1602原理圖.rar

        本文引用地址:http://www.104case.com/article/201611/323404.htm
        #include #include #include #define uchar unsigned char #define uint unsigned int #define noACK 0 #define ACK 1#define STATUS_REG_W 0x06#define STATUS_REG_R 0x07#define MEASURE_TEMP 0x03 #define MEASURE_HUMI 0x05 #define RESET 0x1esbit SCK =P1^0;sbit DATA=P1^1;sbit led1=P1^7; sbit  rs=P2^3; //H數據,L命令sbit  en=P2^5; //高脈沖使能,使能脈寬最小150nssbit  rw=P2^4;uchar code table_temp[]=" TEMP: ";uchar code table_humi[]=" HUMI: ";uchar code table_c[]=" C  ";uchar code table_p[]=" %  ";uchar error=0; void delayms(uint z) { uint i,j; for(i=z;i>0;i--) for( j=110;j>0;j--); } //啟動時序 void transstart() { SCK=1;_nop_(); DATA=0;_nop_(); SCK=0;_nop_();_nop_();_nop_(); SCK=1;_nop_(); DATA=1;_nop_(); SCK=0; } //寫入命令子函數 uchar write_byte(uchar value) { uchar i; for(i=0x80;i>0;i=i/2) { if(i&value) DATA=1; else DATA=0; SCK=1; _nop_();_nop_();_nop_(); SCK=0; } DATA=1; SCK=1; error=DATA; SCK=0; return error; } 				   
        				
                    
                        
        			
        							
        上一頁 1 2 3 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 靖边县| 航空| 井研县| 广灵县| 花垣县| 河南省| 南陵县| 临沂市| 甘洛县| 平昌县| 固镇县| 河南省| 桂阳县| 龙南县| 连平县| 荣成市| 清流县| 绍兴市| 大宁县| 黔东| 海淀区| 中宁县| 上栗县| 图片| 陆川县| 香河县| 新干县| 宕昌县| 衡山县| 乐东| 广饶县| 岚皋县| 余干县| 富民县| 灵台县| 沁源县| 邢台县| 康保县| 本溪市| 阜新| 崇礼县|