基于單片機的數(shù)字溫度計_第1頁
基于單片機的數(shù)字溫度計_第2頁
基于單片機的數(shù)字溫度計_第3頁
基于單片機的數(shù)字溫度計_第4頁
基于單片機的數(shù)字溫度計_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、數(shù)字溫度計設計一、設計任務與要求11 設計容:數(shù)字溫度計的設計要能實現(xiàn)溫度的實時采集與顯示,以AT89S51單片機為核心芯片,使用DS18B20數(shù)字溫度傳感器或使用熱敏電阻之類的器件,利用其感溫效應采集環(huán)境溫度,并通過一組4位共陰極數(shù)碼管將溫度顯示出來,也可用LM1602液晶顯示屏。12 設計基本要求:(1)溫度設定圍:溫度為0099(2)溫度精度為0.1;(3)可以設置報警溫度,發(fā)出報警信息,可以用聲或光表示。二、方案設計與論證本設計以檢測溫度并顯示溫度,以與提供上下限報警和設定某一個報警溫度為目的。按照系統(tǒng)設計功能的要求,對于溫度的采集可以使用溫度傳感器、熱敏電阻或熱電偶等等;將采集到的溫

2、度傳到單片機,利用軟件編程對溫度進行處理;溫度圍和精度由軟硬件決定;報警采用聲音和燈光相結合,由蜂鳴器和LED燈組成;報警溫度的設置由鍵盤的up和down來設定。方案一由于本設計實現(xiàn)的是測溫電路,首先我們可以使用熱敏電阻之類的器件,利用其感溫效應,將其隨被測溫度變化的電壓或電流值采集過來,進行A/D轉換后,就可以用單片機進行數(shù)據的處理,通過顯示電路就可以將被測溫度顯示出來,這種設計需要用到A/D轉換電路,感溫電路比較麻煩。因此,我們引出第二種方案。方案二我們可以采用技術成熟、操作簡單、精確度高的溫度傳感器,在此,可以選用數(shù)字溫度傳感器DS18B20,根據它的特點和測溫原理,很容易就能直接讀取被

3、測溫度值并進行轉換,這樣就可以滿足設計要求。從以上兩種方案,很容易看出,采用方案二,電路比較簡單,軟件設計也比較簡單,故在本設計中采用了方案二。以下為利用DS18B20溫度傳感器的硬件構成圖:單片機AT89C52RC主控部分四位數(shù)碼管顯示溫度DS18B20溫度采集按鍵輸入復位電路聲光報警電路外部晶振電路圖2.1 數(shù)字溫度計設計總體硬件構成圖三、硬件電路設計3. 1、硬件設計總圖見圖3.1圖3.1 硬件設計仿真總圖3.2最小系統(tǒng)的電路設計單片機晶振電路、外部按鍵電路和復位電路的設計如圖3.2所示。XTAL1(X1)為反向振蕩放大器的輸入與部時鐘工作電路的輸入。XTAL2(X2)是來自反向振蕩器的

4、輸出。在此使用的是12MHz的晶振;復位電路采用手動復位與上電復位相結合的方式。當按下按鍵S1時,VCC通過R1電阻給復位輸入端口一個高電平,實現(xiàn)復位功能,即手動復位。上電復位就是VCC通過電阻R2和電容C3構成回路,該回路是一個對電容C充電和放電的電路,所以復位端口得到一個周期性變化的電壓值,并且有一定時間的電壓值高于CPU復位電壓,實現(xiàn)上電復位功能;以與外部按鍵電路通過UP和DOWN按鍵將I/O口直接與地相連,當按鍵按下時I/O口將檢測到低電平。圖3.2 最小系統(tǒng)的設計電路3.3溫度采集電路的設計(1)、數(shù)字溫度傳感器DS18B20它是一種新型的”一線器件”,其體積更小、更適用于多種場合、

5、且適用電壓更寬、更經濟。DALLAS 半導體公司的數(shù)字化溫度傳感器DS18B20是世界上第一片支持”一線總線”接口的溫度傳感器。溫度測量圍為-55+125 攝氏度,可編程為9位12 位轉換精度,測溫分辨率可達0.0625攝氏度,分辨率設定參數(shù)以與用戶設定的報警溫度存儲在EEPROM 中,掉電后依然保存。被測溫度用符號擴展的16位數(shù)字量方式串行輸出;其工作電源既可以在遠端引入,也可以采用寄生電源方式產生;多個DS18B20可以并聯(lián)到3 根或2 根線上,CPU只需一根端口線就能與諸多DS18B20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。因此用它來組成一個測溫系統(tǒng),具有線路簡單,

