溫度計(jì)畢業(yè)論文.pdf_第1頁
溫度計(jì)畢業(yè)論文.pdf_第2頁
溫度計(jì)畢業(yè)論文.pdf_第3頁
溫度計(jì)畢業(yè)論文.pdf_第4頁
溫度計(jì)畢業(yè)論文.pdf_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第 1 頁共 36 頁 摘 要 20 世紀(jì)末,隨著計(jì)算機(jī)科學(xué)的發(fā)展,計(jì)算機(jī)已深入地滲透到我們的生活中,要想學(xué)好溫度測(cè)控,只有扎扎實(shí)實(shí)的把單片機(jī)知識(shí)學(xué)好,因?yàn)闇囟葴y(cè)控是基于單片機(jī)知識(shí)的。今天,我們的生活環(huán)境和工作環(huán)境有越來越多稱之為單片機(jī)的小電腦在為我們服務(wù),單片機(jī)在工業(yè)控制,尖端武器,通信設(shè)備,信息處理,家用電器等各測(cè),控領(lǐng)域的應(yīng)用中獨(dú)占鰲頭。時(shí)下,家用電器和辦公設(shè)備的智能化,遙控化,模糊控制化已成為世界潮流,而這些高性能無一不是靠單片機(jī)來實(shí)現(xiàn)的,同時(shí)在使用單片機(jī)的前提下我們也還要用到 A/D 數(shù)模轉(zhuǎn)換。我們作為21 世紀(jì)的大學(xué)生 必須具備單片機(jī)知識(shí)?,F(xiàn)在隨著社會(huì)對(duì)人才素質(zhì)要求的不斷提高,我們也要不斷的充實(shí)自己,以適應(yīng)社會(huì)的發(fā)展。 關(guān)鍵詞: 單片機(jī) DS18B20 傳感器 Abstract 20 centurys ends, along with the computer science development, the computer thoroughly seeped to in ours life, must want to learn the temperature observati on and control, only then is solid learns the monolithic integrated circuit knowledge, because the temperature observati on and control is based on he monolithic integrated circuit knowledge. Today, our living conditions and the working conditions have more and more called it in serves the 第 2 頁共 36 頁 2 monolithic integrated circuit small computer for us, the monolithic integrated circuit in the industry control, the state-of-art weapon, the communicati on facility, the information processing, the domestic electric appliances and so on measured respectively, controls the domain in the application to lead he field. Present, domestic electric appliances and office equipment intellectualization, remote control, the fuzzy control has become the trends in the world, but these high performances do not have one are not depend on, at the same time in uses the monolithic integrated circuit which the monolithic integrated circuit realizes under the premise we also to have to use to A/D digital-analog conversion. We took 21st century the university student must have the monolithic integrated circuit knowledge. Now along with the society to the talented person quality request unceasing enhancement, we also wants unceasingly to enrich oneself, by adapts societys development. Key word: MCU DS18B20 sensor 第 3 頁共 36 頁 3 目 錄 前 言 .4 功能說明 . . .5 一 總體設(shè)計(jì)方案 .6 二 電路原理圖 . .7 三 MCS-51 系列單片機(jī)簡(jiǎn)介 .8 四 溫度傳感器 DS1820 簡(jiǎn)介 .18 五 軟件編程 .24 致 謝 .34 心得體會(huì) .35 參考文獻(xiàn) .36 第 4 頁共 36 頁 4 前 言 隨著人們生活水平的不斷提高 ,單片機(jī) 控制無疑是 人們追求的目標(biāo)之一 ,它所給人帶來的方便也是不可否定的, 。溫度測(cè)控技術(shù)也在各個(gè)領(lǐng)域應(yīng)用越來越廣泛 , 同時(shí)溫度測(cè)量也被人們所異常關(guān)注,一時(shí)間涌現(xiàn)出大量各式各樣的測(cè)試溫度儀器,這些儀器的原理到底是怎樣的呢?說到底也是屬于溫度測(cè)控的 范疇, 其中數(shù)字溫度計(jì)就是一個(gè)典型的例子,但人們對(duì)它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從數(shù)單片機(jī)技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。 本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對(duì)測(cè)溫比較準(zhǔn) 確的場(chǎng)所,或科研實(shí)驗(yàn)室使用,測(cè)溫傳感器使用 DS18B20,用 3 位共陽極 LED 數(shù)碼管以串口傳送數(shù)據(jù) ,實(shí)現(xiàn)溫度顯示 ,能準(zhǔn)確達(dá)到以上要求。 第 5 頁共 36 頁 5 功能說明 ( 1) 將 AD590 作為室溫度傳感器,當(dāng)溫度變化時(shí), AD590 會(huì)產(chǎn)生電流的變化,經(jīng) OPA1 將電流轉(zhuǎn)換為電壓,由 OPA2 作為零為調(diào)整,最后由 OPA3 反相放大 10 倍。 ( 2) ADCO804 輸出最大轉(zhuǎn)換值 =FFH( 255)。 OPA3 為放大 10 倍時(shí) 。 則本電路最大測(cè)量溫度為;最大顯示溫度為 5.1/10V=0.51V,即51 C( 10 為放大倍數(shù))。 255X=51,知 X=0.2,即先乘 2 再除 10。 FF 255 255 2 510, R4=0.5 R3=10。即 D4=0, D3=5, D2=1,D1=0,本電路顯示器只取 D3、 D2 兩位數(shù)。 ( 3) 按下 P2.1 按鈕,放開后立即進(jìn)入溫度設(shè)定模式,顯示設(shè)定最高溫度為 34 C(建立在 TABLE 內(nèi))每按一次設(shè)定溫度將減少 1 C,直至最低溫度 20 C,再按一次回到 34 C。 ( 4) 當(dāng)室溫高于設(shè)定溫度,壓縮機(jī)( P3.0)運(yùn)轉(zhuǎn),使室溫降低,當(dāng)室溫低于設(shè)定值時(shí),壓縮機(jī)停止運(yùn)行。 ( 5) 當(dāng)進(jìn)入設(shè)定溫度模式,如末按下設(shè)定按鈕( P2.1)經(jīng)數(shù)秒 后自動(dòng)解除設(shè)定模式,回到室溫顯示模式。 ( 6) 本程序以計(jì)時(shí)中斷,每 50ms 中斷一次,比較室溫一次,而令壓縮機(jī)運(yùn)轉(zhuǎn)和停止。 第 6 頁共 36 頁 6 一 總體設(shè)計(jì)方案 1 1 數(shù)字溫度計(jì)設(shè)計(jì)方案論證 考慮到用溫度傳感器,在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器,所以這是非常容易想到的,所以可以采用一只溫度傳感器DS18B20,此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,就可以滿足設(shè)計(jì)要求 。 1 2 方案的總體設(shè)計(jì)框圖 溫度計(jì)電路設(shè)計(jì)總體設(shè)計(jì)方框圖如圖 1 所示,控制器采用單片機(jī)AT89S51,溫度傳感器采用 DS18B20, 用 3 位 LED 數(shù)碼管以串口傳送數(shù)據(jù)實(shí)現(xiàn)溫度顯示。 圖 1 總體設(shè)計(jì)方框圖 主 控 制 器 LED顯 示 溫 度 傳 感 器 單片機(jī)復(fù)位 時(shí)鐘振蕩 報(bào)警點(diǎn)按 鍵調(diào)整 第 7 頁共 36 頁 7 二 電路原理圖 第 8 頁共 36 頁 8 三 MCS-51 系列單片機(jī)簡(jiǎn)介 MCS-51 系列單片機(jī)研制于 1980 年,由 Intel 公司所開發(fā),其結(jié)構(gòu)是 8048 的延伸,改進(jìn)了 8048 的缺點(diǎn),其 ROM、 RAM 都可擴(kuò)充至 64KB,也增添了如乘( MUL)、除( DIV)、減( SUBB)、比較( CJNE)、棧入( PUSH)、棧出( POP)、 16 位數(shù)據(jù)指針、布爾代數(shù)運(yùn)算等指令,以及串行通信能力和 5 個(gè)中斷源。 8052 有 6 個(gè)中斷源, MCS-51 系列單片機(jī)存儲(chǔ)器容量如表(二)所示。 MCS-51 系列單片機(jī)特點(diǎn)如下: 、專為控制應(yīng)用所設(shè)計(jì)的八位 、具有布爾代數(shù)的運(yùn)算能力 、條雙項(xiàng)且可被獨(dú)立尋址的口 、芯片內(nèi)有字節(jié)可供存儲(chǔ)數(shù)據(jù)的(:字節(jié)) 、內(nèi)部有兩組位定時(shí)器(有個(gè)) 、具有全多工傳輸信號(hào) 、個(gè)中斷源,且具有兩級(jí)(高低)優(yōu)先權(quán)順序的中斷結(jié)構(gòu) 、芯片內(nèi)有()的程序存儲(chǔ)器() 、芯片內(nèi)有時(shí)鐘()振蕩器電路 、程序存儲(chǔ)器可擴(kuò)展至() 、數(shù)據(jù)存儲(chǔ)器可擴(kuò)展至() 第 9 頁共 36 頁 9 表(二) MCS-51 系列單片機(jī) ROM 及 RAM 容量(字節(jié)) 型號(hào) 8031 8051 8751 8032 8052 8752 ROM 0 4K 0 0 8K 0 RAM 128 128 128 256 256 256 EPROM 0 0 4K 0 0 8K 、:工廠燒寫型,內(nèi)含 、:一次燒寫型,內(nèi)含 、:可重復(fù)燒寫型,內(nèi)含 、:省電型(低消耗功率) 、時(shí)鐘電路引腳 單片機(jī)的時(shí)鐘可以由內(nèi)部方式和外部方式產(chǎn)生,(腳)和(腳)即為單片機(jī)的兩個(gè)時(shí)鐘引腳。 ()內(nèi)時(shí)鐘引腳 單片機(jī)片內(nèi)有振蕩電路,只需在和間外接石英晶體和電容組成的并聯(lián)振蕩電路(晶振器),晶體可以在固有頻率 . z 的晶振器之間任選晶體,電容可以在 p的電容之間任選,通常選擇 p的瓷 片電容 。在單片機(jī)控制的數(shù)字顯示溫度計(jì)電路設(shè)計(jì)的這個(gè)部 第 10 頁共 36 頁 10 分,就是采用內(nèi)時(shí)鐘引腳,其中晶振器為 6MHz,兩個(gè)電容均為 30pF。 ()外時(shí)鐘方式 ,接地,接外部振蕩器。由于端的電平不是電平,故接一個(gè)上拉電阻。外部振蕩器的頻率應(yīng)低于 z。 、控制信號(hào)引腳 () pd(腳):復(fù)位信號(hào)備用電源引腳 當(dāng)輸入的復(fù)位信號(hào)延續(xù)個(gè)機(jī)器周期以上,高電平即為有效,用以完成單片機(jī)的復(fù)位操作。復(fù)位后影響片內(nèi)特殊功能寄存器的狀態(tài),但不影響片內(nèi)狀態(tài)。 同一引腳的 pd 是備用電源輸入端( pd 接備用電源)。在 cc 斷電時(shí),為保證中的信息不丟失,可使此引腳完成掉電保護(hù)功能。 ()非(腳);地址鎖存允許信號(hào)編程脈沖輸入端 在系統(tǒng)擴(kuò)展時(shí),用于控制把口輸出的低 位地址送入鎖存器鎖存起來,以實(shí)現(xiàn)低位地址和數(shù)據(jù)的分時(shí)傳送。此外由于是以晶振頻率的固定頻率輸出的正脈沖,因此可作為外邊時(shí)鐘或外部定時(shí)脈沖使用。 對(duì)片內(nèi)帶有 kbyte的編寫固化程序時(shí),非作為編程脈沖輸入端。 ()非(引腳):外邊程序存儲(chǔ)器讀選通信號(hào) 為低電平有效,在訪問片外程序存儲(chǔ)器時(shí),此引腳端輸 第 11 頁共 36 頁 11 出負(fù)脈沖作為讀片外程序存儲(chǔ)器的選通信號(hào),以實(shí)現(xiàn)外部單元的讀操作。要檢查上電平后能否正常到程序存儲(chǔ)器中讀取指令碼,可以用示波器 觀察引腳非有無脈沖輸出,若有說明正常。 ()非 pp(腳):內(nèi)部和外部程序存儲(chǔ)器選擇信號(hào) 當(dāng)引腳接高電平時(shí),只訪問片內(nèi) kbyte 的,執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令,但在程序計(jì)數(shù)器計(jì)數(shù)超過時(shí)(即地址大于 kbyte 時(shí)),將自動(dòng)轉(zhuǎn)向執(zhí)行片外大于 kbyte程序存儲(chǔ)器內(nèi)的程序。 若非引腳接低電平時(shí),只訪問外部程序存儲(chǔ)器,而不管片內(nèi)是否有程序存儲(chǔ)器。對(duì)于單片機(jī)(片內(nèi)無)需外擴(kuò),故必須將非引腳接地。 在對(duì)編寫 固化程序時(shí),需對(duì)此引腳施加的編程電壓。 3、 I/O(輸入 /輸出)接口引腳 ( 1)并行 I/O 接口的特點(diǎn) MCS-51 有 4 個(gè) 8 位并行 I/O 接口 P0P3,他們都是雙向端口,可以進(jìn)行輸入或者輸出操作,每個(gè)口都有口鎖存器和口驅(qū)動(dòng)器兩部分組成。此外,它還有一個(gè)全雙工串行通信口。這 4 個(gè)端口為 MCS-51 與外圍器件或外圍設(shè)備進(jìn)行信息(數(shù)據(jù)、地址、控制信號(hào))交換提供了多功能的輸入 /輸出通道,也為 MCS-51 擴(kuò)展外部功能、構(gòu)成應(yīng)用系統(tǒng) 第 12 頁共 36 頁 12 提供了必要的條件。 它們的特點(diǎn)如下: a、 4 個(gè)并行 I/O 接口都是雙向的。 P0 口為漏極開路, P1、 P2、P3 口均具有內(nèi)部上拉電阻,它們有時(shí)被稱為準(zhǔn)雙向口。 b、 4 個(gè)并行口的 32 條 I/O 接口線都可以獨(dú)立地用于輸入或輸出操作。 c、當(dāng) 4 個(gè)并行口的 I/O 接口線有作輸入操作時(shí),必須對(duì)該口的鎖存器進(jìn)行寫 1 操作,以保證從 I/O 接口線輸入數(shù)據(jù)的正確性,這也是 4 個(gè)并行接口有時(shí)被稱為“準(zhǔn)”雙向的含義。 ( 2) I/O 接口電路功能匯總 MCS-51 單片機(jī)內(nèi)部屬單總線結(jié)構(gòu),因此使系統(tǒng)在結(jié)構(gòu)上增加了靈活性。通過總線,用戶可根據(jù)應(yīng)用需要進(jìn)行多功能的系統(tǒng)擴(kuò)展, 構(gòu)成用戶的實(shí)際應(yīng)用系統(tǒng)。 MCS-51 系列中的 8031 單片機(jī),因其內(nèi)部在結(jié)構(gòu)上無程序存儲(chǔ)器,所以它的應(yīng)用系統(tǒng)必定為一個(gè)擴(kuò)展的系統(tǒng)。因此,MCS-51 的 4 個(gè)并行 I/O 接口中的 P0、 P2、 P3口基本上都具備有這兩項(xiàng)功能。 a、 P0 口: P0 口的內(nèi)部一位結(jié)構(gòu)如圖(三 3)所示。 P0 口是一個(gè)多功能口除可以作為通用的輸入 /輸出口外,還具備用于系統(tǒng)擴(kuò)展的第二功能。在 MCS-51 的進(jìn)行系統(tǒng)擴(kuò)展時(shí),它作為地址 /數(shù)據(jù)總線口。通過外接地址鎖存器, MCS-51 的內(nèi)部單總線可從 P0 口被擴(kuò)展成8 位的數(shù)據(jù)總線和 16 位地址總線的 低 8 位。在實(shí)際應(yīng)用中, P0 口先送出外部存儲(chǔ)器 16 位地址中的低 8 位至地址鎖存器鎖存,然后再由P0 口進(jìn)行 8 位數(shù)據(jù)的輸入或輸出。 第 13 頁共 36 頁 13 b、 P1 口: P1 口作為通用 I/O 接口,它的每一位都可以別編程為通用 I/O 接口線。 c、 P2 口: P2 口也是一個(gè)多功能口,與 P0 口相似,它除可被用作 I/O 接口外,在進(jìn)行系統(tǒng)擴(kuò)展時(shí),還可以輸 16 位地址總線中的高 8位,和 P0 口共同構(gòu)成 16 位的地址總線。當(dāng)然,在 P0 口和 P2 口用作地址 /數(shù)據(jù)總線時(shí),它們都不能再作為通用 I/O 接口。 d、 P3 口: P3 口也是一個(gè)多功能口,除可以作為通用 I/O 接口外,還具有多種控制功能,為通用 I/O 接口時(shí)和 MCS-51 其他具有控制功能的輸入 /輸出引線在一起,共同形成 MCS-51 的控制總線。 P3 口在作為第二功能(控制功能)使用時(shí),它的每一位功能定義如表(三 2)所示 Vcc 地址 /數(shù)據(jù) 控制端 C 讀鎖存器控制 & T1 1 1 P0.i 內(nèi)部總線 D 鎖 Q CP 存 Q T2 寫入脈沖 Z 2 讀引腳控制 圖(三 3) P0 口內(nèi)部一位結(jié)構(gòu)圖 第 14 頁共 36 頁 14 一個(gè)信號(hào)引腳,既是第一功能又是第二功能,在使用時(shí)也不會(huì)引起混亂和造成錯(cuò)誤,理由如下: a、對(duì)于各種型號(hào)的芯片,其功能的第一功能信號(hào)是相同的,所不同的只在引腳的的第二功能信號(hào)上。 b、對(duì)于 9、 30 和 31 各引腳,由于第一功能信號(hào)與第二功能信號(hào)是單片機(jī)在不同工作方式下的信號(hào),因此不會(huì)發(fā)生使用上的矛盾。 c、 P3 口線的情況卻有所不同,它的第二功能信號(hào)都是單片機(jī)的重要控制信號(hào)。因此在實(shí)際使用時(shí),總是先按需要優(yōu)先選用它的 二功能,剩下不用的才作為口線使用。 表(三 2) P3 口線的第二功能 口線 第二功能 信號(hào)名稱 P3.0 RXD 串行數(shù)據(jù)接收 P3.1 TXD 串行數(shù)據(jù)發(fā)送 P3.2 INT0 外部中斷 0 申請(qǐng) P3.3 INT1 外部中斷 1 申請(qǐng) P3.4 T0 定時(shí) 器 /計(jì)數(shù)器 0 計(jì)數(shù)輸入 P3.5 T1 定時(shí)器 /計(jì)數(shù)器 1 計(jì)數(shù)輸入 P3.6 WR 外部 RAM 寫選通 P3.7 RD 外部 RAM 讀選通 d、引腳表現(xiàn)出的是單片機(jī)的外特性或硬件特性,在硬件方面用 第 15 頁共 36 頁 15 戶只能使用引腳,即通過引腳組建系統(tǒng)。因此熟悉引腳是我們?cè)O(shè)計(jì)數(shù)字顯示溫度計(jì)的重要內(nèi)容。 4、 MCS-51 單片機(jī)的復(fù)位方式和復(fù)位電路 ( 1)復(fù)位操作 復(fù)位是單片機(jī)的初始化操作,其主要功能是把 PC 初始化為0000H,使單片機(jī)從 0000H 單元開始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或者操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需按復(fù)位鍵以重新啟動(dòng)。 ( 1) 復(fù)位操作還對(duì)單片機(jī)的個(gè)別引腳信號(hào)有影響,例如把 ALE和 PSEN 非信號(hào)變?yōu)闊o效狀態(tài),即 ALE=0, PSEN=1。 ( 2)復(fù)位信號(hào)及其產(chǎn)生 RST 引腳是復(fù)位信號(hào)的輸入端,復(fù)位信號(hào)是高電平有效,其有效時(shí)間持續(xù) 24 個(gè)振蕩脈沖周期(即 2 個(gè)機(jī)器周期)以上,若使用頻率為6MHz 的晶振, 則復(fù)位信號(hào)持續(xù)時(shí)間應(yīng)超過 4us 才能完成復(fù)位操作。 產(chǎn)生復(fù)位信號(hào)的電路邏輯如圖(三 4)所示。 RST/VPD 復(fù)位電路 D2 施密特觸發(fā)器 D1 Vcc 片內(nèi) RAM Vss 第 16 頁共 36 頁 16 圖(三 4) 復(fù)位電路邏輯圖 整個(gè)復(fù)位電路包括芯片內(nèi)外兩部 分。外部電路產(chǎn)生的復(fù)位信號(hào)( RST)送施密特觸發(fā)器,再由片內(nèi)復(fù)位電路在每個(gè)機(jī)器周期的 S5P2時(shí)刻對(duì)施密特觸發(fā)器的輸出進(jìn)行采樣。然后才得到內(nèi)部復(fù)位操作所需要的信號(hào)。 ( 3)復(fù)位方式 復(fù)位操作有上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位兩種方式。上電自動(dòng)復(fù)位是通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的,在單片機(jī)控制的數(shù)字顯示溫度計(jì)電路設(shè)計(jì)中的單片機(jī)復(fù)位就是這種方式,其中電容 C 為22uF,電阻 R 為 1k 歐姆,其電路圖如圖(三 5a)所示。 這樣,只要電源 Vcc( +5V)的上升時(shí)間不超過 1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù) 位,即接通電源就完成了系統(tǒng)的復(fù)位初始化。 按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。其中按鍵電平復(fù)位是通過使復(fù)位端經(jīng)電阻與 Vcc 電源接通而實(shí)現(xiàn)的,其電路圖如圖(三 5b)所示。而按鍵復(fù)位脈沖復(fù)位則是利用 RC 微分電路產(chǎn)生的正脈沖來實(shí)現(xiàn)的。 上述電路圖中的電阻電容參數(shù)適宜于 6MHz 晶振,能保證復(fù)位信號(hào)高電平持續(xù)時(shí)間大于 2 個(gè)機(jī)器周期。 第 17 頁共 36 頁 17 Vcc 80C51 Vcc 80C51 Vcc RESET Vcc R1 C + 200 C + 22 F RST/VPD 22 F RST/VPD R 1K R2 1K Vss Vss (a) 上電復(fù)位 ( b) 按鍵電平復(fù)位 5 顯示溫度值的 LED 顯示器接口介紹 LED 顯示器是單片機(jī)應(yīng)用系統(tǒng)中常用的廉價(jià)輸出設(shè)備。它是由若干個(gè)發(fā)光二極管組成的,當(dāng)發(fā)光二極管導(dǎo)通時(shí),相應(yīng)一個(gè)筆畫劃發(fā)光,控制某段發(fā)光二極管導(dǎo)通,就能顯示出某個(gè)數(shù)碼或字符,常用八段 LED顯示器有兩種結(jié)構(gòu),如圖(四 1)所示。 圖(四 1) 八段 LED 顯示器的結(jié)構(gòu) 第 18 頁共 36 頁 18 在靜態(tài)顯示系統(tǒng)中,每位顯示器都應(yīng)有各自的鎖存器、譯碼器(若采用軟件譯碼,譯碼器可省去)與驅(qū)動(dòng)器,用以鎖存各自待顯示數(shù)字的 BCD 碼或字段碼。因此,靜態(tài)顯示系統(tǒng)在每一次顯示輸出后能夠保持顯示不變,僅在待顯示數(shù)字需要改變時(shí),才更新其數(shù)字顯示鎖存器中的內(nèi)容。這種顯示占用 CPU 的時(shí)間少,顯示穩(wěn)定可靠。缺點(diǎn)是,當(dāng)顯示的位數(shù)較多時(shí),占用的 I/O 口較多。 在動(dòng)態(tài)顯示的系統(tǒng)中, CPU 需定時(shí)地對(duì)每位 LED 顯示器進(jìn)行掃描,每位 LED 顯示器分時(shí)輪流工作,每次只能使一位 LED 顯示,但由于人的視覺暫留現(xiàn) 象,仍感覺所有的 LED 顯示器都在同時(shí)顯示。這種顯示的優(yōu)點(diǎn)是使用硬件少,占用 I/O 口少。缺點(diǎn)是占用 CPU 時(shí)間長(zhǎng),只要不執(zhí)行顯示程序,就立刻停止顯示。但隨著大規(guī)模集成電路的發(fā)展,目前已有能自動(dòng)對(duì)顯示器進(jìn)行掃描的專用顯示芯片,使電路既簡(jiǎn)單又占用 CPU 時(shí)間。在我們所設(shè)計(jì)的溫度計(jì)中數(shù)碼管顯示就是利用的動(dòng)態(tài)顯示。 四 溫度傳感器 DS1820 介紹 ( 一) DS1820 芯片簡(jiǎn)介: 在傳統(tǒng)的模擬信號(hào)遠(yuǎn)距離溫度測(cè)量系統(tǒng)中,需要很好的解決引線誤差補(bǔ)償問題、多點(diǎn)測(cè)量切換誤差問題和放大電路零點(diǎn)漂移誤差問題等技術(shù)問 題,才能夠達(dá)到較高的測(cè)量精度。我們?cè)跒槟乘娬鹃_發(fā)水輪發(fā)電機(jī)組軸瓦溫度實(shí)時(shí)監(jiān)測(cè)系統(tǒng)時(shí),為了克服上面提到的三個(gè)問題,采用了新型數(shù)字 溫度傳感器 DS1820,在對(duì)其測(cè)溫原理進(jìn) 第 19 頁共 36 頁 19 行詳細(xì)分析的基礎(chǔ)上,提出了提高 DS1820測(cè)量精度的方法,使 DS1820的測(cè)量精度由 0.5提高到 0.1以上,取得了良好的測(cè)溫效果。 DS1820 簡(jiǎn)介 DS1820 是美國(guó) DALLAS 半導(dǎo)體 公司生產(chǎn)的可組網(wǎng)數(shù)字式溫度傳感器,在其內(nèi)部使用了在板( ON-B0ARD)專利技術(shù)。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。與其它溫度傳感器相比, DS1820 具有以下特性: ( 1)獨(dú)特的單線接口方式, DS1820 在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與 DS1820 的雙向通訊。 ( 2) DS1820 支持多點(diǎn)組網(wǎng)功能,多個(gè) DS1820 可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)多點(diǎn)測(cè)溫。 ( 3) DS1820 在使用中不需要任何外圍元件。 ( 4)溫范圍 55 125,固有測(cè)溫分辨率 0.5。 ( 5)測(cè)量結(jié)果以 9 位數(shù)字量方式串行傳送。 第 20 頁共 36 頁 20 2 DS1820 內(nèi)部結(jié)構(gòu)框圖如圖 1 所示。 DS1820 測(cè) 溫原理如圖 2 所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器 1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器 2的脈沖輸入。計(jì)數(shù)器 1 和溫度寄存器被預(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 重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器 2 計(jì)數(shù)到 0 時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫 度。圖 2 中的斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修 第 21 頁共 36 頁 21 正計(jì)數(shù)器 1 的預(yù)置值。 在正常測(cè)溫情況下, DS1820 的測(cè)溫分辯率為 0.5以 9 位數(shù)據(jù)格式表示,其中最低有效位( LSB)由比較器進(jìn)行 0.25比較,當(dāng)計(jì)數(shù)器 1 中的余值轉(zhuǎn)化成溫度后低于 0.25時(shí),清除溫度寄存器的最低位( LSB),當(dāng)計(jì)數(shù)器 1 中的余值轉(zhuǎn)化成溫度后高于 0.25,置位溫度寄存器的最低位( LSB),如 25.5對(duì)應(yīng)的 9 位數(shù)據(jù)格式如下: 3 提高 DS1820 測(cè)溫精度的途徑 ( 1) DS1820 高精度測(cè)溫的理論依據(jù) DS1820 正常使用時(shí)的測(cè)溫分辨率為 0.5,這對(duì)于水輪發(fā)電機(jī)組軸瓦溫度監(jiān)測(cè)來講略顯不足,在對(duì) DS1820 測(cè)溫原理詳細(xì)分析的基礎(chǔ)上,我們采取直接讀取 DS1820 內(nèi)部暫存寄存器的方法,將DS1820 的測(cè)溫分辨率提高到 0.1 0.01 第 22 頁共 36 頁 22 DS1820 內(nèi)部暫存寄存器的分布如表 1 所示,其中第 7 字節(jié)存放的是當(dāng)溫度寄存器 停止增值時(shí)計(jì)數(shù)器 1 的計(jì)數(shù)剩余值,第 8 字節(jié)存放的是每度所對(duì)應(yīng)的計(jì)數(shù)值,這樣,我們就可以通過下面的方法獲得高分辨率的溫度測(cè)量結(jié)果。首先用 DS1820 提供的讀暫存寄存器指令 (BEH)讀出以 0.5為分辨率的溫度測(cè)量結(jié)果,然后切去測(cè)量結(jié)果中的最低有效位 (LSB),得到所測(cè)實(shí)際溫度整數(shù)部分 T整數(shù),然后再用 BEH 指令讀取計(jì)數(shù)器 1 的計(jì)數(shù)剩余值 M 剩余和每度計(jì)數(shù)值 M 每度,考慮到 DS1820 測(cè)量溫度的整數(shù)部分以 0.25、0.75為進(jìn)位界限的關(guān)系,實(shí)際溫度 T 實(shí)際可用下式計(jì)算得到: T 實(shí)際 =(T 整數(shù) 0.25 )+(M 每度 M 剩余 )/M 每度 ( 2) 測(cè)量數(shù)據(jù)比較 表 2 為采用直接讀取測(cè)溫結(jié)果方法和采用計(jì)算方法得到的測(cè)溫?cái)?shù)據(jù)比較,通過比較可以看出,計(jì)算方法在 DS1820 測(cè)溫中不僅是可 行的,也可以大大的提高 DS1820 的測(cè)溫分辨率。 第 23 頁共 36 頁 23 4 DS1820 使用中注意事項(xiàng) DS1820 雖然具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問題: (1) 較小的硬件開銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS1820 與微處理器間采用串行數(shù)據(jù)傳送,因此,在對(duì) DS1820 進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測(cè)溫結(jié)果。在使用 PL/M、 C 等高級(jí)語言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì) DS1820 操作部分最好采用匯編語言實(shí)現(xiàn)。 (2) 在 DS1820 的有關(guān)資料中均未提及單總線上所掛 DS1820 數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個(gè) DS1820,在實(shí)際應(yīng)用中并非如此。當(dāng)單總線上所掛 DS1820 超過 8 個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問題,這一點(diǎn)在進(jìn)行多點(diǎn)測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要加以注意。 ( 3)連接 DS1820 的總線 電纜 是有長(zhǎng)度限制的。試驗(yàn)中,當(dāng)采用普通信號(hào)電纜傳輸長(zhǎng)度超過 50m時(shí),讀取的測(cè)溫?cái)?shù)據(jù)將發(fā)生錯(cuò)誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時(shí),正常通訊距離可達(dá) 150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時(shí),正常通訊距離進(jìn)一步加長(zhǎng)。這種情況主要是由總線分布電容使信號(hào)波形產(chǎn)生畸變?cè)斐傻?。因此,在?DS1820 進(jìn)行長(zhǎng)距離測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要充分考慮總線分布電容和阻抗匹配問題。 第 24 頁共 36 頁 24 (4) 在 DS1820 測(cè)溫程序設(shè)計(jì)中,向 DS1820 發(fā)出溫度轉(zhuǎn)換命令 后,程序總要等待 DS1820 的返回信號(hào),一旦某個(gè) DS1820 接觸不好或 斷線,當(dāng)程序讀該 DS1820 時(shí),將沒有返回信號(hào),程序進(jìn)入 死循環(huán)。這一點(diǎn)在進(jìn)行 DS1820 硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。 五 軟件編程 1 溫度控制流程圖 Y N 開始 溫度零下 ? 溫度值取補(bǔ)碼置“ ”標(biāo)志 計(jì)算小數(shù)位溫度 BCD 值 計(jì)算整數(shù)位溫度 BCD 值 置“ +”標(biāo)志 溫度數(shù)據(jù)移入顯示寄存器 十位數(shù) 0? 百位數(shù) 0? 十位數(shù)顯示符號(hào)百位數(shù)不顯示 百位數(shù)顯示數(shù)據(jù)(不顯示符號(hào)) 結(jié)束 N N Y Y 第 25 頁共 36 頁 25 2 電路程序 ;6M 晶體 89c51 temphead equ 40h display_data1_reg data 30h display_data2_reg data 31h display_data3_reg data 32h display_long_reg data 33h led1_bit bit p3.0 led2_bit bit p3.1 led3_bit bit p3.2 time1sok bit 01H TEMPONE0K BIT 02H wiredogcs bit p3.7 ;TIAOSHI_LONG DATA 21H ;TIAOSHI_DATA DATA 22H templ data 34h temph data 35h temphc data 36h templc data 37h tempdin bit p2.0 ORG 0000H LJMP START ORG 000BH AJMP LED ORG 0030H start: MOV sp,#60H mov tmod,#21H mov pcon,#00H mov scon,#01010000b mov th1,#243 mov tl1,#243 MOV TH0,#0FCH MOV TL0,#18H SETB TR0 setb tr1 第 26 頁共 36 頁 26 SETB ET0 mov display_long_reg,#00h SETB EA MAIN: CLR TEMPONE0K MAIN1: LCALL DLY_1S JNB TEMPONE0K,MAIN2 clr ea LCALL READTEMP1 setb ea LCALL CONVTEMP MAIN2: clr ea LCALL READTEMP setb ea setb TEMPONE0K AJMP MAIN1 ;* ; DS1820 復(fù)位 ;* INITDS1820: SETB TEMPDIN NOP NOP CLR TEMPDIN MOV R6,#0A0H DJNZ R6,$ MOV R6,#0A0H DJNZ R6,$ SETB TEMPDIN MOV R6,#32H DJNZ R6,$ MOV R6,#3CH LOOP1820: MOV C,TEMPDIN JC INITDS1820OUT DJNZ R6,LOOP1820 MOV R6,#64H DJNZ R6,$ SJMP INITDS1820 RET 第 27 頁共 36 頁 27 INITDS1820OUT: SETB TEMPDIN RET ;* ; 讀 DS1820 的數(shù)據(jù) ;入口條件:數(shù)據(jù)存放在 ACC 中 ;* READDS1820: MOV R7,#08H SETB TEMPDIN NOP NOP READDS1820LOOP: CLR TEMPDIN NOP NOP NOP SETB TEMPDIN MOV R6,#07H DJNZ R6,$ MOV C,TEMPDIN MOV R6,#3CH DJNZ R6,$ RRC A SETB TEMPDIN DJNZ R7,READDS1820LOOP MOV R6,#3CH DJNZ R6,$ RET * ; 寫 DS1820 的數(shù)據(jù) ;出口條件:數(shù)據(jù)存放在 ACC 中 ;* WRITEDS1820: MOV R7,#08H SETB TEMPDIN NOP NOP WRITEDS1820LOP: CLR TEMPDIN MOV R6,#07H DJNZ R6,$ 第 28 頁共 36 頁 28 RRC A MOV TEMPDIN,C MOV R6,#34H DJNZ R6,$ SETB TEMPDIN DJNZ R7,WRITEDS1820LOP RET ;* ; 啟動(dòng)溫度轉(zhuǎn)換 ;* READTEMP: LCALL INITDS1820 MOV A,#0CCH LCALL WRITEDS1820 MOV R6,#34H DJNZ R6,$ MOV A,#44H LCALL WRITEDS1820 MOV R6,#34H DJNZ R6,$ RET ;* ; 讀取轉(zhuǎn)換后的溫度值 ;* READTEMP1: LCALL INITDS1820 MOV A,#0CCH LCALL WRITEDS1820 MOV R6,#34H DJNZ R6,$ MOV A,#0BEH LCALL WRITEDS1820 MOV R6,#34H DJNZ R6,$ MOV R5,#09H MOV R0,#TEMPHEAD MOV B,#00H READTEMP2: LCALL READDS1820 MOV R0,A 第 29 頁共 36 頁 29 INC R0 READTEMP21: LCALL CRC8CAL DJNZ R5,READTEMP2 MOV A,B JNZ READTEMPOUT MOV R1,#TEMPHEAD MOV A,R1 MOV TEMPL,A INC R1 MOV A,R1 MOV TEMPH,A READTEMPOUT: RET ;* ; 處理溫度 BCD 碼程序 ;* CONVTEMP: MOV A,TEMPH ANL A,#80H JZ TEMPC1 ;判斷是否為負(fù)數(shù) CLR C MOV A,TEMPL CPL A ADD A,#01H MOV TEMPL,A MOV A,TEMPH CPL A ADDC A,#00H MOV TEMPH,A MOV TEMPHC,#0BH SJMP TEMPC11 TEMPC1: MOV TEMPHC,#0AH TEMPC11: MOV A,TEMPHC SWAP A MOV TEMPHC,A MOV A,TEMPL ANL A,#0FH MOV DPTR,#TEMPDOTTAB MOVC A,A+DPTR 第 30 頁共 36 頁 30 MOV TEMPLC,A MOV A,TEMPL ANL A,#0F0H SWAP A MOV TEMPL,A MOV A,TEMPH ANL A,#0FH SWAP A ORL A,TEMPL LCALL HEX2BCD1 MOV TEMPL,A ANL A,#0F0H SWAP A ORL A,TEMPHC MOV TEMPHC,A MOV A,TEMPL ANL A,#0FH SWAP A ORL A,TEMPLC MOV TEMPLC,A MOV A,R7 JZ TEMPC12 ANL A,#0FH SWAP A MOV R7,A MOV A,TEMPHC ANL A,#0FH ORL A,R7 MOV TEMPHC,A TEMPC12: RET TEMPDOTTAB: DB 00H,01H,01H,02H,03H,03H,04H,04H,05H,06H DB 06H,07H,08H,08H,09H,09H ;* ; CRC 校驗(yàn)程序 ;* CRC8CAL: PUSH ACC MOV R7,#08H 第 31 頁共 36 頁 31 CRC8LOOP1: XRL A,B RRC A MOV A,B JNC CRC8LOOP2 XRL A,#18H CRC8LOOP2: RRC A MOV B,A POP ACC RR A PUSH ACC DJNZ R7,CRC8LOOP1 POP ACC RET ;* ; 單字節(jié) 16 進(jìn)制轉(zhuǎn)換 BCD ;入口條件:數(shù)據(jù)存放在 ACC 中 ;出口條件:數(shù)據(jù)存放在 ACC 中 ;* HEX2BCD1: MOV B,#64H DIV AB MOV R7,A MOV A,#0AH XCH A,B DIV AB SWAP A ORL A,B RET ;* ; 1S 延時(shí)程序 ;* DLY_1S: PUSH PSW SETB RS0 MOV R7,#10 DLY_1S_1: MOV R6,#200 clr wiredogcs ;喂狗 setb wiredogcs DLY_1S_2: MOV R5,#250 第 32 頁共 36 頁 32 DJNZ R5,$ DJNZ R6,DLY_1S_2 DJNZ R7,DLY_1S_1 POP PSW RET ;* ; 數(shù)碼管顯示程序 ;* ;* ; LED ;入口條件:輸入數(shù)據(jù)放入 ACC ;輸出:轉(zhuǎn)換后的數(shù)據(jù)保存顯示器緩沖區(qū)中中 ;影響數(shù)據(jù): ACC ;* LED: push acc push dph push dpl mov th0,#0fch mov tl0,#66h mov dptr,#led_tab_1 mov a,display_long_reg inc display_long_reg rl a jmp a+dptr led_tab_1: ajmp led1 ajmp led2 ajmp led3 led1: setb led1_bit setb led2

溫馨提示

  • 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)論