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

下載本文檔

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

文檔簡(jiǎn)介

1、鄭州交通職業(yè)學(xué)院 課程設(shè)計(jì)報(bào)告論文題目: 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì)所屬系別 信息工程系 專業(yè)班級(jí) 10大專電子信息工程1班 姓名 學(xué)號(hào) 指導(dǎo)教師 撰寫(xiě)日期 2011年12月20日 摘 要隨著現(xiàn)代信息技術(shù)的飛速發(fā)展和傳統(tǒng)工業(yè)改造的逐步實(shí)現(xiàn),能夠獨(dú)立工作的溫度檢測(cè)與顯示系統(tǒng)應(yīng)用于諸多領(lǐng)域。傳統(tǒng)的溫度檢測(cè)以熱敏電阻為溫度敏感元件。熱敏電阻的成本低,需要外加信號(hào)處理電路,而且可靠性相對(duì)較差,測(cè)溫準(zhǔn)確度低,檢測(cè)系統(tǒng)也有一定的誤差。與傳統(tǒng)的溫度計(jì)相比,這次設(shè)計(jì)的是基于ds18b20的數(shù)字溫度計(jì),它具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫精確,數(shù)字顯示,適用范圍寬等特點(diǎn)。在本設(shè)計(jì)中選用at89c52型單片機(jī)作為主控

2、制器件,采用ds18b20數(shù)字溫度傳感器作為測(cè)溫元件,通過(guò)4位共陽(yáng)極led數(shù)碼顯示管并行傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示。本設(shè)計(jì)的內(nèi)容主要分為兩部分,一是對(duì)系統(tǒng)硬件部分的設(shè)計(jì),包括溫度采集電路和顯示電路;二是對(duì)系統(tǒng)軟件部分的設(shè)計(jì),應(yīng)用匯編語(yǔ)言實(shí)現(xiàn)溫度的采集與顯示。通過(guò)ds18b20直接讀取被測(cè)溫度值,送入單片機(jī)進(jìn)行數(shù)據(jù)處理,之后進(jìn)行輸出顯示,最終完成了數(shù)字溫度計(jì)的總體設(shè)計(jì)。其系統(tǒng)構(gòu)成簡(jiǎn)單,信號(hào)采集效果好,數(shù)據(jù)處理速度快,便于實(shí)際檢測(cè)使用。關(guān)鍵詞:?jiǎn)纹瑱C(jī)at89c52;溫度傳感器ds18b20;led數(shù)碼管;三極管1.系統(tǒng)硬件整體設(shè)計(jì)方案由于本設(shè)計(jì)實(shí)現(xiàn)的是測(cè)溫電路,首先我們可以使用熱敏電阻之類的器件,利用

3、其感溫效應(yīng),將其隨被測(cè)溫度變化的電壓或電流值采集過(guò)來(lái),進(jìn)行a/d轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,通過(guò)顯示電路就可以將被測(cè)溫度顯示出來(lái),這種設(shè)計(jì)需要用到a/d轉(zhuǎn)換電路,感溫電路比較麻煩。因此,我們可以采用技術(shù)成熟、操作簡(jiǎn)單、精確度高的溫度傳感器,在此,可以選用數(shù)字溫度傳感器ds18b20,根據(jù)它的特點(diǎn)和測(cè)溫原理,很容易就能直接讀取被測(cè)溫度值并進(jìn)行轉(zhuǎn)換,這樣就可以滿足設(shè)計(jì)要求。通過(guò)此方案,控制器采用單片機(jī)at89c52,溫度傳感器采用ds18b20,用4位led數(shù)碼管以串口并行輸出方式傳送數(shù)據(jù)實(shí)現(xiàn)溫度顯示。1.1單片機(jī)的選擇at89c51作為溫度測(cè)試系統(tǒng)設(shè)計(jì)的核心器件。該器件是intel公司

