基于at89c52单片机温湿度c语言,基于AT89C52单片机的温度监控报警系统的设计
本系統由無線發射與接收模塊、語音播報、溫度采集、自動報警以及顯示模塊組成。實現功能:溫度實時顯示:可設定溫度的上限和下限,當溫度超過設定域值時發出聲光報警信號;測量溫度值可通過語音播報;通過射頻模塊完成溫度的遠距離無線傳輸,傳輸距離大干200rn。
一、硬件部分
系統由三部分組成:一是采集數據、數據處理、發出報警信號和進行無線傳輸的主機;二是接收并把數據顯示出來的接收端;三是語音播報系統。其原理框圖如上圖、中圖、下圖所示。
1.無線發射電路
無線傳輸模塊采用單片射頻收發器NRF905。
NRF905由頻率合成器、接收解調器、功率放大器、晶體振蕩器和調制器組成,不需外加聲表濾波器。
使用SPI接口與微控制器通信,配置非常方便。在空曠地方傳輸距離為200m左右。
2.顯示電路
主系統采用SSCl2K64中文液顯,無線接收系統采用LCDl602,單片機控制LCD的顯示,8位數據線分別連接到51單片機的P1口,并且利用I/O口的P3.O~P3_2作為LCD的控制線。LCD顯示提供人性化的顯示界面,打機后LCD顯示“正常”“系統功能”等信息的文字。
3.單片機控制
采用AT89C52單片機進行控制。本設計需要使用的軟件資源比較多,需完成傳感器信息處理、鍵盤輸入、顯示輸出、無線發射等功能。采用AT89C52進行控制比較方便,除實現本系統的的基本要求外,還可擴展其他功能。其電路圖如下圖所示。
4.語音播報電路
采用ISDl420語音芯片配以單片機控制。
SDl420錄制時間達20s,電路如下圖所示。
5.無線接收電路
采用單片射頻收發器NRF905負責接收,接收到數據后送到單片機處理并把溫度值顯示出來,其電路如下圖所示。
作品實物如下圖所示
二、軟件部分
1.系統主程序
該系統的軟件程序采用模塊結構,由C語言編寫完成。程序原代碼可在WWW.elel69.corn上下載。
主要由初始化程序、讀傳感器狀態、鍵掃、LCD顯示程序、定時器的中斷服務程序、外部中斷的服務程序、射頻模塊無線發送等模塊組成。程序結構圖如下圖所示。
2.溫度采集電路
DSl8820的工作嚴格遵守單總線器件的通信協議,以保證數據的完整性。單總線協議定義了復位脈沖、應答脈;中、寫0、寫1、讀0和讀1等幾種類型的信號,所有的單總線命令序列都是由這些基本的信號類型組成。在這些信號中,除了應答脈沖外,其他均由主機發出同步信號,并且發送的所有命令和數據都是字節的低位在前。在本設計中,總線上只有一個溫度傳感器,轉換精度為12位。讀溫度的流程如下圖所示。
3.收發端的程序流程圖
單片機串13對無線收發模塊收發狀態轉換的控制,可通過設置控件的屬性來實現。上圖為發送端程序流程圖,下圖為接收端程序流程圖。
三、功能測試
溫度測量范圍可以達到0℃~120℃。誤差≤0.1℃,可通過鍵盤設定溫度值并在LCD液晶屏上顯示設定值。LCD液晶屏顯示精確度≤0.1℃。LCD液晶屏能實時顯示測量溫度值并可以用語音播報測量值。無線傳輸距離大于200m。
四 小結
本設計以51單片機為核心,利用C語言軟件編程,實現溫度監控報警,采用雙LCD顯示,菜單輸入,信息存儲與顯示,人機界面友好。
總結
以上是生活随笔為你收集整理的基于at89c52单片机温湿度c语言,基于AT89C52单片机的温度监控报警系统的设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 雅克比行列式补充和曲面的参数方程求导表示
- 下一篇: c语言数字植物管理系统,基于AT89C5