基于單片機(jī)數(shù)字溫度計(jì)的設(shè)計(jì)范文預(yù)覽_第1頁
基于單片機(jī)數(shù)字溫度計(jì)的設(shè)計(jì)范文預(yù)覽_第2頁
基于單片機(jī)數(shù)字溫度計(jì)的設(shè)計(jì)范文預(yù)覽_第3頁
基于單片機(jī)數(shù)字溫度計(jì)的設(shè)計(jì)范文預(yù)覽_第4頁
基于單片機(jī)數(shù)字溫度計(jì)的設(shè)計(jì)范文預(yù)覽_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、各專業(yè)畢業(yè)論文范文盡在道客巴巴下載基于單片機(jī)數(shù)字溫度計(jì)的設(shè)計(jì)摘要:本文綜述了數(shù)字溫度計(jì)的設(shè)計(jì)與制作過程,介紹了設(shè)計(jì)制作一個(gè)完整的數(shù)字溫度計(jì)需要做的準(zhǔn)備與制作過程,通過一段時(shí)間的努力制作,從剛開始透徹理解題目要求及所要設(shè)計(jì)的產(chǎn)品的各項(xiàng)性能功能,然后覺得利用單片機(jī)作為控制內(nèi)核,其次主要的就是溫度傳感器ds18b20,及其他重要部分電路的配合下設(shè)計(jì)出一套完整的硬件系統(tǒng),及它的靈魂軟件系統(tǒng)。得到了一種基于單片機(jī)控制的數(shù)字溫度計(jì)。本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,該設(shè)計(jì)控制器使用單片機(jī)at89s51,測(cè)溫傳感器使用ds18b20,用4

2、位共陽極led數(shù)碼管以串口傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示,能準(zhǔn)確達(dá)到以上要求。 關(guān)鍵詞:?jiǎn)纹瑱C(jī),數(shù)字控制,溫度計(jì), ds18b20,at89s51目錄前言4第一章 系統(tǒng)方案設(shè)計(jì)51.1溫度測(cè)量系統(tǒng)功能描述51.2系統(tǒng)設(shè)計(jì)性能指標(biāo)51.3 ds18b20工作原理61.3.1性能特點(diǎn)61.3.2 外部結(jié)構(gòu)61.3.3 內(nèi)部結(jié)構(gòu)71.3.4 ds18b20測(cè)溫原理91.4 at89c51簡(jiǎn)介101.5 顯示部分11第二章 系統(tǒng)硬件電路設(shè)計(jì)152.1 ds18b20溫度傳感器的連接152.2 單片機(jī)端口連接15第三章 系統(tǒng)軟件設(shè)計(jì)173.1 主程序173.2 讀出溫度子程序183.3 溫度轉(zhuǎn)換命令子程序193

3、.4 計(jì)算溫度子程序203.5 顯示數(shù)據(jù)刷新子程序20第四章 系統(tǒng)調(diào)試及仿真354.1 系統(tǒng)程序調(diào)試354.2 系統(tǒng)軟硬件仿真35第五章 總 結(jié)39參考文獻(xiàn)40 前言在一些溫度測(cè)量系統(tǒng)電路中,廣泛采用的是通過熱電偶、熱電阻或pn結(jié)測(cè)溫電路經(jīng)過相應(yīng)的信號(hào)調(diào)理電路,轉(zhuǎn)換成ad轉(zhuǎn)換器能接收的模擬量,再經(jīng)過采樣保持電路進(jìn)行ad轉(zhuǎn)換,最終送入單片機(jī)及其相應(yīng)的外圍電路,完成監(jiān)控。但是由于傳統(tǒng)的信號(hào)調(diào)理電路實(shí)現(xiàn)復(fù)雜、易受干擾、不易控制且精度不高。本溫度測(cè)量儀采用單片機(jī)結(jié)合ds18b20智能溫度傳感器控制系統(tǒng)設(shè)計(jì),因此,本系統(tǒng)用一種新型的可編程溫度傳感器(ds18b20),不需復(fù)雜的信號(hào)調(diào)理電路和ad轉(zhuǎn)換電路