4、生產(chǎn)的mcs一5l系列單片機(jī)中的基礎(chǔ)產(chǎn)品,采用了可靠的cmos工藝制造技術(shù),具有高性能的8位單片機(jī),屬于標(biāo)準(zhǔn)的mcs51的cmos產(chǎn)品。不僅結(jié)合了hmos的高速和高密度技術(shù)及chmos的低功耗特征,而且繼承和擴(kuò)展了mcs48單片機(jī)的體系結(jié)構(gòu)和指令系統(tǒng)。圖1 單片機(jī)小系統(tǒng)電路at89c51單片機(jī)的主要特性:(1)與mcs-51 兼容,4k字節(jié)可編程閃爍存儲(chǔ)器;(2)靈活的在線系統(tǒng)編程,掉電標(biāo)識(shí)和快速編程特性;(3)壽命為1000次寫(xiě)/擦周期,數(shù)據(jù)保留時(shí)間可10年以上;(4)全靜態(tài)工作模式:0hz-33hz;(5)三級(jí)程序存儲(chǔ)器鎖定;(6)128*8位內(nèi)部ram,32可編程i/o線;(7)兩個(gè)16

5、位定時(shí)器/計(jì)數(shù)器,6個(gè)中斷源;(8)全雙工串行uart通道,低功耗的閑置和掉電模式;(9)看門(mén)狗(wdt)及雙數(shù)據(jù)指針;(9)片內(nèi)振蕩器和時(shí)鐘電路;1.2 溫度傳感器介紹ds18b20可以程序設(shè)定912位的分辨率,精度為±0.5°c??蛇x更小的封裝方式,更寬的電壓適用范圍。分辨率設(shè)定,及用戶設(shè)定的報(bào)警溫度存儲(chǔ)在eprom中,掉電后依然保存。溫度傳感器ds18b20引腳如圖所示。 8引腳封裝 to92封裝圖2 溫度傳感器引腳功能說(shuō)明:nc :空引腳,懸空不使用;vdd:可選電源腳,電源電壓范圍35.5v,工作于寄生電源時(shí),此引腳必須接地; dq :數(shù)據(jù)輸入/輸出腳。漏極開(kāi)路,

6、常態(tài)下高電平;gnd :為電源地。ds18b20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻rom、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器th和tl、配置寄存器。ds18b20溫度傳感器的內(nèi)部存儲(chǔ)器包括一個(gè)高速暫存ram和一個(gè)非易失性的可電擦除的e2ram,后者存放高溫度和低溫度觸發(fā)器th、tl和結(jié)構(gòu)寄存器。 根據(jù)ds18b20的通訊協(xié)議,主機(jī)控制ds18b20完成溫度轉(zhuǎn)換必須經(jīng)過(guò)三個(gè)步驟:每一次讀寫(xiě)之前都要對(duì)ds18b20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條rom指令,最后發(fā)送ram指令,這樣才能對(duì)ds18b20進(jìn)行預(yù)定的操作。復(fù)位要求主cpu將數(shù)據(jù)線下拉500微秒,然后釋放,ds18b20收到信號(hào)后等待166

7、0微秒左右,后發(fā)出60240微秒的存在低脈沖,主cpu收到此信號(hào)表示復(fù)位成功。1.3 溫度傳感器與單片機(jī)的連接溫度傳感器的單總線(1-wire)與單片機(jī)的p20連接,p20是單片機(jī)的高位地址線a8。p2端口是一個(gè)帶內(nèi)部上拉電阻的8位雙向io,其輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)ttl邏輯門(mén)電路。對(duì)該端口寫(xiě)“1”,可通過(guò)內(nèi)部上拉電阻將其端口拉至高電平,此時(shí)可作為輸入口使用,這是因?yàn)閮?nèi)部存在上拉電阻,某一引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流。在訪問(wèn)外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí)。如執(zhí)行movx dptr指令,則表示p2端口送出高8位的地址數(shù)據(jù)。在訪問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí),可執(zhí)

