新聞中心

        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 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 浦县| 大厂| 涟水县| 牟定县| 宜宾县| 永吉县| 香河县| 梧州市| 且末县| 通辽市| 金山区| 邹城市| 名山县| 紫云| 佛坪县| 温泉县| 阿坝县| 陆丰市| 颍上县| 六安市| 汽车| 乡宁县| 澳门| 湖南省| 乌鲁木齐县| 宿州市| 西吉县| 大渡口区| 黄冈市| 敦化市| 南郑县| 怀远县| 澄江县| 惠安县| 潞西市| 乌审旗| 仙居县| 重庆市| 万盛区| 宜良县| 木里|