基于單片機與計算機串口的溫度實時監控系統設計
摘要:設計了一種溫度實時監控系統。該系統通過單片機實現實時控制,并通過串口連接單片機與上位計算機,在計算機中實現實時監控、大容量的數據存儲及數據分析等功能,解決了常規溫度測量方法在溫度測量實時性差、不能儲存數據及缺乏數據分析功能等方面的缺陷。
關鍵詞:串口通信;實時溫度監控;MSComm控件;DS18B20
溫度監控系統在農業、工業和生活中有著廣泛的應用,但隨著監控的面積擴大,監控點的增加及控制處理趨于智能化等新的應用要求出現,傳統的溫度控制系統已經逐漸不適用,首先是不便于觀察而且不能及時地對異常溫度變化做出迅速反應,其次是傳統的溫度控制系統不能儲存大量數據,不能對監控的數據進行分析,不便于對溫度情況進行長期的監測和科學的分析,為了解決以上問題,本文設計了一個能實時響應溫度并進行控制的溫度實時控制系統,并且采用與計算機串口通信結合的方式通過計算機增大了系統儲存量,而且在計算機系統中收集和處理溫度控制系統的數據,大幅度的增強了該系統的功能,并具備較強的擴展性。
隨著計算機技術特別是單片機技術的發展,串口通信在諸多領域上得到了廣泛的應用,計算機可以通過串口來獲取單片機的各種數據,然后利用計算機強大的功能進行處理,再根據處理的結果發送數據到單片機,實現遠程控制設備。本設計采用上位機和下位機的互聯工作,而計算機的分析處理能力較強,有很好的人機界面和大容量的多種存儲方式,所以上位機一般采用計算機,單片機具有價格低,功能強,較好的抗干擾能力和面向控制等特點,所以下位機采用單片機來構成互聯工作模式。由于串行通信具有高效可靠、價格便宜,遵循統一的標準等特點,適用于本設計的通信要求。
1 硬件設計
1.1 電路設計
溫度實時控制系統的下位機由7個部分組成(詳見圖1),其中測量環境溫度使用DS18B20數字溫度傳感器,它將溫度傳感器、A/D傳感器、寄存器、接口電路集成在一個芯片中,采用1-Wire總線協議,可實現直接數字化輸出。DS18B20數字溫度傳感器溫度測量范圍為-55~+125℃,測溫分辨率可達0.062 5℃,被測溫度用符號擴展的16位數字量進行串行輸出,適配各種單片機或系統機。使用這種傳感器不需要A/D轉換電路,可以大大簡化電路,溫度測量精度和速度都大幅提高。
本設計利用MAX232進行電平轉換,實現計算機和單片機的互聯通信。MAX232是低功耗、單電源雙RS 232發送/接收器,適用于各種EIA-232 E和V.28/V.24的通信接口。MAX232芯片內部有一個電源電壓變換器,可以把輸入的+5 V電源變換成RS 232C輸出電平所需±10 V電壓,所以采用此芯片接口的串行通信系統只要單一的+5 V電源就可以。在MAX232芯片上,選用其中一路發送/接收,R2OUT接89C52的RXD(P3.0),T2IN接89C52的TXD(P3.1),T2OUT接PC機的RD,R2IN接PC機的TD,這樣就能通過P3.0和P3.1I/O口就實現單片機與計算機互聯通
信。本設計的信號燈部分一共使用6只LED燈,其中Start燈亮表示單片機上電工作,RX2(P3.0)燈亮表示接受從PC機傳來的數據,TX2(P3.1)燈亮表示向PC機發送數據。m1,m2,m3三顆燈分別對應的接口為P2.5,P2.6,P2.7,當3個溫度傳感器探測的溫度大于設定值則變亮。
總體電路設計是以單片機為中心,整合和控制各部分。本設計的單片機是STC89C52,它通過XTAL1,XTAL2引腳外接晶振和電容實現11.0 59 2 MHz的時鐘周期,這能產生準確的波特率,有利于串行通信。它的RESET引腳外接電路實現上電自動復位和按鍵電平復位,P1.4~P1.7引腳接有4個按鍵,實現時間和溫度的設定。單片機通過P1.0,P1.1,P1.2引腳讀出3個溫度傳感器的溫度值,然后通過P0端口和P2.0,P2.1,P2.2控制液晶板,在液晶上顯示時間和溫度值。同時經過單片機內部程序,控制信號燈的亮滅,發送和接受計算機的數據。
1.2 單片機程序設計
基于上節所述的硬件設計,編寫程序以實現期望的功能,其中主程序不斷刷新LCD顯示的內容,定時器T0中斷程序用于時鐘的功能,定時器T1作為波特率發生器,串口中斷實現與PC機的通信。
評論