8、行movx ri指令,p2端口內(nèi)容即為特殊功能寄存器(sfr)區(qū)中r2寄存器內(nèi)容,整個(gè)訪問(wèn)期間不改變。在flash編程和程序校驗(yàn)時(shí),p2端口也接收高位地址和其他控制信號(hào)。圖3 ds18b20內(nèi)部結(jié)構(gòu)圖 1.4 復(fù)位信號(hào)及外部復(fù)位電路單片機(jī)的p1.6端口是max813看門(mén)狗電路中喂狗信號(hào)的輸入端,若程序出現(xiàn)異常,單片機(jī)引腳rst將出現(xiàn)兩個(gè)機(jī)器周期以上的高電平,使其復(fù)位。該復(fù)位信號(hào)高電平有效,其有效時(shí)間應(yīng)持續(xù)24個(gè)振蕩脈沖周期即兩個(gè)機(jī)器周期以上。若使用頻率為12 mhz的晶體振蕩器,則復(fù)位信號(hào)持續(xù)時(shí)間應(yīng)超過(guò)2s才完成復(fù)位操作。圖4 單片機(jī)復(fù)位電路1.5 電源電路由于該系統(tǒng)需要穩(wěn)定的5 v電源,因此

9、設(shè)計(jì)時(shí)必須采用能滿足電壓、電流和穩(wěn)定性要求的電源。該電源采用三端集成穩(wěn)壓器lm7805。它僅有輸入端、輸出端及公共端3個(gè)引腳,其內(nèi)部設(shè)有過(guò)流保護(hù)、過(guò)熱保護(hù)及調(diào)整管安全保護(hù)電路由于所需外接元件少,使用方便、可靠,因此可作為穩(wěn)壓電源。圖5 電源電路連接圖1.6 顯示電路采用技術(shù)成熟的74hcl64實(shí)現(xiàn)串并轉(zhuǎn)換。led顯示分為靜態(tài)顯示和動(dòng)態(tài)顯示。這里采用靜態(tài)顯示,系統(tǒng)通過(guò)單片機(jī)的串行口來(lái)實(shí)現(xiàn)靜態(tài)顯示。串行口為方式零狀態(tài),即工作在移位寄存器方式,波特率為振蕩頻率的1/12。當(dāng)器件執(zhí)行任何一條將sbuf作為目的寄存器的命令時(shí),數(shù)據(jù)便開(kāi)始從rxd端發(fā)送。在寫(xiě)信號(hào)有效時(shí),相隔一個(gè)機(jī)器周期后發(fā)送控制端send

10、有效,即允許rxd發(fā)送數(shù)據(jù),同時(shí)允許從txd端輸出移位脈沖。圖7為顯示電路的連接圖。圖6 顯示電路的連接圖2 軟件設(shè)計(jì)dsl8820的主要數(shù)據(jù)元件有:64位激光lasered rom,溫度靈敏元件和非易失性溫度告警觸發(fā)器th和tl。dsbl820可以從單總線獲取電源,當(dāng)信號(hào)線為高電平時(shí),將能量貯存在內(nèi)部電容器中;當(dāng)單信號(hào)線為低電平時(shí),將該電源斷開(kāi),直到信號(hào)線變?yōu)楦唠娖街匦陆由霞纳?電容)電源為止。此外,還可外接5 v電源,給dsl8820供電。dsl8820的供電方式靈活,利用外接電源還可增加系統(tǒng)的穩(wěn)定性和可靠性。ds18b20溫度傳感器的內(nèi)部存儲(chǔ)器包括一個(gè)高速暫存ram和一個(gè)非易失性的可電擦

