一種多用智能溫度測量儀的設計與實現
1.2 硬件電路設計
系統硬件電路如3所示。本文引用地址:http://www.104case.com/article/162343.htm
包括信號采集、系統控制、數字顯示、高溫報警四個部分。傳感器DS18B20為信號采集器件所采集到的溫度信號,通過內部處理由傳感器的DQ端送到單片機P3.2端口,經單片機的計算處理后,由P0口和P1口分別作為4位共陽數碼管的段控信號和位控信號,共同完成對所測溫度值的數字顯示,最高位是符號顯示,如顯示負號“-”時,表示當前溫度是負溫度,否則為正溫度;由P2.0端口控制蜂鳴器,當測量的溫度超過“預設報警溫度”時,發出提示音報警;P2.1~P2.3端口來控制黃、綠、紅3個發光二極管分別表示低溫、正常、高溫三種溫度狀態。石英晶體JT和電容C2,C2共同組成晶振電路;電容C1、電阻R13、SB共同構成復位電路;其中電阻R13。為下拉電阻,SB為手動復位按鈕。
2 軟件設計
為了便于子程序的調用和維護系統,程序遵循標準化、模塊化的原則,主要完成包括讀DS18B20溫度數據、數據的整理轉換、溫度顯示、報警等模塊的設計。由于程序任務相對較少,結構相對簡單,本系統由主程序和多個子程序組成,采用順序性結構主程序流程。
2.1 軟件設計要點
由于DS18B20采用的是單線總線協議方式,即在一條數據線上實現數據的雙向傳輸,而單片機硬件上不支持單總線協議,因此必須采用軟件方法來模擬單總線的協議是序來完成對DS18B20芯片的訪問。
由于DS18B20是在一根I/O線上讀寫數據,因此對讀寫的數據位有嚴格的時序要求,它有嚴格的通信協議來保證各位數據傳輸的正確性和完整性。該協議定義了幾種信號的時序:初始化時序、讀時序、寫時序。所有時序都是將單片機作為主設備,DS18B20作為從設備,而每一次命令和數據的傳輸都是從主機主動啟動寫時序開始,如果要求DS18B20回送數據,在進行寫命令后,主機需啟動讀時序完成數據接收。
評論