4、能直接與單片機(jī)完成數(shù)據(jù)采集和處理,實(shí)現(xiàn)方便、精度高,可根據(jù)不同需要用于各種場(chǎng)合。第一章 系統(tǒng)方案設(shè)計(jì)1.1溫度測(cè)量系統(tǒng)功能描述采用8051單片機(jī)和溫度傳感器ds18b20設(shè)計(jì)一種數(shù)字溫度計(jì),測(cè)溫范圍為-55到128,由按鍵設(shè)定溫度報(bào)警上下限值th和tl,采用點(diǎn)陳字符液晶模塊作為數(shù)字溫度計(jì)的顯示部分,分兩行顯示,第一行顯示工作狀態(tài),正常時(shí)顯示“ds18b20 ok”,不正常時(shí)顯示“ds18b20 error”;第二行顯示實(shí)測(cè)溫度值和狀態(tài)符號(hào),“h”表示實(shí)測(cè)溫度值大于溫度報(bào)警值th,“被減數(shù),則 jc chuli1 ;借位標(biāo)志位c=1,轉(zhuǎn) mova,tempfc cjnea,#0bh,comp s

5、jmpchuli2comp: mov a,temp_zh subb a,temp_tl ;減數(shù)被減數(shù),則 jc chuli2 ;借位標(biāo)志位c=1,轉(zhuǎn) mov dptr,#bj5 lcall temp_bj3 clr relay ;點(diǎn)亮指示燈 ret chuli1: mov dptr,#bj3 lcall temp_bj3 setb relay ;熄滅指示燈 lcall beep_bl;蜂鳴器響 ret chuli2: mov dptr,#bj4 lcall temp_bj3 setb relay ;熄滅指示燈 lcall beep_bl;蜂鳴器響 ret;-temp_bj3: mov a,#0

6、ceh lcall wcom mov r1,#0 mov r0,#2bbjj3: mov a,r1 movc a,a+dptr lcall wdata inc r1 djnz r0,bbjj3 retbj3: db hbj4: db lbj5: db !; ;* 顯示溫度標(biāo)記子程序 *temp_bj: mov a,#0cbh lcall wcom mov dptr,#bj1 ;指針指到顯示消息 mov r1,#0 mov r0,#2bbjj1: mov a,r1 movc a,a+dptr lcall wdata inc r1 djnz r0,bbjj1 retbj1: db 00h,c;*

7、顯示正確信息子程序 *menu_ok: mov dptr,#m_ok1 ;指針指到顯示消息 mov a,#1 ;顯示在第一行 lcall lcd_print mov dptr,#m_ok2 ;指針指到顯示消息 mov a,#2 ;顯示在第一行 lcall lcd_print retm_ok1: db ds18b20 ok ,0m_ok2: db temp: ,0;* 顯示出錯(cuò)信息子程序 *menu_error:mov dptr,#m_error1 ;指針指到顯示消息 mov a,#1 ;顯示在第一行 lcall lcd_print mov dptr,#m_error2 ;指針指到顯示消息1 m

8、ov a,#2 ;顯示在第一行 lcall lcd_print retm_error1: db ds18b20 error ,0m_error2: db temp: - ,0;*ds18b20復(fù)位子程序 *rst: setb dq nop clr dq mov r0,#6bh ;主機(jī)發(fā)出延時(shí)復(fù)位低脈沖 mov r1,#04htsr1: djnz r0,$ mov r0,#6bh djnz r1,tsr1 setb dq ;拉高數(shù)據(jù)線 nop nop nop mov r0,#32htsr2: jnb dq,tsr3 ;等待ds18b20回應(yīng) djnz r0,tsr2 jmp tsr4 ; 延時(shí)t