11、除的e2ram,后者存放高溫度和低溫度觸發(fā)器th、tl和結(jié)構(gòu)寄存器。 開(kāi)始ds18b20的初始化啟動(dòng)溫度轉(zhuǎn)換讀取溫度寄存器跳過(guò)讀序列號(hào)的操作跳過(guò)讀序列號(hào)的操作ds18b20的初始化retlow-低八位 high-高八位圖7 讀取數(shù)據(jù)的流程圖讀出溫度數(shù)據(jù)后,low的低四位為溫度的小數(shù)部分,可以精確到0.0625,low的高四位和high的低四位為溫度的整數(shù)部分,high的高四位全部為1表示負(fù)數(shù),全為0表示正數(shù)。所以先將數(shù)據(jù)提取出來(lái),分為三個(gè)部分:小數(shù)部分、整數(shù)部分和符號(hào)部分。小數(shù)部分進(jìn)行四舍五入處理:大于0.5的話,向個(gè)位進(jìn)1;小于0.5的時(shí)候,舍去不要。當(dāng)數(shù)據(jù)是個(gè)負(fù)數(shù)的時(shí)候,顯示之前要進(jìn)行數(shù)據(jù)

12、轉(zhuǎn)換,將其整數(shù)部分取反加一。還因?yàn)閐s18b20最低溫度只能為-55,所以可以將整數(shù)部分的最高位換成一個(gè)“-”,表示為負(fù)數(shù)。開(kāi)始提取整數(shù)部分存入ht提取小數(shù)部分存入ltlt右移三位,將精度降低到0.5攝氏度ht+將小數(shù)部分整數(shù)化提取符號(hào)部分存入signlt是否大于5sign=?0xf0ret負(fù)數(shù)表示flag=1 ht=ht+1ynny圖8 溫度數(shù)據(jù)處理流程圖3數(shù)據(jù)測(cè)試將溫度傳感器與冰水混合物接觸,經(jīng)過(guò)充分?jǐn)嚢柽_(dá)到熱平衡后調(diào)節(jié)系統(tǒng),使顯示讀數(shù)為0.00(標(biāo)定0);利用氣壓計(jì)讀出當(dāng)時(shí)當(dāng)?shù)氐拇髿鈮簭?qiáng),并根據(jù)大氣壓強(qiáng)和當(dāng)?shù)刂亓铀俣扔?jì)算出當(dāng)時(shí)的實(shí)際壓強(qiáng);根據(jù)沸點(diǎn)與壓強(qiáng)的關(guān)系查出沸點(diǎn)溫度。把溫度傳感器放

13、入沸水中,待顯示讀數(shù)穩(wěn)定后重新調(diào)節(jié),使顯示器顯示讀數(shù)等于當(dāng)?shù)禺?dāng)時(shí)沸點(diǎn)溫度后工作結(jié)束。該溫度計(jì)的量程為-50150,讀數(shù)精度為0.1,實(shí)際使用一般在0100。采用050和50100的精密水銀溫度計(jì)作檢驗(yàn)標(biāo)準(zhǔn),對(duì)設(shè)計(jì)的溫度計(jì)進(jìn)行測(cè)試,其結(jié)果表明能達(dá)到該精度要求。4 總結(jié)與體會(huì)本設(shè)計(jì)介紹了基于ds18b20的數(shù)字溫度計(jì)的工作原理及實(shí)現(xiàn)過(guò)程,閱讀大量有關(guān)數(shù)字溫度計(jì)原理及設(shè)計(jì)的相關(guān)資料,設(shè)計(jì)了系統(tǒng)所需的電路原理圖及實(shí)現(xiàn)采集與顯示功能的軟件程序,完成了基于ds18b20的數(shù)字溫度計(jì)的設(shè)計(jì)。設(shè)計(jì)中采用最常用的單片機(jī)at89c52作為主控模塊,單總線數(shù)字溫度傳感器ds18b20用來(lái)測(cè)量溫度,溫度數(shù)據(jù)采用數(shù)碼管