6、在一根通信線,可以掛很多這樣的數(shù)字溫度計,十分方便。DS18B20 的性能特點如下:獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條總線即可實現(xiàn)微處理器與DS18B20的雙向通訊; DS18B20支持多點組網功能,多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)組網多點測溫; DS18B20在使用中不需要任何外圍元件,全部傳感元件與轉換電路集成在形如一只三極管的集成電路;適應電壓圍更寬,電壓圍:3.05.5V,在寄生電源方式下可由數(shù)據線供電;測溫圍-55125,在-10+85時精度為±0.5;零待機功耗;可編程的分辨率為912位,對應的可分辨溫度分別為0.5、0.25、0

7、.125和0.0625,可實現(xiàn)高精度測溫;在9位分辨率時最多在93.75ms把溫度轉換為數(shù)字,12位分辨率時最多在750ms把溫度值轉換為數(shù)字,速度較慢;用戶可定義報警設置;測量結果直接輸出數(shù)字溫度信號,以"一線總線"串行傳送給CPU,同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力;負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作。 (2)、工作原理如下器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產生固定頻率的脈沖信號送給減法計數(shù)器;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產生的信號作為減法計數(shù)器的脈沖輸入。器件中還有一個計數(shù)門,當計數(shù)門打

8、開時,DS18B20就對低溫度系數(shù)振蕩器產生的時鐘脈沖進行計數(shù)進而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將55所對應的一個基數(shù)分別置入減法計數(shù)器、溫度寄存器中,計數(shù)器和溫度寄存器被預置在55所對應的一個基數(shù)值。減法計數(shù)器對低溫度系數(shù)晶振產生的脈沖信號進行減法計數(shù),當減法計數(shù)器的預置值減到時,溫度寄存器的值將加,減法計數(shù)器的預置將重新被裝入,減法計數(shù)器重新開始對低溫度系數(shù)晶振產生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)到時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預置值,只要計數(shù)器門仍未關閉就重復上述過程,直到

9、溫度寄存器值大致被測溫度值。它有嚴格的時序概念,初始化DS18B20(發(fā)復位脈沖)發(fā)ROM功能命令發(fā)存儲器操作命令處理數(shù)據。(3)、部構造和硬件仿真圖如下C64 位ROM和單線接口高速緩存存儲器與控制邏輯溫度傳感器高溫觸發(fā)器TH低溫觸發(fā)器TL配置寄存器8位CRC發(fā)生器VddI/O圖3.3 DS18B20溫度采集仿真圖3.4 數(shù)碼管溫度顯示電路設計 LED數(shù)碼管,也叫LED數(shù)碼顯示器,由于它具有很高的性能價格比、顯示清晰、亮度高、使用方便、電路簡單、壽命長等諸多優(yōu)點,長期以來一直在各類電子產品和工程控制中得到非常廣泛的應用。在單片機控制系統(tǒng)中,因為單片機的硬件簡單、靈活等特點,非常適合使用LED

10、數(shù)碼管作為其輸出設備,這樣既滿足了控制系統(tǒng)硬件簡單,又能如實地顯示被控系統(tǒng)的溫度、壓力、流量、高度等一些單片機的處理結果。本設計的顯示電路采用4個共陰極LED數(shù)碼管,從P0口并行輸出溫度段碼,用P2.0P2.3四個端口輸出位選,控制數(shù)碼管的點亮。其工作過程如下:1、并行數(shù)據由P1口送至4個數(shù)碼管。2、這時P3.0、P3.1、P3.2、P3.3輪流輸出低電平,LED數(shù)碼管依次被點亮,顯示P1傳送來的數(shù)據。由于數(shù)碼管余輝效應和人眼的視覺延遲,當數(shù)碼管每秒點亮50次時,就會出現(xiàn)靜止顯示的溫度值。硬件圖如圖3.4所示:圖3.4 數(shù)碼管溫度顯示電路3.5聲光報警電路設計報警電路采用蜂鳴器和LED燈相結合

11、的辦法,通過兩個NPN三極管來驅動,如圖3.5所示。當三極管基極為低電平時,蜂鳴器和LED燈都關閉;當基極由低電平變?yōu)楦唠娖綍r,三極管導通,這時蜂鳴器響,LED燈亮,達到聲光報警的目的。圖3.5 聲光報警電路四、溫度傳感器程序設計 開始設定溫度報警初值溫度轉化子程序溫度報警判斷鍵盤掃描初始化DS18B20應答脈沖?發(fā)起跳讀Rom命令CCH發(fā)起轉化溫度命令44H延時1s,等待溫度轉換完成初始化DS18B20應答脈沖?發(fā)起讀暫存器命令BEH讀取內部RAM中第1,2字節(jié)即為溫度數(shù)值NoNo將數(shù)字溫度變成真實溫度并輸出顯示4.1程序設計流程框圖4.2主要程序代碼與說明/*延時函數(shù)*/* DS18B20

