基于51單片機的兩路溫度控制器的設計方案

發(fā)布時(shí)間:2015-10-28 11:08    發(fā)布者:designapp
關(guān)鍵詞: AT89C51 , DS18B20 , 51單片機 , 溫度控制器
  本方案中所設計的溫度控制器,采用AT89C51單片機作為內核,采用DS18B20作為溫度傳感器,通過(guò)四位LED顯示,通過(guò)循環(huán)掃描實(shí)現了兩路溫度的采集與顯示。
  1.引言
  目前,溫度控制器存在的問(wèn)題是如何縮減成本,減少功耗,溫度測量的準確性和多路溫度的同時(shí)顯示。本方案設計的實(shí)現基于C51單片機的兩路溫度控制器,做到成本最低化,精確度高,兩路溫度的顯示和控制,能在溫度超出設定的最高溫度時(shí)啟動(dòng)電風(fēng)扇進(jìn)行降溫,在溫度低于設定的最低溫度時(shí)啟動(dòng)蜂鳴器報警,能夠用戶(hù)設定最高最低溫。
  2.系統結構
  溫度控制器系統包括以下幾個(gè)主要部分:溫度傳感器,報警電路,LED顯示電路,鍵盤(pán)控制,89C51控制部分。如圖所示:
  


  本系統設計實(shí)現:?jiǎn)?dòng)溫度控制器后,綠燈亮起,四位LED數碼顯示器上前兩位為溫度傳感器1所測的環(huán)境溫度,后兩位為溫度傳感器2所測的環(huán)境溫度。
  3.硬件結構
  3.1溫度傳感器
  本設計采用的是DS18B20作為溫度傳感器,DS18B20與傳統的熱敏電阻相比具有精確度高,測量誤差小,方便實(shí)現多點(diǎn)測溫等優(yōu)點(diǎn),因此用DS18B20作溫度傳感器。
  3.2報警電路
  本設計采用蜂鳴器和電風(fēng)扇報警電路。蜂鳴器報警電路由三極管和蜂鳴器組成。當溫度低于設定的最低溫度時(shí),則蜂鳴器報警。電風(fēng)扇報警電路由三極管和電風(fēng)扇組成。當溫度高于設定的最高溫度時(shí),則電風(fēng)扇報警。
  3.3顯示電路
  本系統采用L E D數碼顯示管顯示,LED亮度高,可視角度高。LCD的可視角度低,亮度較低,價(jià)格高?紤]到此溫度傳感器主要用于溫室大棚等亮度不太高的環(huán)境,從經(jīng)濟與實(shí)用的角度來(lái)看選LED作為顯示器。
  3.4鍵盤(pán)控制
  本系統采用3個(gè)獨立的按鍵作為鍵盤(pán)控制電路。鍵盤(pán)一般分為獨立式和矩陣鍵盤(pán)兩種。獨立式鍵盤(pán)結構簡(jiǎn)單,但占用的資源較多;矩陣鍵盤(pán)結構比較復雜,但占用的口線(xiàn)少?紤]到本設計所需按鍵數不多,采用三個(gè)獨立鍵盤(pán)完成兩個(gè)溫度傳感器溫度的設定。
  3.5 89C51控制部分
  本系統采用的是AT89C51,小電子產(chǎn)品用51,硬件設計電路如圖1所示。
  


  4.軟件設計
  本系統使用匯編語(yǔ)言編碼實(shí)現的,比C語(yǔ)言編碼的程序處理時(shí)間更快。
  主程序中包含系統初始化,鍵盤(pán)掃描選擇子程序,溫度比較子程序,溫度測量子程序,溫度計算子程序,顯示子程序。
  4.1主程序模塊
  主程序中先對數據進(jìn)行初始化,然后調用鍵盤(pán)掃描子程序KEY_TEST,溫度比較子程序C O M P A R E,溫度采集子程序G E T _ T E M P,溫度顯示子程序D I S _ S E T和DISPLAY,再判斷采集,顯示第二個(gè)溫度傳感器的溫度值。編寫(xiě)程序如下:
  


  4.2 LED顯示模塊
  LED顯示可以分為動(dòng)態(tài)顯示和靜態(tài)顯示兩種,靜態(tài)顯示占用更多口線(xiàn),為了減少硬件成本,本設計采用動(dòng)態(tài)掃描顯示的方法顯示兩個(gè)溫度傳感器的溫度值。
  DISPLAY和DISPLAY1函數分別讀取第一個(gè)和第二個(gè)溫度傳感器的溫度并根據暫存單元的數據顯示兩個(gè)溫度傳感器的溫度。編程思路:根據SIGN標志來(lái)判斷轉入不同的顯示,將查表所得的數據存入不同的單元并顯示在LED上。
  4.3鍵盤(pán)控制模塊
  鍵盤(pán)通過(guò)設定SIGN標志來(lái)判斷設定第一個(gè)或者第二個(gè)溫度傳感器的最高溫或者最低溫,編程思路為:將SIGN初始設定為0,當第一個(gè)按鍵按下時(shí)將其賦為1,再次按下時(shí)加一,直到按到第5次重新賦值為0,根據SIGN的值確定進(jìn)行不同的設置。
  4.4溫度傳感器模塊
  根據溫度傳感器DS18B20完成溫度轉換所必須經(jīng)過(guò)的3個(gè)步驟,程序:MOV A,#0CCH//跳過(guò)ROM MOV A,#44H / /進(jìn)行溫度變換MOV A,#0BEH//讀暫存存儲器內容。
  4.5報警模塊
  當實(shí)時(shí)溫度高于設定的最高溫度時(shí)或者實(shí)時(shí)溫度低于設定的最低溫度時(shí),單片機會(huì )控制蜂鳴器或者電風(fēng)扇工作,判斷當前溫度是否在正常范圍的函數為COMPARE,高溫部分程序如下:
  

                                  5.仿真測試
  我們對DS18B20寫(xiě)入程序之前,必須調試自己的程序。但我們不能看到程序是怎樣運行的。因此我們可以用仿真機來(lái)仿真,通過(guò)仿真機我們可以看到DS18B20發(fā)送過(guò)來(lái)的數據,讀出來(lái)的溫度值,所利用寄存的值的變化。系統連接示意圖如下圖所示:
  我們現在能把DS18B20所采集到的溫度在PC機上顯示出來(lái)并且每一個(gè)溫度值顯示后換一行。試驗證明了系統實(shí)用性強,達到了預定的功能。
  6.結語(yǔ)
  本文提出了基于51單片機兩路溫度控制器的設計方案,該設計方案采用兩個(gè)DS18B20溫度傳感器,采集兩個(gè)不同地方的溫度,通過(guò)AT89C51處理進(jìn)行,由四位LED數碼管顯示所測量溫度,前兩位為第一個(gè)溫度傳感器的溫度,后兩位為第二個(gè)溫度傳感器的溫度。采用3個(gè)按鍵實(shí)現溫度最高和最低的設定,采用蜂鳴器和電動(dòng)機實(shí)現溫度過(guò)高或過(guò)低報警。然后又經(jīng)過(guò)過(guò)仿真測試證實(shí)了改設計方案經(jīng)濟適用,實(shí)用性強,能夠測量?jì)蓚(gè)地方的溫度,滿(mǎn)足溫室大棚,室內家居,工業(yè)控制等不同環(huán)境下的使用。
                                
本文地址:http://selenalain.com/thread-154821-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页