14、led顯示。本設(shè)計(jì)的特點(diǎn)是構(gòu)成系統(tǒng)的硬件器件少,操作簡(jiǎn)單,數(shù)據(jù)處理功能強(qiáng)。通過(guò)這次畢業(yè)設(shè)計(jì)使我學(xué)習(xí)到了很多的東西,不僅加深了對(duì)專業(yè)知識(shí)的理解,而且更好地把理論知識(shí)與實(shí)踐相結(jié)合,提高了自身的動(dòng)手能力和實(shí)踐水平,增強(qiáng)了學(xué)習(xí)單片機(jī)系統(tǒng)開(kāi)發(fā)與設(shè)計(jì)的興趣,相信本次畢業(yè)設(shè)計(jì)的經(jīng)歷一定會(huì)在我今后的學(xué)習(xí)生活中產(chǎn)生巨大的推動(dòng)作用。參考文獻(xiàn)1 于永.51單片機(jī)c語(yǔ)言常用模塊與綜合系統(tǒng)設(shè)計(jì)實(shí)例精講m.北京:電子工業(yè)出版社,20082戴永成等.基于ds18b20的數(shù)字溫度測(cè)量?jī)xj.北華航天工業(yè)學(xué)院學(xué)報(bào),20083廖常初.現(xiàn)場(chǎng)總線概述j.電工技術(shù),19994張?jiān)降?基于ds18b20溫度傳感器的數(shù)字溫度計(jì)j.微電子學(xué),

15、20075李朝青.單片機(jī)原理及接口技術(shù)(簡(jiǎn)明修訂版).杭州:北京航空航天大學(xué)出版社,19986黃河.基于ds18b20的單總線數(shù)字溫度計(jì)j.湘潭師范學(xué)院學(xué)報(bào),20087李廣弟.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,19948 王建強(qiáng)等.基于dsp控制器與ds18b20的溫度測(cè)量方法j. 儀器儀表與檢測(cè)技術(shù),2009附錄1 系統(tǒng)原理圖附錄2 程序源代碼4data_busbitp3.3flagbit00htemp_lequ 30htemp_hequ31htemp_dpequ32htemp_intequ33htemp_baiequ34htemp_shiequ35htemp_geequ36hdis

16、_baiequ37hdis_shiequ38hdis_geequ39hdis_dpequ3ahdis_addequ3bhorg 0000hajmpstartorg 0050hstart:movsp,#40hmain:lcallread_templcallprocessajmpmain;讀溫度程序read_temp:lcallreset_pulsemov a,#0cchlcall writemova,#44hlcall writelcalldisplaylcallreset_pulsemova,#0cchlcallwritemova,#0behlcall writelcallreadretres

17、et_pulse:reset:setbdata_busnopnopclrdata_busmovr7,#255djnzr7,$setb data_busmovr7,#30djnzr7,$jnb data_bus,setb_flagclrflagajmpnextsetb_flag:setb flagnext:mov r7,#120djnzr7,$setb data_busjnbflag,resetretwrite:setbdata_busmovr6,#8clrcwriting:clrdata_busmovr7,#5djnzr7,$rrcamovdata_bus, cmovr7,#30hdjnzr7

18、,$setbdata_busnopdjnzr6,writingretdisplay:mov r4,#200dis_loop:mova,dis_dpmovp2,#0ffhmovp0,aclrp2.7lcalldelay2msmova,dis_gemovp2,#0ffhmovp0,asetbp0.7clrp2.6lcalldelay2msmova,dis_shimovp2,#0ffhmovp0,aclrp2.5lcalldelay2msmova,dis_baimovp2,#0ffhmovp0,amova,temp_baicjnea,#0,skipajmpnexttskip:clrp2.4lcalldelay2msnextt:nopdjnzr4,dis_loopretread:setbdata_busmovr0,#temp_lmov r6,#8movr5,#2clrcreading:clrdata_busnopnopsetbdata_busnopnopnopnopmovc,data_busrrcamovr7,#30hdjnzr7,$setbdata_busdjnzr6,readingmovr0,ainc r0movr6,#8setbdata_busdjnzr5,readingretprocess:mov r7,temp_lmova,#0fhanla,r7movt

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論