12、初始化以與對它讀寫的程序*/void dsreset(void) uint i;ds=0;i=100;while(i>0)i-;ds=1;i=4;while(i>0)i-;bit tempreadbit(void) /讀1位數(shù)據函數(shù) uint i=0;bit dat;ds=0;i+; /i+起延時作用ds=1;i+;i+;dat=ds;i=8;while(i>0)i-;return(dat); uchar tempread(void) /讀1個字節(jié)的數(shù)據 uchar i,j,dat;dat=0;for(i=1;i<=8;i+) j=tempreadbit();dat=(

13、j<<7)|(dat>>1);return(dat);void tempwritebyte(uchar dat) /向DS18B20寫一個字節(jié)數(shù)據 uint i,j; bit testb; for(j=1;j<=8;j+) testb=dat&0x01; dat=dat>>1; if(testb) /寫1 ds=0; i+;i+; ds=1; i=8;while(i>0)i-; else /寫0 ds=0;i=8;while(i>0)i-;ds=1;i+;i+; /*向DS18B20發(fā)送轉換指令*/*將轉換后的數(shù)字溫度轉換為模擬溫度

14、*/*將模擬溫度通過數(shù)碼管顯示*/*按鍵輸入部分用來改變報警溫度初值*/*對報警溫度進行判斷并聲光提示*/*主函數(shù)體*/五、仿真過程與仿真結果將硬件設計原理圖和程序相結合進行軟件仿真,首先,將設計好的數(shù)字溫度傳感器程序輸入到Proteus中保存、編譯生成HEX文件,將該HEX文件下載到仿真原理圖,其仿真結果如下圖5.1。程序默認報警溫度為25,DS18B20的模擬溫度可以任意設置如圖中設置為26.31度,通過DOWN鍵可以減小報警溫度初值,UP鍵可以增大報警溫度初值,并且當有按鍵按下時,有聲光提示,數(shù)碼管回顯報警值。現(xiàn)在通過按UP鍵使報警初值加1變?yōu)?6,由于26約等于DS18B20的當前溫度

15、26.31(報警誤差最大為0.5),所以蜂鳴器響起,LED燈閃爍。再次按下UP后報警初值變?yōu)?7,聲光報警也都關閉。圖5.1 仿真結果六、安裝與調試 6.1、電路的安裝在制作好電路板以后,就進入了電路的安裝過程。安裝中要嚴格按照原理圖和PCB圖中元件的位置與參數(shù)來焊接,焊接時要注意不能讓焊錫短路電路,注意元件的正負極,同時還要把握好對溫度敏感元件的焊接時間。防止元器件和線路因為高溫而燒毀。依據仿真圖畫出原理圖和PCB圖如下圖6.1所示6.2、電路的調試焊接好電路以后,對電路的調試是一步很重要的過程,關系到各功能的實現(xiàn)問題與最終的成敗問題。系統(tǒng)板上硬件連線(1)把“單片機系統(tǒng)”區(qū)域中的P0.0P

16、0.7用8芯排線連接到“動態(tài)數(shù)碼顯示”區(qū)域中的ABCDEFGH端子上。(2)把“單片機系統(tǒng)”區(qū)域中的P2.0P2.3用8芯排線連接到“動態(tài)數(shù)碼顯示”區(qū)域中的Y0Y1Y2Y3端子上。(3)把DS18B20芯片插入“三路單總線”區(qū)域中的一個插座中,注意電源與地信號不要接反。(4)把“三路單總線”區(qū)域中的對應的DQ端子連接到“單片機系統(tǒng)”區(qū)域中的P3.7/RD端子上。(5).蜂鳴器接“單片機系統(tǒng)”區(qū)域中的P1.5端子上。嚴格按照仿真原理圖正確連接各線路,檢查無誤后上電,然后看看各功能模塊是否正常。七、結論與心得溫度的檢測和控制是一個經典的課題,生活中的各個領域里經常需要檢測和控制某一特定環(huán)境的溫度,使之能夠穩(wěn)定在一定的溫度圍之。這就要求系統(tǒng)對溫度的檢測具有足夠的精度和實時性,控制要有足夠的精度,并且盡可能具有較低的成本,這樣的產品才具有實用價值。DS18B20恰好具有這樣的優(yōu)勢,由于其可直接輸出數(shù)字量,不需要AD轉換,測溫圍大,與單片機容易接口,成為原來廣為使用的熱電阻、熱電偶的理想替代品。因此本設計可以應用于多種溫度控制場合。本設計敘述了

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論