基于AT89S52的全數(shù)字溫濕度儀設計
D S 1 8 B 2 0對時序要求非常嚴格,編程時應確保延時程序要符合datasheet中的要求,這里首先編制了一個較精確的10us延時,之后的程序中多次調(diào)用。另外,攝氏、華氏溫度的轉換,以及低于0攝氏度時,需要顯示的負號等情況都可在液晶顯示溫度的程序段中考慮。典型程序如下:
本文引用地址:http://www.ex-cimer.com/article/235485.htm
3.3 濕度傳感器典型程序段
相比同樣是單總線設計的DS18B20,國產(chǎn)DHT11在編程思路上有一定相似性,但時序、移位等操作都不同,協(xié)議較前者簡單。
用戶主機(M C U)發(fā)送一次開始信號后,DHT11從低功耗模式轉換到高速模式,待主機開始信號結束后,DHT11發(fā)送響應信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信采集。而操作DS18B20時,MCU初始化收到應答信號后,就可隨時發(fā)個指令寫或讀,主機有更多主動權。按照官方產(chǎn)品手冊提供的時序,編制程序如下:
主程序、1602顯示驅動、其他功能等程序略去。
4.結論
本數(shù)字溫濕度儀經(jīng)試制、長時間運行,表現(xiàn)穩(wěn)定,效果良好。在調(diào)試階段,遇到并解決了一些問題,一個比較棘手的問題是,顯示溫度時偶爾會出現(xiàn)異常數(shù)字。經(jīng)仔細分析發(fā)現(xiàn),這是由于本儀表的多按鍵、多功能而采用的多個定時器,定時器產(chǎn)生的中斷導致了DS18B20與MCU通信時序遭到破壞,造成傳輸?shù)臄?shù)據(jù)出錯。本問題后來通過增加CRC8校驗,對偶然出現(xiàn)的錯誤數(shù)據(jù)進行舍棄得到解決。
現(xiàn)階段該溫濕度儀只作為單獨使用,在以后的升級型號中,可以加入數(shù)據(jù)存儲功能(如24C02芯片記錄峰值),以及多傳感器總線方式,通過上位機監(jiān)控各點溫濕度等功能。
電流變送器相關文章:電流變送器原理 蜂鳴器相關文章:蜂鳴器原理 數(shù)字濾波器相關文章:數(shù)字濾波器原理 土壤濕度傳感器相關文章:土壤濕度傳感器原理 溫濕度控制器相關文章:溫濕度控制器原理 熱電偶相關文章:熱電偶原理
評論