這是我上個星期做的 單片機的數顯溫度設計
用了一個周的時間
附件里面有keil的編程
proteus的仿真圖文檔
都是自己動手做的 請大家多多指教
總體電路結構框圖所示: 圖1-1 溫度計電路總體設計框圖 3.2系統設計①硬件設計 硬件電路設計通過仿真軟件Proteus8.0進行原理圖的編輯,根據實驗要求及所給的元件設計出如下電路原理圖,并進行了仿真
時鐘及復位模塊 實驗所給的元件中直接已給出了AT89C51的最小系統板,但是我們在設計電路時還是需要畫出該部分電路,時鐘復位為能使單片機工作的最簡單的電路,又稱最小系統。具體實驗電路如下: 時鐘電路有12MHz的晶振及兩個2030PF的瓷片電容(無極性)連接在單片機的XTAL1及XTAL2連個端口;復位電路由10K的電阻, 10UF電解電容(有極性)以及按鍵開關組成,接在單片機的RST口。當系統出現故障錯誤,想讓系統恢復初始化狀態可以通過對按動按鍵開關實現對電容的充放電從而實現系統的復位。
蜂鳴器報警及LED顯示模塊 蜂鳴器用于當溫度傳感器的輸入的溫度數值大于認為設定的上限溫度或者小于下限溫度時,系統會給出相應的信號使得蜂鳴器發出聲音同時讓LED燈閃爍顯示,從聽覺和視覺上同時提出報警信號。電路圖如下: 蜂鳴器由一個PNP型的三極管驅動接在單片機的P1.0口,當P1. 0口輸出低電平是蜂鳴器發出聲音;LED燈正極通過1K的電阻上拉接Vcc,負極接在單片機的P1. 1口,當系統在P1.1口輸出低電平時LED燈亮。
LCD1602液晶屏顯示模塊 采用LCD-1602A液晶顯示器件,液晶顯示平穩、省電、美觀,更容易實現要求,可操作性強,也易于讀數,采用RT1602兩行十六個字符的顯示,能同時顯示其它的信息如日期、時間、星期、溫度。 接一個滑動變阻上再與地相接,用以調整LCD-1602A的對比度。
DS18B20溫度傳感器模塊 DS18B20溫度傳感器是美國DALLAS半導體公司最新推出的一種改進型智能溫度傳感器,與傳統的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據實際要求通過簡單的編程實現9~12位的數字值讀數方式。DS18B20的性能特點如下:獨特的單線接口僅需要一個端口引腳進行通信;多個DS18B20可以并聯在唯一的三線上,實現多點組網功能;無須外部器件;可通過數據線供電,電壓范圍為3.0~5.5v;零待機功耗;溫度以9或12位二進制數字表示;用戶可定義報警設置;報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件;負電壓特性,電源極性接反時,溫度計不會因發熱而燒毀,但不能正常工作; DS18B20采用3腳TO-92封裝或8腳SO或μSOP封裝,其其封裝形式如圖1-2所示。
圖1-2 DS18B20的封裝形式 電路圖如下: 接在單片機的P01.7口,DQ端接上拉電阻。
按鍵控制模塊 按鍵電路是用來實現調節設定報警溫度的上下限和查看上下報警溫度的功能。 電路圖如下: ②軟件設計 通過單片機編程軟件Keil4進行編程,程序部分通過一個主函數和自定義的三個#include“ds18b20. h”,#include“LCD1602.h”,#include“delay.h”頭文件,完成單片機的各項功能。 DS18B20獲取溫度程序流程圖 DS18B20的讀字節,寫字節,獲取溫度的程序流程圖如圖1-3所示。 圖1-3 DS18B20程序流程圖 按鍵程序設計 按鍵是用來設定上下限報警溫度的。具體的程序流程圖如圖1-4所示。
1-4按鍵程序流程圖 3.3系統實現根據系統的設計框圖,查找相關資料,在Proteus 8. 0中畫出原理圖,在KEIL4軟件中編寫程序,然后將這兩個軟件結合,將寫好的程序在Proteus8.0中燒錄進單片機,然后開啟仿真開關,即可顯示設計效果,通過修改硬件電路的同時結合程序,實現實驗要求。然后開始焊接硬件電路,在多孔板上焊出相應的電路,用杜邦線將各個模塊與單片機最小系統板連接在一起得到最終電路,用燒錄軟件將程序燒錄進單片機,最終以實際電路的形式展現出成果。 實物接線圖如下圖所示:
上下限溫度調節功能 實物圖如下圖所示:
全部資料51hei下載地址(仿真與代碼):
單片機51hei設計51hei.docx
(1.17 MB, 下載次數: 25)
2020-12-29 10:57 上傳
點擊文件名下載附件
課程設計報告
LCD.zip
(138.54 KB, 下載次數: 34)
2020-12-29 10:55 上傳
點擊文件名下載附件
編程和仿真圖
|