版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 學(xué)號(hào):040608110 密級(jí):亳州職業(yè)技術(shù)學(xué)院畢業(yè)論文(設(shè)計(jì))醫(yī)用數(shù)字溫度計(jì)的設(shè)計(jì)姓 名柯 睿學(xué)科專業(yè)醫(yī)用電子儀器與維護(hù)研究方向設(shè)計(jì)指導(dǎo)教師張喜紅完成時(shí)間2010年4月3目 錄【摘要】10引言11數(shù)字溫度計(jì)的介紹12 DS18B20溫度傳感器22.1 DS18B20溫度傳感器的主要特性22.2 DS18B20的內(nèi)部結(jié)構(gòu)及工作原理23 醫(yī)用數(shù)字溫度計(jì)的設(shè)計(jì)33.1 醫(yī)用數(shù)字溫度計(jì)的設(shè)計(jì)標(biāo)準(zhǔn)與要求33.2 整體設(shè)計(jì)方案33.3 各模塊基本功能與設(shè)計(jì)方案設(shè)計(jì)與論證43.3.1 單片機(jī)最小系統(tǒng)43.3.2溫度采集模塊的設(shè)計(jì)與論證43.3.3顯示模塊的方案設(shè)計(jì)與論證53.3.4報(bào)警溫度調(diào)整按鍵73.
2、3.5 報(bào)警部分73.4 軟件設(shè)計(jì)73.4.1主程序73.4.2溫度子程序84 調(diào)試性能分析和注意事項(xiàng)84.1調(diào)試性能分析84.2 DS18B20使用中的注意事項(xiàng)8結(jié)論9【參考文獻(xiàn)】9謝 辭10附錄:11醫(yī)用數(shù)字溫度計(jì)的設(shè)計(jì)【摘要】隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活,工作,科研,各個(gè)領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù)。單片機(jī)控制無(wú)疑是人們追求的目標(biāo)之一,它所給人帶來(lái)的方便也是不可否定的,其中數(shù)字溫度計(jì)就是一個(gè)典型的例子,但人們對(duì)它的要求越來(lái)越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從數(shù)單片機(jī)技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。本設(shè)計(jì)所介紹的數(shù)字溫
3、度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對(duì)測(cè)溫比較準(zhǔn)確的場(chǎng)所,或科研實(shí)驗(yàn)室使用,該設(shè)計(jì)控制器使用單片機(jī)AT89C2051,測(cè)溫傳感器使用DS18B20,用4位共陽(yáng)極LED數(shù)碼管以串口傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示,能準(zhǔn)確達(dá)到以上要求。關(guān)鍵詞:?jiǎn)纹瑱C(jī) 數(shù)字傳感器DS18B20 顯示器LED0引言隨著單片機(jī)技術(shù)的不斷發(fā)展,單片機(jī)在日用電子產(chǎn)品中的應(yīng)用越來(lái)越廣泛,溫度傳感器DS18B20具有線性優(yōu)良、性能穩(wěn)定、靈敏度高、使用方便等優(yōu)點(diǎn),廣泛應(yīng)用在日常生活中溫度的測(cè)量和控制。傳統(tǒng)的溫度計(jì)有反應(yīng)速度慢、讀數(shù)麻煩、測(cè)量精度不高、誤差大等缺點(diǎn),本文作者利用溫度傳感
4、器DS18B20設(shè)計(jì)并制作了一款基于4位LED管顯示的醫(yī)用數(shù)字溫度計(jì),其電路簡(jiǎn)單,軟硬件結(jié)構(gòu)模塊化,易于實(shí)現(xiàn)。1數(shù)字溫度計(jì)的介紹溫度是我們?nèi)粘Ia(chǎn)和生活中實(shí)時(shí)在接觸到的物理量,但是它是看不到的,僅憑感覺(jué)只能感覺(jué)到大概的溫度值,傳統(tǒng)的指針式的溫度計(jì)雖然能指示溫度,但是精度低,使用不夠方便,顯示不夠直觀,數(shù)字溫度計(jì)的出現(xiàn)可以讓人們直觀的了解自己想知道的溫度到底是多少度。數(shù)字溫度計(jì)采用溫度敏感元件也就是溫度傳感器(如鉑電阻,熱電偶,半導(dǎo)體,熱敏電阻等),將溫度的變化轉(zhuǎn)換成電信號(hào)的變化,如電壓和電流的變化,溫度變化和電信號(hào)的變化有一定的關(guān)系,如線性關(guān)系,一定的曲線關(guān)系等,這個(gè)電信號(hào)可以使用模數(shù)轉(zhuǎn)換的電
5、路即AD轉(zhuǎn)換電路將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),數(shù)字信號(hào)再送給處理單元,如單片機(jī)或者PC機(jī)等,處理單元經(jīng)過(guò)內(nèi)部的軟件計(jì)算將這個(gè)數(shù)字信號(hào)和溫度聯(lián)系起來(lái),成為可以顯示出來(lái)的溫度數(shù)值,如25.0攝氏度,然后通過(guò)顯示單元,如LED,LCD或者電腦屏幕等顯示出來(lái)給人觀察。這樣就完成了數(shù)字溫度計(jì)的基本測(cè)溫功能。數(shù)字溫度計(jì)根據(jù)使用的傳感器的不同,AD轉(zhuǎn)換電路,及處理單元的不同,它的精度,穩(wěn)定性,測(cè)溫范圍等都有區(qū)別,這就要根據(jù)實(shí)際情況選擇符合規(guī)格的數(shù)字溫度計(jì)。2 DS18B20溫度傳感器2.1 DS18B20溫度傳感器的主要特性(1)適應(yīng)電壓范圍寬,電壓范圍:3.0-5.5V,在寄生電源方式下可以由數(shù)據(jù)線供電;(2
6、)獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通訊;(3)DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)量。(4)DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi);(5)溫度范圍-55+125,在-10+85時(shí)精度為±0.5;(6)可編程的分辨率為912位,對(duì)應(yīng)的可分辨溫度分別為0.5,0.25,0.125,0.0625,可以實(shí)現(xiàn)高精度測(cè)溫;(7)在9位分辨率時(shí)最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時(shí)最多在750ms內(nèi)把溫
7、度值轉(zhuǎn)換為數(shù)字,速度更快;(8)測(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以“一線總線”串行傳送給CPU,同時(shí)可以傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力;(9)負(fù)壓特性:電源極性接反時(shí),芯片不會(huì)因?yàn)榘l(fā)熱而燒毀,但是不能正常工作。2.2 DS18B20的內(nèi)部結(jié)構(gòu)及工作原理DS18B20的內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM,溫度傳感器,非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL,配置寄存器。DS18B20的測(cè)溫度原理如圖(Fig1)所示。圖中低溫度系數(shù)晶震的震蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器1。高溫度系數(shù)晶震隨溫度變化其震蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和
8、溫度積存器被預(yù)置在-55所對(duì)應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器1對(duì)低溫度系數(shù)晶震產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,計(jì)數(shù)器1的預(yù)制將重新被裝入,計(jì)數(shù)器1重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行技術(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值就是所測(cè)溫度。斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。LSB置位/清除斜率累加器高溫度系數(shù)晶振預(yù)置比較低溫度系數(shù)晶振計(jì)數(shù)器 1預(yù)置加1停止溫度寄存器計(jì)數(shù)器 2=0Fig1 DS18B20測(cè)溫原理框圖3 醫(yī)用數(shù)字溫度計(jì)的設(shè)計(jì)3.1 醫(yī)用數(shù)字溫度計(jì)的設(shè)計(jì)標(biāo)準(zhǔn)與
9、要求1、基本范圍-501102、精度誤差小于0.53、LED數(shù)碼直讀顯示3.2 整體設(shè)計(jì)方案按照系統(tǒng)設(shè)計(jì)功能的要求,確定系統(tǒng)由4個(gè)模塊組成:溫度檢測(cè)部分、按鍵控制部分、報(bào)警部分和顯示電路。溫度計(jì)電路設(shè)計(jì)總體設(shè)計(jì)方框圖如圖(Fig2)所示:溫度檢測(cè)部分按鍵部分AT89C2051單片機(jī)控制器報(bào)警部分LED顯示部分掃描驅(qū)動(dòng)電路Fig2總體設(shè)計(jì)方框圖3.3 各模塊基本功能與設(shè)計(jì)方案設(shè)計(jì)與論證系統(tǒng)由單片機(jī)最小系統(tǒng)、顯示電路、按鍵部分、溫度傳感器等組成,下面我就各個(gè)模塊進(jìn)行逐個(gè)介紹。3.3.1 單片機(jī)最小系統(tǒng)單片機(jī)ATC89C2051 具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)
10、計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。晶振采用11.0592MHZ。復(fù)位電路采用上電加按鈕復(fù)位。單片機(jī)最小系統(tǒng)的硬件連接如圖(Fig3)所示:Fig3 片機(jī)最小系統(tǒng)3.3.2溫度采集模塊的設(shè)計(jì)與論證(1)方案一 采用二極管做溫度傳感器晶體二極管或三極管的PN結(jié)的結(jié)電壓是隨溫度而變化的。例如硅管的PN結(jié)的結(jié)電壓在溫度每升高1時(shí),下降-2mV,利用這種特性,一般可以直接采用二極管(如玻璃封裝的開(kāi)關(guān)二極管1N4148)或采用硅三極管(可將集電極和基極短接)接成二極管來(lái)做PN結(jié)溫度傳感器。這種傳感器有較好的線性,尺寸小,其熱時(shí)間常數(shù)為0.22秒,靈敏度高。測(cè)溫范圍為-50+150
11、。典型的溫度曲線如圖1所示。同型號(hào)的二極管或三極管特性不完全相同,因此它們的互換性較差。(2)方案二 采用LM35做溫度傳感器LM35是一種得到廣泛使用的溫度傳感器。在使用單一電源時(shí),LM35的一個(gè)缺點(diǎn)是無(wú)法指示低至零度的溫度。據(jù)稱利用LM35可測(cè)出20mV的電壓,這一值相當(dāng)于2(一些情況下甚至可測(cè)出02mV的電壓?。?,但要指示零度或更低的溫度時(shí),最好還是再提供一個(gè)負(fù)電源和一只下拉電阻。(3)方案三 采用可編程器件DS18B20做溫度傳感器DS18B20數(shù)字溫度計(jì)是DALLAS公司生產(chǎn)的1Wire,即單總線器件,具有線路簡(jiǎn)單,體積小的特點(diǎn)。因此用它來(lái)組成一個(gè)測(cè)溫系統(tǒng),具有線路簡(jiǎn)單,在一根通信線
12、,可以掛很多這樣的數(shù)字溫度計(jì),十分方便。 從以上三種方案,很容易看出,采用方案三,電路比較簡(jiǎn)單,軟件設(shè)計(jì)也比較簡(jiǎn)單,故采用了方案。DS18B20 可以采用兩種方式供電,一種是采用電源供電方式,此時(shí)DS18B20 的1 腳接地,2 腳作為信號(hào)線,3 腳接電源。為保證在有效的DS18B20 時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)MOSFET 管來(lái)完成對(duì)總線的上拉。當(dāng)DS18B20 處于寫(xiě)存儲(chǔ)器操作和溫度A/D 轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開(kāi)啟時(shí)間最大為10us。采用寄生電源供電方式時(shí)VDD 端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。其硬件連接如圖(Fig4)所示:Fig4 溫度
13、傳感器電路3.3.3顯示模塊的方案設(shè)計(jì)與論證(1)方案一:采用液晶顯示液晶顯示器(lcd)是現(xiàn)在非常普遍的顯示器。它具有體積小、重量輕、省電、輻射低、易于攜帶等優(yōu)點(diǎn)。液晶顯示器(lcd)的原理與陰極射線管顯示器(crt)大不相同。lcd是基于液晶電光效應(yīng)的顯示器件。包括段顯示方式的字符段顯示器件;矩陣顯示方式的字符、圖形、圖像顯示器件;矩陣顯示方式的大屏幕液晶投影電視液晶屏等。液晶顯示器的工作原理是利用液晶的物理特性,在通電時(shí)導(dǎo)通,使液晶排列變得有秩序,使光線容易通過(guò);不通電時(shí),排列則變得混亂,阻止光線通過(guò)。也僅顯示雖然方便,但是顯示亮度不夠,比較模糊,而且需要軟件對(duì)其進(jìn)行驅(qū)動(dòng)。方案二:采用L
14、ED數(shù)碼管進(jìn)行顯示LED數(shù)碼管根據(jù)LED的接法不同分為共陰和共陽(yáng)兩類,以共陰式為例,如把陰極接地,在相應(yīng)段的陽(yáng)極接上正電源,該段即會(huì)發(fā)光。當(dāng)然,LED的電流通常較小,一般均需在回路中接上限流電阻。假如我們將"b"和"c"段接上正電源,其它端接地或懸空,那么"b"和"c"段發(fā)光,此時(shí),數(shù)碼管顯示將顯示數(shù)字“1”。而將"a"、"b"、"d"、"e"和"g"段都接上正電源,其它引腳懸空,此時(shí)數(shù)碼管將顯示“2”。數(shù)碼管不僅價(jià)
15、格便宜而且容易驅(qū)動(dòng),亮度好且比較穩(wěn)定。其管腳圖如圖(Fig5)所示: rdebcgaFig5 數(shù)碼管引腳圖顯示電路采用4 位共陰極LED 數(shù)碼管,P0 口由上拉電阻提高驅(qū)動(dòng)能力,作為段碼輸出并作為數(shù)碼管的驅(qū)動(dòng)。P2 口的低四位作為數(shù)碼管的位選端。采用動(dòng)態(tài)掃描的方式顯示。具體的硬件連接如圖(Fig6)所示:Fig6 顯示電路3.3.4報(bào)警溫度調(diào)整按鍵本系統(tǒng)設(shè)計(jì)三個(gè)按鍵,采用查詢方式,一個(gè)用于選擇切換設(shè)置報(bào)警溫度和當(dāng)前溫度,另外兩個(gè)分別用于設(shè)置報(bào)警溫度的加和減。均采用軟件消抖。硬件連接如圖(Fig7)所示:Fig7 按鍵電路3.3.5 報(bào)警部分本系統(tǒng)提供蜂鳴器、發(fā)光二極管電路,當(dāng)溫度超過(guò)設(shè)置警戒溫
16、度時(shí),聲光報(bào)警。具體的硬件連接如圖(Fig8)所示:Fig8 聲光報(bào)警電路3.4 軟件設(shè)計(jì)3.4.1主程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫(xiě)。其程序流程圖如圖(Fig9)所示: 3.4.2溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫(xiě)。其程序流程圖如圖(Fig10)所示 4 調(diào)試性能分析和注意事項(xiàng)4.1調(diào)試性能分析 系統(tǒng)的調(diào)試以程序?yàn)橹?。硬件調(diào)試比較簡(jiǎn)單,首先檢查電路的焊接是否正確,然后可用萬(wàn)用表測(cè)試或通電檢測(cè)。軟件調(diào)試可以先編寫(xiě)顯示程序并進(jìn)行硬件的正確性檢
17、驗(yàn)。由于DS18B20與單片機(jī)采用串行數(shù)據(jù)傳送,因此,對(duì)DS18B20進(jìn)行編程時(shí)必須嚴(yán)格地保證讀寫(xiě)時(shí)序,否則無(wú)法讀取測(cè)量結(jié)果。 性能測(cè)試可用制作的溫度計(jì)和已有的成品溫度計(jì)來(lái)同事測(cè)量比較,由于DS18B20的精確度很高,所以誤差指標(biāo)可以限制在0.1以內(nèi),另外-55+125的測(cè)量范圍使用得該溫度計(jì)完全適合醫(yī)用的標(biāo)準(zhǔn)。4.2 DS18B20使用中的注意事項(xiàng) DS18B20溫度計(jì)還可以在高溫報(bào)警、遠(yuǎn)距離多點(diǎn)控制等方面開(kāi)發(fā)應(yīng)用,但在實(shí)際應(yīng)用中也應(yīng)該注意以下幾方面的問(wèn)題:(1)DS18B20從測(cè)量溫度結(jié)束到將溫度值轉(zhuǎn)換成數(shù)字量需要一定的轉(zhuǎn)換時(shí)間,這是必須保證的,不然會(huì)出現(xiàn)轉(zhuǎn)換錯(cuò)誤的現(xiàn)象,使溫度輸出總是顯示
18、85。(2)在實(shí)際使用中發(fā)現(xiàn),應(yīng)使電源電壓保持在5V左右,若電源電壓過(guò)低,會(huì)使所測(cè)得的溫度與實(shí)際溫度出現(xiàn)偏高現(xiàn)象,經(jīng)過(guò)試驗(yàn)發(fā)現(xiàn),一般在5V左右。(3)在DS18B20的有有關(guān)資料中未提及單總線上所掛DS18B20數(shù)量問(wèn)題,容易使人誤認(rèn)為可以掛任意多個(gè)DS18B20,在實(shí)際應(yīng)用中并非如此,當(dāng)單總線上所掛DS18B20超過(guò)8個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問(wèn)題,這一點(diǎn)在進(jìn)行多點(diǎn)測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)需要加以注意。(4)在DS18B20測(cè)溫程序設(shè)計(jì)中,向DS18B20發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待DS18B20的返回信號(hào)旦某個(gè)DS18B20接觸不好或短線,當(dāng)程序讀DS18B20時(shí),將沒(méi)有返回信號(hào),程序進(jìn)
19、入死循環(huán),這一點(diǎn)在進(jìn)行DS18B20硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。結(jié)論本文設(shè)計(jì)的數(shù)字溫度計(jì)能測(cè)量-55+125的溫度值,用LED顯示實(shí)際測(cè)量的溫度值。本設(shè)計(jì)預(yù)想可以顯示-55+125范圍的溫度值,可實(shí)現(xiàn)溫度檢測(cè),溫度報(bào)警等多種功能的醫(yī)用數(shù)字溫度計(jì)。由于時(shí)間關(guān)系,有的功能未能實(shí)現(xiàn),有待進(jìn)一步提高。用DS18B20溫度傳感器設(shè)計(jì)數(shù)字溫度計(jì),應(yīng)該注意的問(wèn)題:DS18B20三線制應(yīng)用時(shí),應(yīng)將VDD、DQ、GND三線焊接牢固:兩線應(yīng)用時(shí),應(yīng)將其的VDD與GND接在一起,焊接牢固,若VDD脫開(kāi)未接,只顯示+85.0的溫度值。以DS18B20溫度傳感器的醫(yī)用數(shù)字溫度計(jì)線路簡(jiǎn)單、應(yīng)減少、成本低廉、軟
20、件設(shè)計(jì)簡(jiǎn)單等優(yōu)點(diǎn),有著廣闊的應(yīng)用前景?!緟⒖嘉墨I(xiàn)】1 閻石,數(shù)字電子技術(shù)基礎(chǔ).高等教育出版社,20062 王衛(wèi)東,模擬電子電路基礎(chǔ)M.西安:西安電子科技大學(xué)出版社,20033 曹丙霞,趙艷華.PROTEL 99SE原理圖與PCB設(shè)計(jì).電子工業(yè)出版社,20074 李群芳,張士軍,黃建.單片機(jī)微型計(jì)算機(jī)與接口技術(shù).電子工業(yè)出版社,20085 趙世強(qiáng),電子電路EDA技術(shù)M.西安:西安電子科技大學(xué)出版社,20006 郭天祥,新概念51單片機(jī)C語(yǔ)言教程.電子工業(yè)出版社,20097 張?jiān)?張炎,趙延軍. 基于DS18B20 溫度傳感器的數(shù)字溫度計(jì)J,微電子學(xué),2007 ,37 (5) :26 288 張萍
21、, 基于數(shù)字溫度計(jì)DS18B20 的溫度測(cè)量?jī)x的開(kāi)發(fā)J ,自動(dòng)化儀表,2007 (6) :6466謝 辭 走的最快的總是時(shí)間,來(lái)不及感嘆,大學(xué)生活已近尾聲,三年多的努力與付出,隨著本次論文的完成,將要?jiǎng)澫峦昝赖木涮?hào)。本論文設(shè)計(jì)在劉苗老師的悉心指導(dǎo)和嚴(yán)格要求下業(yè)已完成,從課題選擇到具體的寫(xiě)作過(guò)程,論文初稿與定稿無(wú)不凝聚著張喜紅老師的心血和汗水,在我的畢業(yè)設(shè)計(jì)期間,劉苗老師為我提供了種種專業(yè)知識(shí)上的指導(dǎo)和一些富于創(chuàng)造性的建議,沒(méi)有這樣的幫助和關(guān)懷和熏陶,我不會(huì)這么順利的完成畢業(yè)設(shè)計(jì)。在此向劉苗老師表示深深的感謝和崇高的敬意!在臨近畢業(yè)之際,我還要借此機(jī)會(huì)向在這三年中給予我諸多教誨和幫助的各位老師表
22、示由衷的謝意,感謝他們?nèi)陙?lái)的辛勤栽培。不積跬步何以至千里,各位任課老師認(rèn)真負(fù)責(zé),在他們的悉心幫助和支持下,我能夠很好的掌握和運(yùn)用專業(yè)知識(shí),并在設(shè)計(jì)中得以體現(xiàn),順利完成畢業(yè)論文。同時(shí),在論文寫(xiě)作過(guò)程中,我還參考了有關(guān)的書(shū)籍和論文,在這里一并向有關(guān)的作者表示謝意。 最后,祝愿所有的老師,同學(xué)們,身體健康,工作順利。 附錄:程序源代碼#include "reg51.h"#include "intrins.h" /_nop_();延時(shí)函數(shù)用#define dm P0 /段碼輸出口#define uchar unsigned char#define uint u
23、nsigned intsbit DQ=P27; /溫度輸入口sbit w0=P20; /數(shù)碼管4sbit w1=P21; /數(shù)碼管3sbit w2=P22; /數(shù)碼管2sbit w3=P23; /數(shù)碼管1sbit beep=P17; /蜂鳴器和指示燈sbit set=P26; /溫度設(shè)置切換鍵sbit add=P24; /溫度加sbit dec=P25; /溫度減int temp1=0; /顯示當(dāng)前溫度和設(shè)置溫度的標(biāo)志位為0 時(shí)顯示當(dāng)前溫度uint h;uint temp;uchar r;uchar high=35,low=20;uchar sign;uchar q=0;uchar tt=0;
24、uchar scale;/*溫度小數(shù)部分用查表法*/uchar code ditab16= 0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09;/小數(shù)段碼表uchar code table_dm13= 0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09,0xff,0xfd,0x00;/共陽(yáng)LED 段碼表"0" "1" "2" "3" "4"
25、"5" "6" "7" "8" "9" "不亮" "-" "全亮"uchar code table_dm1= 0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef; /個(gè)位帶小數(shù)點(diǎn)的段碼表uchar data temp_data2=0x00,0x00; /讀出溫度暫放uchar data display5=0x00,0x00,0x00,0x00,0x00; /顯示單元數(shù)據(jù),共4 個(gè)數(shù)據(jù)和一個(gè)
26、運(yùn)算暫用/*11us 延時(shí)函數(shù)*/void delay(uint t)for (;t>0;t-);void scan()int j;for(j=0;j<4;j+)switch (j)case 0: dm=table_dmdisplay0;w0=0;delay(50);w0=1;/xiaoshucase 1: dm=table_dm1display1;w1=0;delay(50);w1=1;/geweicase 2: dm=table_dmdisplay2;w2=0;delay(50);w2=1;/shiweicase 3: dm=table_dmdisplay3;w3=0;dela
27、y(50);w3=1;/baiwei/ elsedm=table_dmb3;w3=0;delay(50);w3=1;/*DS18B20 復(fù)位函數(shù)*/ow_reset(void)char presence=1;while(presence)while(presence)DQ=1;_nop_();_nop_();/從高拉倒低DQ=0;delay(50); /550 usDQ=1;delay(6); /66 uspresence=DQ; /presence=0 復(fù)位成功,繼續(xù)下一步delay(45); /延時(shí)500 uspresence=DQ;DQ=1; /拉高電平/*DS18B20 寫(xiě)命令函數(shù)*/
28、向1-WIRE 總線上寫(xiě)1 個(gè)字節(jié)void write_byte(uchar val)uchar i;for(i=8;i>0;i-)DQ=1;_nop_();_nop_(); /從高拉倒低DQ=0;_nop_();_nop_();_nop_();_nop_(); /5 usDQ=val&0x01; /最低位移出delay(6); /66 usval=val/2; /右移1 位DQ=1;delay(1);/*DS18B20 讀1 字節(jié)函數(shù)*/從總線上取1 個(gè)字節(jié)uchar read_byte(void)uchar i;uchar value=0;for(i=8;i>0;i-)
29、DQ=1;_nop_();_nop_();value>>=1;DQ=0;_nop_();_nop_();_nop_();_nop_(); /4 usDQ=1;_nop_();_nop_();_nop_();_nop_(); /4 usif(DQ)value|=0x80;delay(6); /66 usDQ=1;return(value);/*讀出溫度函數(shù)*/read_temp()ow_reset(); /總線復(fù)位delay(200);write_byte(0xcc); /發(fā)命令write_byte(0x44); /發(fā)轉(zhuǎn)換命令ow_reset();delay(1);write_byt
30、e(0xcc); /發(fā)命令write_byte(0xbe);temp_data0=read_byte(); /讀溫度值的第字節(jié)temp_data1=read_byte(); /讀溫度值的高字節(jié)temp=temp_data1;temp<<=8;temp=temp|temp_data0; / 兩字節(jié)合成一個(gè)整型變量。return temp; /返回溫度值/*溫度數(shù)據(jù)處理函數(shù)*/二進(jìn)制高字節(jié)的低半字節(jié)和低字節(jié)的高半字節(jié)組成一字節(jié),這個(gè)/字節(jié)的二進(jìn)制轉(zhuǎn)換為十進(jìn)制后,就是溫度值的百、十、個(gè)位值,而剩/下的低字節(jié)的低半字節(jié)轉(zhuǎn)化成十進(jìn)制后,就是溫度值的小數(shù)部分/*/work_temp(uint
31、tem)uchar n=0;if(tem>6348) / 溫度值正負(fù)判斷tem=65536-tem;n=1; / 負(fù)溫度求補(bǔ)碼,標(biāo)志位置1display4=tem&0x0f; / 取小數(shù)部分的值display0=ditabdisplay4; / 存入小數(shù)部分顯示值display4=tem>>4; / 取中間八位,即整數(shù)部分的值display3=display4/100; / 取百位數(shù)據(jù)暫存display1=display4%100; / 取后兩位數(shù)據(jù)暫存display2=display1/10; / 取十位數(shù)據(jù)暫存display1=display1%10; /個(gè)位數(shù)據(jù)r=display1+display2*10+display3*100;/符號(hào)位顯示判斷/if(!display3)display3=0x0a; /最高位為0 時(shí)不顯示if(!display2)display2=0x0a; /次高位為0 時(shí)不顯示if(n)display3=0x0b; /負(fù)溫度時(shí)最高
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 一年級(jí)上冊(cè)20以內(nèi)的所有加減法計(jì)算題
- 廣東省中山市2024年中考一模數(shù)學(xué)試卷含答案
- 荊州學(xué)院《非線性系統(tǒng)理論與設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 遼寧城市建設(shè)職業(yè)技術(shù)學(xué)院《互換性與技術(shù)測(cè)量D》2023-2024學(xué)年第一學(xué)期期末試卷
- 黃岡職業(yè)技術(shù)學(xué)院《材料科學(xué)基礎(chǔ)B(二)》2023-2024學(xué)年第一學(xué)期期末試卷
- 【物理】第九章壓強(qiáng) 固體壓強(qiáng) 練習(xí) 2024-2025學(xué)年人教版物理八年級(jí)下學(xué)期
- 黑龍江冰雪體育職業(yè)學(xué)院《獸醫(yī)寄生蟲(chóng)病學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 重慶三峽職業(yè)學(xué)院《標(biāo)志與符號(hào)設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 重慶城市管理職業(yè)學(xué)院《粉體科學(xué)與工程實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 浙江育英職業(yè)技術(shù)學(xué)院《衛(wèi)生微生物學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 中藥的性能四氣五味課件
- 三晶8000B系列變頻器說(shuō)明書(shū)
- 幽默動(dòng)感年會(huì)互動(dòng)PPT演示模板
- 麒麟小學(xué)創(chuàng)建五好關(guān)工委工作實(shí)施方案
- 地化錄井技術(shù)在油田勘探開(kāi)發(fā)中的應(yīng)用-李斌
- GB/T 23315-2009粘扣帶
- GB/T 10228-2015干式電力變壓器技術(shù)參數(shù)和要求
- 2休閑食品市場(chǎng)營(yíng)銷策劃案1
- 全國(guó)高校第三輪學(xué)科評(píng)估按大學(xué)匯總
- 社區(qū)衛(wèi)生服務(wù)中心裝飾施工組織設(shè)計(jì)(86頁(yè))
- 送達(dá)地址確認(rèn)書(shū)(法院最新版)
評(píng)論
0/150
提交評(píng)論