【《基于單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)》8200字】_第1頁(yè)
【《基于單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)》8200字】_第2頁(yè)
【《基于單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)》8200字】_第3頁(yè)
【《基于單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)》8200字】_第4頁(yè)
【《基于單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)》8200字】_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

基于單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)目錄TOC\o"1-3"\h\u131971引言 .2液晶顯示程序流程圖先設(shè)置光標(biāo),再設(shè)置輸入方式,清除屏幕輸出,隨后初始化顯示位置和內(nèi)容。再判斷是否調(diào)用顯示子程序,若判斷否,則再初始化顯示位置和內(nèi)容,再進(jìn)行一次判斷。若判斷是,則提取溫度或日期時(shí)間的數(shù)據(jù),再顯示到液晶屏對(duì)應(yīng)位置。其流程圖如圖4-2所示。圖4-2液晶顯示程序流程圖4.3溫度主程序流程圖主程序開(kāi)始進(jìn)行系統(tǒng)初始化設(shè)置,只有當(dāng)檢驗(yàn)到了DS18B20存在時(shí),才能發(fā)出溫度轉(zhuǎn)換子程序和讀溫度子程序的命令,同時(shí)立即調(diào)用其對(duì)應(yīng)的溫度數(shù)據(jù)處理子程序,完成溫度數(shù)據(jù)采集及顯示。其程序流程圖如圖4-3(a)所示:開(kāi)始開(kāi)始DS18B20復(fù)位檢測(cè)子程序溫度轉(zhuǎn)換子程序讀溫度子程序按鍵掃描子程序溫度計(jì)算子程序顯示子程序溫度比較子程序圖4-3(a)溫度主程序流程4.3.1DS18B20復(fù)位檢測(cè)子程序流程圖單片機(jī)控制的DS18B20必須先進(jìn)行初始化設(shè)置,首先單片機(jī)發(fā)出一個(gè)低電平最短為480us的復(fù)位脈沖,然后系統(tǒng)釋放總線進(jìn)入接收狀態(tài),I/O引腳在上升沿時(shí)且被DS18B20檢測(cè)到時(shí),等待15-60us然后會(huì)發(fā)出一個(gè)低電平為60-240us的存在脈沖。如圖4-3(b)所示。圖4-3(b)初始化程序示意圖DS18B20復(fù)位檢測(cè)子程序的主要功能為檢驗(yàn)DS18B20是否存在。若存在則將標(biāo)志位FLAG1置1,若不存在則置0。后續(xù)程序通過(guò)判斷標(biāo)志位FLAG1,再來(lái)決定后面進(jìn)行何種操作。流程圖如圖4-3(c):圖4-3(c)DS18B20復(fù)位檢測(cè)子程序流程圖4.3.2溫度轉(zhuǎn)換子程序圖溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換命令,當(dāng)采用12位分辨率時(shí)轉(zhuǎn)換時(shí)間約為750ms,流程圖如圖4-3(d):圖4-3(d)溫度轉(zhuǎn)換子程序流程4.3.3寫(xiě)DS18B20子程序圖寫(xiě)時(shí)間片:將數(shù)據(jù)從高電平拉至低電平,產(chǎn)生寫(xiě)起始信號(hào)。在15us之內(nèi)將所需寫(xiě)的位送到數(shù)據(jù)線上,在15us到60us之間對(duì)數(shù)據(jù)線進(jìn)行采樣,如果采樣為高電平,就寫(xiě)1,如果為低電平,寫(xiě)0就發(fā)生。在開(kāi)始另一個(gè)寫(xiě)周期前必須有1us以上的高電平恢復(fù)期。其寫(xiě)時(shí)序示意如圖4-3(e),流程圖如圖4-3(f):圖4-3(e)寫(xiě)時(shí)序示意圖圖4-3(f)寫(xiě)入DS18B20子程序流程圖4.3.4讀DS18B20子程序圖讀時(shí)間片:單片機(jī)將數(shù)據(jù)線從高電平拉至低電平1us以上,再使數(shù)據(jù)線升為高電平,從而產(chǎn)生讀起始信號(hào)。單片機(jī)在讀時(shí)間片下降沿之后15us內(nèi)完成讀位。每個(gè)讀周期最短的持續(xù)期為60us,各個(gè)讀周期之間也必須有1us以上的高電平恢復(fù)期。如圖4-3(g)讀溫度子程序只讀出DS18B20暫存器前4個(gè)字節(jié)的數(shù)據(jù):溫度值LSB\溫度值MSB、溫度報(bào)警值TH和TL,并將它們分別存入25H~28H單元中。如圖4-3(h):圖4-3(g)讀時(shí)序示意圖圖4-3(h)寫(xiě)入DS18B20子程序流程圖4.3.5溫度計(jì)算子程序圖溫度計(jì)算子程序首先進(jìn)行溫度正負(fù)值的判定,即判斷溫度值MSB的符號(hào)位,當(dāng)符號(hào)位S=0時(shí),表示測(cè)得的溫度值為正,可以直接將二進(jìn)制轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位S=1時(shí),表示測(cè)得的溫度值為負(fù),要先將補(bǔ)碼變成原碼,再計(jì)算其十進(jìn)制值。計(jì)算時(shí)先將溫度值LSB的低四位取出,進(jìn)行小數(shù)部分?jǐn)?shù)據(jù)處理。再將溫度值LSB的高四位和溫度值MSB的低四位取出,重新組合后進(jìn)行整數(shù)部分?jǐn)?shù)據(jù)處理。如圖4-3(i):圖4-3(i)計(jì)算溫度BCD碼子程序圖5系統(tǒng)仿真5.1系統(tǒng)仿真設(shè)計(jì)圖畫(huà)好仿真圖后,點(diǎn)擊單片機(jī),將在keil中編譯成功的程序生成的hex文件導(dǎo)入單片機(jī)中,隨后點(diǎn)擊開(kāi)始。如下圖所示。藍(lán)點(diǎn)表示低電平0V,紅點(diǎn)表示高電平+5V。圖5-1系統(tǒng)仿真設(shè)計(jì)可通過(guò)溫度傳感器上的上下箭頭來(lái)設(shè)置LCD1602顯示屏上所顯示的模擬溫度5.2設(shè)置模塊按下一次設(shè)置按鍵,可進(jìn)入設(shè)置界面,上下兩項(xiàng)分為設(shè)置時(shí)間和報(bào)警溫度范圍。此時(shí)選擇光標(biāo)位于設(shè)置時(shí)間選項(xiàng)上,若設(shè)置時(shí)間則按確認(rèn)按鍵。先確定年份,使用加按鍵和減按鍵進(jìn)行設(shè)置。完成后,按下確認(rèn)按鍵進(jìn)行月份設(shè)置。按順序完成依次年、月、日、時(shí)、分、秒的設(shè)置。如下圖所示:圖5-2(a)設(shè)置界面圖5-2(b)設(shè)置界面按下二次設(shè)置按鍵則光標(biāo)下移,位于設(shè)置報(bào)警溫度范圍選項(xiàng)上。按下確認(rèn)按鍵后,先進(jìn)行溫度上限的設(shè)置,完成后按下確認(rèn)鍵進(jìn)入溫度下限設(shè)置。圖5-2(c)設(shè)置界面圖5-2(d)設(shè)置界面按下三次設(shè)置按鍵,光標(biāo)位于語(yǔ)音播報(bào)溫度頻率設(shè)置選項(xiàng)。按下確認(rèn)按鍵則會(huì)出現(xiàn)三個(gè)選項(xiàng),分別是不語(yǔ)音播報(bào)溫度、逢分鐘為0或30語(yǔ)音播報(bào)溫度一次、整點(diǎn)語(yǔ)音播報(bào)溫度一次。按下加按鍵或減按鍵移動(dòng)選項(xiàng)光標(biāo),再按一次確認(rèn)按鍵,完成設(shè)置并回到顯示界面。圖5-2(e)設(shè)置界面圖5-2(f)設(shè)置界面5.3聲光報(bào)警模塊當(dāng)溫度過(guò)高時(shí),綠色的LED燈導(dǎo)通,發(fā)出綠色的光亮。當(dāng)溫度過(guò)低時(shí),紅色的LED燈導(dǎo)通,發(fā)出紅色的光亮。不管溫度過(guò)高還是過(guò)低,只要不在其設(shè)定的溫度報(bào)警范圍。蜂鳴器都會(huì)發(fā)出聲響同時(shí)其電路中的綠色LED燈發(fā)出光亮。圖5-3(a)燈光報(bào)警仿真圖5-3(b)聲光報(bào)警仿真圖5-3(c)聲光報(bào)警仿真6軟件與硬件調(diào)試6.1PCB板圖繪制在AltiumDesigner17軟件中畫(huà)好原理圖后,給原理圖的所有器件添加封裝后,再進(jìn)行元器件自動(dòng)編號(hào),然后編譯原理圖生成PCB。生成PCB后,通過(guò)原理圖每個(gè)模塊位置的不同,設(shè)置板框大小,進(jìn)行器件布局。布局時(shí),首先從型號(hào)大和連接復(fù)雜的元器件開(kāi)始,最后再布置型號(hào)小和連接簡(jiǎn)單的元器件。在保證布局美觀的同時(shí),應(yīng)避免元器件排布密集,這樣容易給后期硬件電路的調(diào)試造成一定難度。布局完成后,再進(jìn)行PCB連線,其拉線的長(zhǎng)度不宜過(guò)長(zhǎng),過(guò)長(zhǎng)的信號(hào)線容易被干擾,提高了故障發(fā)生的機(jī)率。拐角走線時(shí),其走線角度不能是大于0度,小于或等于90度。圖6-1PCB板圖6.2實(shí)物制作將完成的PCB板圖發(fā)給專(zhuān)門(mén)廠家進(jìn)行定制綠色萬(wàn)用板,并在網(wǎng)上完成全部元器件的采購(gòu)。在拿到定制的PCB板和所需元器件后,先對(duì)元器件進(jìn)行檢查,確保元器件無(wú)損后,再進(jìn)行焊接。焊接前,先將元器件分好類(lèi),需注意含有極性的元件是否擺放正確。然后使用電烙鐵依照畫(huà)好的PCB板圖,先焊接電路連接簡(jiǎn)單的器件,再焊接電路連接復(fù)雜的器件。焊接采用的是“錫接走線法”,用焊錫將各個(gè)節(jié)點(diǎn)連接起來(lái)。這樣焊接起來(lái)的線路清晰美觀、性能穩(wěn)定。在焊接過(guò)程中,有時(shí)需利用元器件多余的引腳來(lái)跨接和跳線等,可以節(jié)約材料。焊接成功后,使用串口下載程序軟件STC,將程序下載進(jìn)去圖6-2(a)實(shí)物焊接過(guò)程圖圖6-2(b)實(shí)物焊接過(guò)程圖圖6-2(c)實(shí)物焊接過(guò)程圖圖6-3(d)實(shí)物焊接過(guò)程圖6.3實(shí)物測(cè)試實(shí)物測(cè)試分為硬件測(cè)試、軟件調(diào)試和性能測(cè)試三個(gè)步驟。對(duì)于硬件電路的測(cè)試,先使用萬(wàn)用表測(cè)量電路的電壓和電流是否正確,再測(cè)量基本元件參數(shù)是否準(zhǔn)確。隨后軟件調(diào)試前可先導(dǎo)入簡(jiǎn)單的測(cè)試程序,判斷蜂鳴器、顯示屏等器件能否正常工作。DS18B20雖然與單片機(jī)電路連接簡(jiǎn)單,但軟件調(diào)試比較嚴(yán)格,尤其是對(duì)時(shí)序的要求。性能測(cè)試時(shí),可與買(mǎi)的水銀溫度計(jì)相比較。以測(cè)試人體溫度和室溫為例,同時(shí)測(cè)量進(jìn)行比較。數(shù)字溫度計(jì)其誤差可控制在0.1℃以?xún)?nèi)。6.4程序編譯及燒錄使用編程軟件Keil4進(jìn)行C語(yǔ)言編程,編譯成功后,生成HEX文件。使用串口下載程序STC軟件,將下載線插入電腦,選定相對(duì)應(yīng)的單片機(jī)和串口,將HEX文件下載進(jìn)去。總結(jié)本文所設(shè)計(jì)的數(shù)字溫度計(jì),采用宏晶科技生產(chǎn)的STC89C52作為主控器件,DS18B20作為智能溫度傳感器采集溫度數(shù)據(jù)。其測(cè)溫范圍比較大,能滿(mǎn)足大部分應(yīng)用場(chǎng)合。精確度可達(dá)0.1℃,相比于水銀溫度計(jì)也毫不相讓。同時(shí)結(jié)合語(yǔ)音芯片NY3P035、時(shí)鐘芯片DS1302、液晶顯示器LCD1602、按鍵等器件設(shè)計(jì)的一款多功能數(shù)字溫度計(jì)。本數(shù)字溫度計(jì)不僅可以顯示當(dāng)前溫度和時(shí)間日期,還可語(yǔ)音播報(bào)當(dāng)前溫度。同時(shí)還可用按鍵設(shè)置溫度報(bào)警范圍大小,當(dāng)高于或低于此范圍時(shí),蜂鳴器和LED燈分別發(fā)出聲音和燈光。測(cè)量溫度探頭是溫度傳感器外面套了金屬套,熱量通過(guò)金屬套傳到溫度傳感器。因此本溫度計(jì)可用來(lái)測(cè)量液體溫度。盡管相較于水銀溫度計(jì)優(yōu)勢(shì)明顯,但本數(shù)字溫度計(jì)也同樣存在著缺點(diǎn)。由于使用的是液晶顯示屏LC

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論