9、sr3: setb flag1 ; 置1標(biāo)志位,表示ds1820存在 jmp tsr5tsr4: clr flag1 ; 清0標(biāo)志位,表示ds1820不存在 jmp tsr7tsr5: mov r0,#06bhtsr6: djnz r0,$ ; 時(shí)序要求延時(shí)一段時(shí)間tsr7: setb dq ret;* ds18b20暫存器操作子程序 *re_18b20:jb flag1,re_18b20a retre_18b20a:lcall rst mov a,#0cch ;跳過rom匹配 lcall writewr_scrapd: mov a,#4eh ;寫暫器 lcall write mov a,te

10、mp_th ;th(報(bào)警上限) lcall write mov a,temp_tl ;tl(報(bào)警下限) lcall write mov a,#7fh ;12位精度 lcall write ret;* 復(fù)制暫存器子程序 *write_e2:lcall rst mov a,#0cch ;跳過rom匹配 lcall write mov a,#48h ;把暫存器里的溫度報(bào)警值拷貝到eerom lcall write ret;* 重讀eerom子程序 *read_e2:lcall rst mov a,#0cch ;跳過rom匹配 lcall write mov a,#0b8h ;把eerom里的溫度報(bào)警

11、值拷貝回暫存器 lcall write ret;* 將自定義字符寫入lcd的cgram中 *store_data: mov a,#40h lcall wcom mov r2,#08h mov dptr,#d_data mov r3,#00hs_data: mov a,r3 movc a,a+dptr lcall wdata ;寫入數(shù)據(jù) inc r3 djnz r2,s_data retd_data: db 0ch,12h,12h,0ch,00h,00h,00h,00h;* ds18b20數(shù)據(jù)寫入操作子程序 *write: mov r2,#8 ;一共8位數(shù)據(jù) clr cwr1: clr dq ;

12、開始寫入ds18b20總線要處于復(fù)位(低)狀態(tài) mov r3,#07 djnz r3,$ ;總線復(fù)位保持16微妙以上 rrc a ;把一個(gè)字節(jié)data 分成8個(gè)bit環(huán)移給c mov dq,c ;寫入一位 mov r3,#3ch djnz r3,$ ;等待100微妙 setb dq ;重新釋放總線 nop djnz r2,wr1 ;寫入下一位 setb dq ret;* ds18b20數(shù)據(jù)讀取操作子程序 *read: mov r4,#4 ;將溫度低位、高位、th、tl從ds18b20中讀出 mov r1,#templ ;存入25h、26h、27h、28h單元re00: mov r2,#8re0

13、1: clr cy setb dq nop nop clr dq ;讀前總線保持為低 nop nop nop setb dq ;開始讀總線釋放 mov r3,#09 ;延時(shí)18微妙 djnz r3,$ mov c,dq ;從ds18b20總線讀得一位 mov r3,#3ch djnz r3,$ ;等待100微妙 rrc a ;把讀得的位值環(huán)移給a djnz r2,re01 ;讀下一位 mov r1,a inc r1 djnz r4,re00 ret;* 溫度值 bcd 碼處理子程序 *convtemp: mov a,temph ;判溫度是否零下 anl a,#08h jz tempc1 ;溫度

14、零上轉(zhuǎn) clr c mov a,templ ;二進(jìn)制數(shù)求補(bǔ)(雙字節(jié)) cpl a ;取反加1 add a,#01h mov templ,a mov a,temph cpl a addc a,#00h mov temph,a mov temphc,#0bh;負(fù)溫度標(biāo)志 mov tempfc,#0bh sjmp tempc11tempc1: mov temphc,#0ah ;正溫度標(biāo)志 mov tempfc,#0ahtempc11: mov a,temphc swap a mov temphc,a mov a,templ anl a,#0fh ;乘0.0625 mov dptr,#tempdott

15、ab movc a,a+dptr mov templc,a ;templc low=小數(shù)部分 bcd mov a,templ ;整數(shù)部分 anl a,#0f0h ;取出高四位 swap a mov templ,a mov a,temph ;取出低四位 anl a,#0fh swap a orl a,templ ;重新組合 mov temp_zh,a lcall hex2bcd1 mov templ,a anl a,#0f0h swap a orl a,temphc ;temphc low = 十位數(shù) bcd mov temphc,a mov a,templ anl a,#0fh swap a ;templc

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論