<th id="ba6cv"></th>

    <em id="ba6cv"></em>

    <span id="ba6cv"></span>
    0 賣盤信息
    BOM詢價
    您現在的位置: 首頁 > 技術方案 >工業控制 > 基于AT89C51單片機對兩路DS18B20溫度傳感器的設計方案

    基于AT89C51單片機對兩路DS18B20溫度傳感器的設計方案

    來源: elecfans
    2021-10-15
    類別:工業控制
    eye 10
    文章創建人 拍明芯城

    原標題:基于51單片機對兩路DS18B20溫度傳感器的設計方案

      本文提出了基于51單片機兩路溫度控制器的設計方案,該設計方案采用兩個DS18B20溫度傳感器,采集兩個不同地方的溫度,通過AT89C51處理進行,由四位LED數碼管顯示所測量溫度,前兩位為第一個溫度傳感器的溫度,后兩位為第二個溫度傳感器的溫度。采用3個按鍵實現溫度最高和最低的設定,采用蜂鳴器和電動機實現溫度過高或過低報警。

      1.引言

      目前,溫度控制器存在的問題是如何縮減成本,減少功耗,溫度測量的準確性和多路溫度的同時顯示。本方案設計的實現基于C51單片機的兩路溫度控制器,做到成本最低化,精確度高,兩路溫度的顯示和控制,能在溫度超出設定的最高溫度時啟動電風扇進行降溫,在溫度低于設定的最低溫度時啟動蜂鳴器報警,能夠用戶設定最高最低溫。

      2.系統結構

      溫度控制器系統包括以下幾個主要部分:溫度傳感器,報警電路,LED顯示電路,鍵盤控制,89C51控制部分。如圖所示:

      

    1.jpg


      本系統設計實現:啟動溫度控制器后,綠燈亮起,四位LED數碼顯示器上前兩位為溫度傳感器1所測的環境溫度,后兩位為溫度傳感器2所測的環境溫度。

      3.硬件結構

      3.1 溫度傳感器

      本設計采用的是DS18B20作為溫度傳感器,DS18B20與傳統的熱敏電阻相比具有精確度高,測量誤差小,方便實現多點測溫等優點,因此用DS18B20作溫度傳感器。

      3.2 報警電路

      本設計采用蜂鳴器和電風扇報警電路。蜂鳴器報警電路由三極管和蜂鳴器組成。當溫度低于設定的最低溫度時,則蜂鳴器報警。電風扇報警電路由三極管和電風扇組成。當溫度高于設定的最高溫度時,則電風扇報警。

      3.3 顯示電路

      本系統采用L E D數碼顯示管顯示,LED亮度高,可視角度高。LCD的可視角度低,亮度較低,價格高??紤]到此溫度傳感器主要用于溫室大棚等亮度不太高的環境,從經濟與實用的角度來看選LED作為顯示器。

      3.4 鍵盤控制

      本系統采用3個獨立的按鍵作為鍵盤控制電路。鍵盤一般分為獨立式和矩陣鍵盤兩種。獨立式鍵盤結構簡單,但占用的資源較多;矩陣鍵盤結構比較復雜,但占用的口線少??紤]到本設計所需按鍵數不多,采用三個獨立鍵盤完成兩個溫度傳感器溫度的設定。

      3.5 89C51控制部分

      本系統采用的是AT89C51,小電子產品用51,硬件設計電路如圖1所示。

      

    image.png


      4.軟件設計

      本系統使用匯編語言編碼實現的,比C語言編碼的程序處理時間更快。

      主程序中包含系統初始化,鍵盤掃描選擇子程序,溫度比較子程序,溫度測量子程序,溫度計算子程序,顯示子程序。

      4.1 主程序模塊

      主程序中先對數據進行初始化,然后調用鍵盤掃描子程序KEY_TEST,溫度比較子程序C O M P A R E,溫度采集子程序G E T _ T E M P,溫度顯示子程序D I S _ S E T和DISPLAY,再判斷采集,顯示第二個溫度傳感器的溫度值。編寫程序如下:

      

    image.png


      4.2 LED顯示模塊

      LED顯示可以分為動態顯示和靜態顯示兩種,靜態顯示占用更多口線,為了減少硬件成本,本設計采用動態掃描顯示的方法顯示兩個溫度傳感器的溫度值。

      DISPLAY和DISPLAY1函數分別讀取第一個和第二個溫度傳感器的溫度并根據暫存單元的數據顯示兩個溫度傳感器的溫度。編程思路:根據SIGN標志來判斷轉入不同的顯示,將查表所得的數據存入不同的單元并顯示在LED上。

      4.3 鍵盤控制模塊

      鍵盤通過設定SIGN標志來判斷設定第一個或者第二個溫度傳感器的最高溫或者最低溫,編程思路為:將SIGN初始設定為0,當第一個按鍵按下時將其賦為1,再次按下時加一,直到按到第5次重新賦值為0,根據SIGN的值確定進行不同的設置。

      4.4 溫度傳感器模塊

      根據溫度傳感器DS18B20完成溫度轉換所必須經過的3個步驟,程序:MOV A,#0CCH//跳過ROM MOV A,#44H / / 進行溫度變換 MOV A,#0BEH//讀暫存存儲器內容。

      4.5 報警模塊

      當實時溫度高于設定的最高溫度時或者實時溫度低于設定的最低溫度時,單片機會控制蜂鳴器或者電風扇工作,判斷當前溫度是否在正常范圍的函數為COMPARE,高溫部分程序如下:

      5.仿真測試

      我們對DS18B20寫入程序之前,必須調試自己的程序。但我們不能看到程序是怎樣運行的。因此我們可以用仿真機來仿真,通過仿真機我們可以看到DS18B20發送過來的數據,讀出來的溫度值,所利用寄存的值的變化。系統連接示意圖如下圖所示:

      

    image.png


      我們現在能把DS18B20所采集到的溫度在PC機上顯示出來并且每一個溫度值顯示后換一行。試驗證明了系統實用性強,達到了預定的功能。

      6.總結

      本方案中所設計的溫度控制器,采用AT89C51單片機作為內核,采用DS18B20作為溫度傳感器,通過四位LED顯示,通過循環掃描實現了兩路溫度的采集與顯示。然后又經過過仿真測試證實了改設計方案經濟適用,實用性強,能夠測量兩個地方的溫度,滿足溫室大棚,室內家居,工業控制等不同環境下的使用。


    責任編輯:David

    【免責聲明】

    1、本文內容、數據、圖表等來源于網絡引用或其他公開資料,版權歸屬原作者、原發表出處。若版權所有方對本文的引用持有異議,請聯系拍明芯城(marketing@iczoom.com),本方將及時處理。

    2、本文的引用僅供讀者交流學習使用,不涉及商業目的。

    3、本文內容僅代表作者觀點,拍明芯城不對內容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關結果。

    4、如需轉載本方擁有版權的文章,請聯系拍明芯城(marketing@iczoom.com)注明“轉載原因”。未經允許私自轉載拍明芯城將保留追究其法律責任的權利。

    拍明芯城擁有對此聲明的最終解釋權。

    相關資訊

    老司机网站免费看超级毛片,骚虎黄色视频,日本动漫黄h在线观看,免费av在线播放高清