版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、本科畢業(yè)設(shè)計(jì)(論文)本科畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的溫度計(jì)硬件系統(tǒng)開發(fā)設(shè)計(jì)基于單片機(jī)的溫度計(jì)硬件系統(tǒng)開發(fā)設(shè)計(jì) 20102010 年年 6 6 月月摘摘 要要隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活,工作,科研,各個(gè)領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù)。本文介紹了一種以單片機(jī)為主要控制器件,以ds18b20 為溫度傳感器的新型數(shù)字溫度計(jì),本溫度計(jì)屬于多功能溫度計(jì),可以設(shè)置上下限報(bào)警溫度,當(dāng)溫度不在設(shè)置范圍內(nèi)時(shí),可以報(bào)警。系統(tǒng)主要包括硬件電路的設(shè)計(jì)和系統(tǒng)程序的設(shè)計(jì)。硬件電路主要包括主控制器,測溫電路和顯示電路等,主控制器采用單片機(jī) stc89c52,溫度傳感器采用美國 dallas 半導(dǎo)體公
2、司生產(chǎn)的 ds18b20,顯示電路采用 4 位共陰極 led 數(shù)碼管以動(dòng)態(tài)掃描法直讀顯示。系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計(jì)算溫度子程序,顯示數(shù)據(jù)刷新子程序,報(bào)警溫度設(shè)置子程序等。由于采用了改進(jìn)型智能溫度傳感器 ds18b20 作為檢測元件,與傳統(tǒng)的溫度計(jì)相比,本數(shù)字溫度計(jì)減少了外部的硬件電路,具有低成本和易使用的特點(diǎn)。ds18b20 溫度計(jì)還可以在高溫報(bào)警、遠(yuǎn)距離多點(diǎn)測溫控制等方面進(jìn)行應(yīng)用開發(fā),具有很好的發(fā)展前景。 關(guān)鍵詞:關(guān)鍵詞:單片機(jī),數(shù)字控制,ds18b20,stc89c52,數(shù)字溫度計(jì) abstractwith the progress and devel
3、opment, single-chip technology has spread to our lives, work, research in various fields has become a relatively mature technology. the paper introduced one kind of new digital thermometer that take the microcontroller unit as the primary control component and take ds18b20 as the temperature sensor,
4、the thermometer are multi-purpose thermometer, you can set upper and lower temperature alarm, when the temperature range is not set, it could be reported . the system mainly included the design of the hardware electric circuit and the design of the system program . the hardware electric circuit main
5、ly included the master controller, the temperature measured electric circuit and the display circuit and so on, the master controller used microcontroller unit stc89c52, the temperature sensor used ds18b20 which the american dallas semiconductor company produces, the display circuit used 4 altogethe
6、r common cathode led numerical tube by the dynamic scanning method straight to read the demonstration. the system program mainly included the master routine, the read-out temperature subroutine, the temperature transformation order subroutine, the calculated temperature subroutine,demonstrated the d
7、ata renovates subroutine, alarm temperature setting subroutine and so on.because used the advanced version intelligence temperature sensor ds18b20 as the examine part, compared with the traditional thermometer, this digital thermometer reduced the exterior hardware electric circuit, has characterist
8、ic that the low cost and was easy to use. the ds18b20 thermometer also may used to the high temperature warning, the long-distance range multi- spots temperature measured aspect and so on temperature control carries on the application development, has the very good prospects for development.key word
9、s: microcontroller unit, digital control, ds18b20, stc89c52, digital thermometer目目 錄錄1緒論.11.1軟件編程 keil51 的簡介.21.2硬件電路設(shè)計(jì) proteus 的簡介.21.3設(shè)計(jì)中用到的所有電子器件.22總體設(shè)計(jì)方案.32.1設(shè)計(jì)要求.32.2數(shù)字溫度計(jì)設(shè)計(jì)方案論證.32.3總體設(shè)計(jì)框圖.53系統(tǒng)硬件電路組成及工作原理.63.1ds18b20 溫度傳感器與單片機(jī)的接口電路.63.2ds18b20 的使用方法.113.3stc89 系列高性能單片機(jī).123.47 段 led 數(shù)碼管電路及原理.143
10、.5溫度報(bào)警電路.153.6系統(tǒng)整體硬件電路.164系統(tǒng)軟件程序設(shè)計(jì).184.1主程序.184.2讀取溫度子程序.194.3溫度轉(zhuǎn)換命令子程序.204.4計(jì)算溫度子程序.214.5顯示數(shù)據(jù)刷新子程序.224.6溫度報(bào)警子程序.235系統(tǒng)總體調(diào)試.245.1硬件調(diào)試.245.1.1 排除邏輯故障.245.1.2 排除元器件失效.245.1.3 排除電源故障.245.2軟件調(diào)試.256設(shè)計(jì)總結(jié)與體會(huì).276.1設(shè)計(jì)總結(jié).276.2畢業(yè)設(shè)計(jì)心得體會(huì).28參 考 文 獻(xiàn).29致 謝.30附錄 a 程序源代碼.31附錄 b 元器件清單.411緒論緒論溫度是一種最基本的環(huán)境參數(shù),人民的生活與環(huán)境的溫度息息
11、相關(guān),在工業(yè)生產(chǎn)過程中要實(shí)時(shí)測量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開溫度的測量,因此研究溫度的測量方法和裝置具有重要意義。在單片機(jī)的應(yīng)用中,一個(gè)很重要的應(yīng)用就是對(duì)溫度進(jìn)行檢測。測量溫度的關(guān)鍵是溫度傳感器,采用智能溫度傳感器以實(shí)現(xiàn)溫度數(shù)字化,既能以數(shù)字形式直接輸出被測溫度值,具有測量誤差小,分辨率高,抗干擾能力強(qiáng),能夠遠(yuǎn)程傳輸數(shù)據(jù),帶串行總線接口等優(yōu)點(diǎn)。溫度的數(shù)字輸出顯示在 7 段 led 數(shù)碼管顯示器上。單片機(jī)、溫度傳感器與 7 段數(shù)碼管顯示器等電子器件的互聯(lián),可以研制和開發(fā)出具有高性價(jià)比的新一代測溫系統(tǒng)基于單片機(jī)的數(shù)字溫度計(jì)。基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì),即對(duì)溫度進(jìn)行實(shí)時(shí)測量,使用單線數(shù)字溫度傳感器 d
12、s18b20 把溫度信號(hào)直接轉(zhuǎn)換成數(shù)字信號(hào)輸入單片機(jī)。經(jīng)單片機(jī)處理后,將實(shí)時(shí)溫度顯示在四個(gè) 7 段 led 數(shù)碼管顯示器上。隨著人們生活水平的不斷提高,單片機(jī)控制無疑是人們追求的目標(biāo)之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計(jì)就是一個(gè)典型的例子,但人們對(duì)它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從單片機(jī)技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。由于甲型 h1n1 流感入境,所以為了把好關(guān),需對(duì)流動(dòng)人口進(jìn)行人體體溫測量。由于溫度傳感器 ds18b20 具有獨(dú)特的單總線接口僅需要一個(gè)端口引腳進(jìn)行通信,可實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能,零待機(jī)功耗,電壓范圍僅為 3
13、.05.5v 而且具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確的特點(diǎn),最主要的是用戶可定義報(bào)警設(shè)置,報(bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件),那么只要檢測到溫度超過設(shè)定的正常人體體溫就會(huì)發(fā)出報(bào)警,這樣就能更有效的防止流感的擴(kuò)散。出于對(duì)此問題的探索,我通過上網(wǎng)查閱及相關(guān)資料的收集,做了本設(shè)計(jì)。本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確,其輸出溫度采用 led 數(shù)碼管顯示,主要用于對(duì)測溫比較準(zhǔn)確的場所,該設(shè)計(jì)控制器使用單片機(jī) stc89c52,測溫傳感器使用 ds18b20,用 4 位共陰極 led 數(shù)碼管以串口傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示,能準(zhǔn)確達(dá)到以上要求。完
14、成本設(shè)計(jì)需要軟件編程和硬件電路設(shè)計(jì),需要用到兩種軟件。1.11.1 軟件編程軟件編程 keil51 的簡介的簡介軟件編程用 keil software 公司提供的產(chǎn)品軟件 uvision3 ide,它集項(xiàng)目管理、編譯工具、代碼編寫工具、代碼調(diào)試以及仿真于一體,適合個(gè)人開發(fā)或人數(shù)少、多開發(fā)過程的管理還不成熟的開發(fā)團(tuán)體,這一軟件簡單易用。1.21.2 硬件電路設(shè)計(jì)硬件電路設(shè)計(jì) proteus 的簡介的簡介硬件電路設(shè)計(jì)使用英國 lab center electronics 公司推出的 proteus 用于仿真單片機(jī)及其外圍設(shè)備的 eda 工具軟件。proteus 具有高級(jí)原理布圖(isis)、混合模
15、式仿真(prospice)、pcb 設(shè)計(jì)以及自動(dòng)布線(ares)等功能。proteus 的虛擬仿真技術(shù)(usm)第一次真正實(shí)現(xiàn)了在物理原型出來之前對(duì)單片機(jī)應(yīng)用系統(tǒng)進(jìn)行設(shè)計(jì)開發(fā)和測試。keil51 與 proteus 配合使用可以在不需要硬件投入的情況下,完成單片機(jī)匯編語言、c 語言等應(yīng)用系統(tǒng)的仿真開發(fā),從而縮短實(shí)際系統(tǒng)的研發(fā)周期,降低開發(fā)成本。1.31.3 設(shè)計(jì)中用到的所有電子器件設(shè)計(jì)中用到的所有電子器件單片機(jī)(stc89c52)、溫度傳感器(ds18b20)、7 段 led 數(shù)碼管、晶振、排阻、電容、電阻、蜂鳴器、發(fā)光二極管、按鍵、npn 型三極管等。2總體設(shè)計(jì)方案總體設(shè)計(jì)方案2.12.1
16、設(shè)計(jì)要求設(shè)計(jì)要求(1)穩(wěn)定測量范圍-55125,溫度顯示范圍-9.999.9;(2)測量精度可達(dá)到 0.1;(3)四位共陰七段 led 數(shù)碼管顯示;(4)可以任意設(shè)定溫度的上下限報(bào)警功能,當(dāng)下限報(bào)警溫度設(shè)置為 0時(shí),下限報(bào)警功能失效。2.22.2 數(shù)字溫度計(jì)設(shè)計(jì)方案論證數(shù)字溫度計(jì)設(shè)計(jì)方案論證方案一:采用模擬集成溫度傳感器集成傳感器是采用硅半導(dǎo)體集成工藝而制成的,因此亦稱硅傳感器或單片集成溫度傳感器,它是將溫度傳感器集成在一個(gè)芯片上、可完成溫度測量及模擬信號(hào)輸出功能的專用 ic。模擬集成溫度傳感器的主要特點(diǎn)是功能單一(僅測量溫度)、測溫誤差小、價(jià)格低、響應(yīng)速度快、傳輸距離遠(yuǎn)、體積小、微功耗等,適
17、合遠(yuǎn)距離測溫、控溫,不需要進(jìn)行非線性校準(zhǔn),外圍電路比較復(fù)雜。 圖 2.1 是 ad590 用于測量熱力學(xué)溫度的基本應(yīng)用電路。因?yàn)榱鬟^ ad590 的電流與熱力學(xué)溫度成正比,當(dāng)電阻 r1 和電位器 r2的電阻之和為 1k 時(shí),輸出電壓 v0隨溫度的變化為 1mv/k。但由于 ad590 的增益有偏差,電阻也有誤差,因此應(yīng)對(duì)電路進(jìn)行調(diào)整。調(diào)整的方法為:把 ad590 放于冰水混合物中,調(diào)整電位器 r2,使 v0=273.2mv。或在室溫下(25)條件下調(diào)整電位器,使v0=273.2+25=298.2(mv)。但這樣調(diào)整只可保證在 0或 25附近有較高精度。ad590 把被測溫度轉(zhuǎn)換為電流再通過放大
18、器和 a/d 轉(zhuǎn)換器,輸出數(shù)字量送給單片機(jī)進(jìn)行溫度控制。這種設(shè)計(jì)需要用到 a/d 轉(zhuǎn)換電路,感溫電路比較麻煩,而且測量精度比較低。圖 2.1 基于 ad590 測溫基本應(yīng)用電路方案二:采用數(shù)字單片智能溫度傳感器智能溫度傳感器(亦稱數(shù)字溫度傳感器)是微電子技術(shù)、計(jì)算機(jī)技術(shù)和自動(dòng)測試技術(shù)(ate)的結(jié)晶。目前,已開發(fā)出多種智能溫度傳感器系列產(chǎn)品。智能溫度傳感器內(nèi)部都包含溫度傳感器、a/d 轉(zhuǎn)換器、信號(hào)處理器、存儲(chǔ)器(或寄存器)和接口電路。有的產(chǎn)品還帶多路選擇器、中央控制器(cpu)、隨機(jī)存取存儲(chǔ)器(ram)和只讀存儲(chǔ)器(rom)。智能溫度傳感器的特點(diǎn)是能輸出溫度數(shù)據(jù)及相關(guān)的溫度控制量,適配各種微控
19、制器(mcu)。智能溫度傳感器的總線技術(shù)也實(shí)現(xiàn)了標(biāo)準(zhǔn)化、規(guī)范化,所采用的總線主要有單線(1-wire)總線、i2c 總線、smbus 總線和 spi 總線。溫度傳感器作為從機(jī)可通過專用總線接口與主機(jī)進(jìn)行通信。智能溫度控制器是在智能溫度傳感器的基礎(chǔ)上發(fā)展而成的。典型產(chǎn)品有 ds18b20,智能溫度控制器適配各種微控制器,構(gòu)成智能化溫控系統(tǒng);它們還可以脫離微控制器單獨(dú)工作,自行構(gòu)成一個(gè)溫控儀。ds18b20 是 dallas 公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有 3 引腳 to92 小體積封裝形式;溫度測量范圍為55125,可編程為 9 位12 位 a/d 轉(zhuǎn)換精度,測溫分辨率可達(dá) 0.0625,
20、被測溫度用符號(hào)擴(kuò)展的 16 位數(shù)字量方式串行輸出,其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生;多個(gè) ds18b20 可以并聯(lián)到 3 根或 2 根線上,cpu 只需一根端口線就能與諸多 ds18b20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。同 ds1820 一樣,ds18b20 也支持“一線總線”接口,測量溫度范圍為 -55+125,在-10+85范圍內(nèi),精度為 0.5。ds18b20 的精度較差為0.2 ?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量。如:環(huán)境控制、設(shè)備或過程控制、測溫類消費(fèi)電子產(chǎn)品等。與前一代產(chǎn)品
21、不同,新的產(chǎn)品支持 3v5.5v 的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便。而且新一代產(chǎn)品更便宜,體積更小。dallas 半導(dǎo)體公司的數(shù)字化溫度傳感器 ds18b20 是世界上第一片支持“一線總線”接口的溫度傳感器。一線總線獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念?,F(xiàn)在,新一代的 ds18b20 體積更小、更經(jīng)濟(jì)、更靈活。使您可以充分發(fā)揮“一線總線”的長處。 ds18b20、 ds1822 “一線總線”數(shù)字化溫度傳感器。由于 ds18b20 將溫度傳感器、信號(hào)放大調(diào)理、a/d 轉(zhuǎn)換、接口全部集成于一芯片,與單片機(jī)連接簡單、方便,與 ad590 相比是更新一代的溫
22、度傳感器,所以溫度傳感器采用 ds18b20。從以上兩種方案,很容易看出,采用方案二硬件電路比較簡單,軟件設(shè)計(jì)也比較簡單,而且測量的準(zhǔn)確度高,故本設(shè)計(jì)采用方案二。2.32.3 總體設(shè)計(jì)框圖總體設(shè)計(jì)框圖數(shù)字溫度計(jì)電路設(shè)計(jì)總體設(shè)計(jì)方框圖如圖 2.2 所示,控制器采用單片機(jī)stc89c52,溫度傳感器采用 ds18b20,用 4 位 led 數(shù)碼管以并口方式傳送數(shù)據(jù)并以動(dòng)態(tài)掃描數(shù)碼管的方式實(shí)現(xiàn)溫度顯示。圖 2.2 總體設(shè)計(jì)方框圖主 控 制 器led 顯 示溫 度 傳 感 器單片機(jī)復(fù)位時(shí)鐘振蕩報(bào)警點(diǎn)按鍵調(diào)整3系統(tǒng)硬件電路組成及工作原理系統(tǒng)硬件電路組成及工作原理3.13.1 ds18b20 溫度傳感器與
23、單片機(jī)的接口電路溫度傳感器與單片機(jī)的接口電路ds18b20 溫度傳感器是美國 dallas 半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過簡單的編程實(shí)現(xiàn) 912 位的數(shù)字值讀數(shù)方式。ds18b20 的性能特點(diǎn)如下:(1)獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;(2)多個(gè) ds18b20 可以并聯(lián)在同一根數(shù)據(jù)線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;(3)無須外部器件;(4)可通過數(shù)據(jù)線供電,電壓范圍為 3.05.5v;(5)零待機(jī)功耗;(6)溫度以 6 或 12 位數(shù)字;(7)用戶可自定義設(shè)置報(bào)警溫度;(8)報(bào)警搜索命令識(shí)別并標(biāo)志超過
24、程序限定溫度(溫度報(bào)警條件);(9)負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作; ds18b20 采用 3 腳 pr-35 封裝或 8 腳 soic 封裝,其內(nèi)部結(jié)構(gòu)框圖如圖 3.1 所示。 圖 3.1 ds18b20 內(nèi)部結(jié)構(gòu)vddi/oc64 位rom和單線接口高速緩存存儲(chǔ)器與控制邏輯溫度傳感器高溫觸發(fā)器 th低溫觸發(fā)器 tl配置寄存器8 位 crc 發(fā)生器64 位 rom 的結(jié)構(gòu)開始 8 位是產(chǎn)品類型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有 48 位,最后 8 位是前面 56 位的 crc 檢驗(yàn)碼,這也是多個(gè) ds18b20 可以采用一線進(jìn)行通信的原因。溫度報(bào)警觸
25、發(fā)器 th 和 tl,可通過軟件寫入戶報(bào)警上下限。to-92 封裝的 ds18b20 的引腳排列見下圖 3.2,其引腳功能描述見下:1gnd 地信號(hào)。2dq:數(shù)據(jù)輸入/輸出引腳。開漏單總線接口引腳。當(dāng)被用在寄生電源下,也可以向器件提供電源。3vdd:可選擇的 vdd 引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。 圖 3.2 ds18b20 管腳圖ds18b20 溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存 ram 和一個(gè)非易失性的可電擦除的 eepram。高速暫存 ram 的結(jié)構(gòu)為 8 字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如圖 3.3 所示。頭 2 個(gè)字節(jié)包含測得的溫度信息,第 3 和第 4 字節(jié) th 和 tl 的
26、拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第 5 個(gè)字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。ds18b20 工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖 3.3 所示。低 5 位一直為 1,tm 是工作模式位,用于設(shè)置 ds18b20 在工作模式還是在測試模式,ds18b20 出廠時(shí)該位被設(shè)置為 0,用戶要去改動(dòng),r1 和 r0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。圖 3.3 ds18b20 字節(jié)定義表表 3.1 溫度轉(zhuǎn)換時(shí)間表溫度轉(zhuǎn)換時(shí)間表r1r0分辨率/位溫度最大轉(zhuǎn)向時(shí)間/ms00993.750110187.510113751112750由表 3.1
27、 可見,ds18b20 溫度轉(zhuǎn)換的時(shí)間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間越長。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。高速暫存 ram 的第 6、7、8 字節(jié)保留未用,表現(xiàn)為全邏輯 1。第 9 字節(jié)讀出前面所有 8 字節(jié)的 crc 碼,可用來檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。溫度 lsb溫度 msbth 用戶字節(jié) 1tl 用戶字節(jié) 2配置寄存器保留保留保留crctm r11r01111.當(dāng) ds18b20 接收到溫度轉(zhuǎn)換命令后,開始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以 16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第 1、2 字節(jié)。單片機(jī)可以通過單線接口讀出該數(shù)據(jù),
28、讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格式以 0.0625/lsb 形式表示。當(dāng)符號(hào)位 s0 時(shí),表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位 s1 時(shí),表示測得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。表 3.2 是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù)。表表 3.2 一部分溫度對(duì)應(yīng)值表一部分溫度對(duì)應(yīng)值表溫度/二進(jìn)制表示十六進(jìn)制表示+1250000 0111 1101 000007d0h+850000 0101 0101 00000550h+25.06250000 0001 1001 00000191h+10.1250000 0000 1010 000100a2h+0.5
29、0000 0000 0000 00100008h00000 0000 0000 10000000h-0.51111 1111 1111 0000fff8h-10.1251111 1111 0101 1110ff5eh-25.06251111 1110 0110 1111fe6fh-551111 1100 1001 0000fc90hds18b20 完成溫度轉(zhuǎn)換后,就把測得的溫度值與 ram 中的 th、tl 字節(jié)內(nèi)容作比較。若 tth 或 ttl,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對(duì)主機(jī)發(fā)出的報(bào)警搜索命令作出響應(yīng)。因此,可用多只 ds18b20 同時(shí)測量溫度并進(jìn)行報(bào)警搜索。ds18b20 的測溫
30、原理,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器 1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器 2 的脈沖輸入。器件中還有一個(gè)計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí),ds18b20 就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)進(jìn)而完成溫度測量。計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將55所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器 1、溫度寄存器中,計(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,減
31、法計(jì)數(shù)器 1 的預(yù)置將重新被裝入,減法計(jì)數(shù)器 1 重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器計(jì)數(shù)到 0 時(shí),停止溫度寄存器的累加,此時(shí)溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)器門仍未關(guān)閉就重復(fù)上述過程,直到溫度寄存器值大致被測溫度值。另外,由于 ds18b20 單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對(duì) ds18b20 的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化ds18b20(發(fā)復(fù)位脈沖)發(fā) rom 功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。ds18b20 可以采用兩種方式供電,一種是采用電源供電方式,此時(shí) d
32、s18b20 的 1腳接地,2 腳作為信號(hào)線,3 腳接電源。另一種是寄生電源供電方式,如圖 3.4 所示單片機(jī)端口接單線總線,為保證在有效的 ds18b20 時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè) mosfet 管來完成對(duì)總線的上拉。當(dāng) ds18b20 處于寫存儲(chǔ)器操作和溫度 a/d 轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開啟時(shí)間最大為 10us。采用寄生電源供電方式時(shí) vdd 端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。ds 18b 20ds 18b 20ds 18b 204.7 kgndgndgndvccvcc單片機(jī).圖 3.4 ds18b20 與單片機(jī)的接口電路3.23.2 ds
33、18b20 的使用方法的使用方法由于 ds18b20 采用的是單總線協(xié)議方式,即在一根數(shù)據(jù)線實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,而對(duì) stc89c52 單片機(jī)來說,硬件上并不支持單總線協(xié)議,因此,我們必須采用軟件的方法來模擬單總線的協(xié)議時(shí)序來完成對(duì) ds18b20 芯片的訪問。(1) ds18b20 的復(fù)位時(shí)序:由于 ds18b20 是在一根 i/o 線上讀寫數(shù)據(jù),因此,對(duì)讀寫的數(shù)據(jù)位有著嚴(yán)格的時(shí)序要求。ds18b20 有嚴(yán)格的通信協(xié)議來保證各位數(shù)據(jù)傳輸?shù)恼_性和完整性。該協(xié)議定義了幾種信號(hào)的時(shí)序:初始化時(shí)序、讀時(shí)序、寫時(shí)序。所有時(shí)序都是將主機(jī)作為主設(shè)備,單總線器件作為從設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主
34、機(jī)主動(dòng)啟動(dòng)寫時(shí)序開始,如果要求單總線器件回送數(shù)據(jù),在進(jìn)行寫命令后,主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收;數(shù)據(jù)和命令的傳輸都是低位在先。圖 3.5 ds18b20 的復(fù)位時(shí)序(2)ds18b20 的讀時(shí)序:對(duì)于 ds18b20 的讀時(shí)序分為讀 0 時(shí)序和讀 1 時(shí)序兩個(gè)過程。對(duì)于 ds18b20 的讀時(shí)隙是從主機(jī)把單總線拉低之后,在 15 秒之內(nèi)就得釋放單總線,以讓 ds18b20 把數(shù)據(jù)傳輸?shù)絾慰偩€上。ds18b20 在完成一個(gè)讀時(shí)序過程,至少需要 60us 才能完成。圖 3.6 ds18b20 的讀時(shí)序(3)ds18b20 的寫時(shí)序:對(duì)于 ds18b20 的寫時(shí)序仍然分為寫 0 時(shí)序和寫 1 時(shí)序兩
35、個(gè)過程。對(duì)于 ds18b20 寫 0 時(shí)序和寫 1 時(shí)序的要求不同,當(dāng)要寫 0 時(shí)序時(shí),單總線要被拉低至少 60us,保證 ds18b20 能夠在 15us 到 45us 之間能夠正確地采樣 io 總線上的“0”電平,當(dāng)要寫 1 時(shí)序時(shí),單總線被拉低之后,在 15us 之內(nèi)就得釋放單總線。圖 3.7 ds18b20 的寫時(shí)序3.33.3 stc89 系列高性能單片機(jī)系列高性能單片機(jī)mcs51 單片機(jī)是目前國內(nèi)實(shí)用最廣泛的一種單片機(jī)型,全球各單片機(jī)生產(chǎn)廠商在mcs51 內(nèi)核基礎(chǔ)上,派生了大量的 51 內(nèi)核系列單片機(jī),極大地豐富了 mcs51 的種群。其中,stc 公司推出了 stc89 系列單片
36、機(jī),增加了大量的新功能,提高了 51 的性能,是 mcs51 家族中的佼佼者。stc89 系列單片機(jī)是 mcs-51 系列單片機(jī)的派生產(chǎn)品。它們?cè)谥噶钕到y(tǒng)、硬件結(jié)構(gòu)和片內(nèi)資源上與標(biāo)準(zhǔn) 8052 單片機(jī)完全兼容,dip40 封裝系列與 8051 為 pin-to-pin 兼容。stc89 系列單片機(jī)高速(最高時(shí)鐘頻率 90mhz),低功耗,在系統(tǒng)/在應(yīng)用可編程(isp,iap),不占用戶資源。表 3.3 是 stc89 系列單片機(jī)資源一覽表。stc89 系列單片機(jī)主要特性:(1)80c51 核心處理器單元;(2)3v/5v 工作電壓,操作頻率 033mhz(stc89le516ad 最高可達(dá) 9
37、0mhz);5v 工作電壓,操作頻率 040mhz;(3)大容量內(nèi)部數(shù)據(jù) ram:1k 字節(jié) ram;(4)64/32/16/8kb 片內(nèi) flash 程序存儲(chǔ)器,具有在應(yīng)用可編程(iap) ,在系統(tǒng)可編程(isp),可實(shí)現(xiàn)遠(yuǎn)程軟件升級(jí),無需編程器;(5)支持 12 時(shí)鐘(默認(rèn))或 6 時(shí)鐘模式;(6)雙 dptr 數(shù)據(jù)指針;(7)spi(串行外圍接口)和增強(qiáng)型 uart ;(8)pca(可編程計(jì)數(shù)器陣列),具有 pwm 的捕獲/比較功能;(9)4 個(gè) 8 位 i/o 口,含 3 個(gè)高電流 p1 口,可直接驅(qū)動(dòng) led;(10)3 個(gè) 16 位定時(shí)器/計(jì)數(shù)器;(11)可編程看門狗定時(shí)器(wdt
38、);(12)低 emi 方式(ale 禁止);(13)兼容 ttl 和 coms 邏輯電平;(14)掉電檢測和低功耗模式等。表表 3.3 stc89 系列單片機(jī)資源一覽表系列單片機(jī)資源一覽表3.43.4 7 段段 led 數(shù)碼管電路及原理數(shù)碼管電路及原理7 段 led 數(shù)碼管是利用 7 個(gè) led(發(fā)光二極管)外加一個(gè)小數(shù)點(diǎn)的 led 組合而成的顯示設(shè)備,可以顯示 09 等 10 個(gè)數(shù)字和小數(shù)點(diǎn),使用非常廣泛。這類數(shù)碼管可以分為共陽極與共陰極兩種,共陽極就是把所有 led 的陽極連接到共同接點(diǎn) com,而每個(gè) led 的陰極分別為 a、b、c、d、e、f、g 及 dp(小數(shù)點(diǎn));共陰極則是把所
39、有 led 的陰極連接到共同接點(diǎn) com,而每個(gè) led 的陽極分別為a、b、c、d、e、f、g 及 dp(小數(shù)點(diǎn)),如下圖 3.8 所示。圖中的 8 個(gè) led 分別與上面那個(gè)圖中的 adp 各段相對(duì)應(yīng),通過控制各個(gè) led 的亮滅來顯示數(shù)字。圖 3.8 數(shù)碼管段碼圖還有一種比較常用的是四位數(shù)碼管,內(nèi)部的 4 個(gè)數(shù)碼管共用 adp 這 8 根數(shù)據(jù)線,為人們的使用提供了方便,因?yàn)槔锩嬗?4 個(gè)數(shù)碼管,所以它有 4 個(gè)公共端,加上adp,共有 12 個(gè)引腳,下面便是一個(gè)共陰的四位數(shù)碼管的內(nèi)部結(jié)構(gòu)圖(共陽的與之相反)。引腳排列依然是從左下角的那個(gè)腳(1 腳)開始,以逆時(shí)針方向依次為 1-12 腳,
40、圖 3.9 中的數(shù)字與之一一對(duì)應(yīng)。圖 3.9 四位共陰數(shù)碼管管腳圖3.53.5 溫度報(bào)警電路溫度報(bào)警電路1、蜂鳴器的結(jié)構(gòu)原理(1)壓電式蜂鳴器:壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。有的壓電式蜂鳴器外殼上還裝有發(fā)光二極管。多諧振蕩器由晶體管或集成電路構(gòu)成。當(dāng)接通電源后(1.515v 直流工作電壓),多諧振蕩器起振,輸出 1.52.5khz 的音頻信號(hào),阻抗匹配器推動(dòng)壓電蜂鳴片發(fā)聲。壓電蜂鳴片由鋯鈦酸鉛或鈮鎂酸鉛壓電陶瓷材料制成。在陶瓷片的兩面鍍上銀電極,經(jīng)極化和老化處理后,再與黃銅片或不銹鋼片粘在一起。(2)電磁式蜂鳴器:電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵
41、、振動(dòng)膜片及外殼等組成。接通電源后,振蕩器產(chǎn)生的音頻信號(hào)電流通過電磁線圈,使電磁線圈產(chǎn)生磁場。振動(dòng)膜片在電磁線圈和磁鐵的相互作用下,周期性地振動(dòng)發(fā)聲。2、本設(shè)計(jì)采軟件處理報(bào)警,利用蜂鳴器進(jìn)行報(bào)警輸出,采用直流供電。當(dāng)所測溫度超過或低于所預(yù)設(shè)的溫度時(shí),數(shù)據(jù)口 p3.7 相應(yīng)拉高電平,報(bào)警輸出。(也可采用發(fā)光二級(jí)管報(bào)警電路,如果需要報(bào)警,則只需將相應(yīng)位置 1,則發(fā)光報(bào)警)報(bào)警電路硬件連接見圖 3.10。圖 3.10 蜂鳴器電路連接圖3.63.6 系統(tǒng)整體硬件電路系統(tǒng)整體硬件電路溫度計(jì)電路設(shè)計(jì)原理圖如圖 3.11 所示,控制器使用單片機(jī) stc89c52,溫度傳感器使用 ds18b20,用 4 位共
42、陰 led 數(shù)碼管以動(dòng)態(tài)掃描法實(shí)現(xiàn)溫度顯示。本溫度計(jì)大體分三個(gè)工作過程。首先,由 ds18820 溫度傳感器芯片測量當(dāng)前的溫度,并將結(jié)果送入單片機(jī)。然后,通過 89c52 單片機(jī)芯片對(duì)送來的測量溫度讀數(shù)進(jìn)行計(jì)算和轉(zhuǎn)換,最后將此結(jié)果送入數(shù)碼管顯示模塊進(jìn)行顯示。由圖可看到,本電路主要由 dsl8820 溫度傳感器芯片、四位數(shù)碼管顯示模塊芯片、報(bào)警電路和 89c52 單片機(jī)芯片組成。其中,dsi8b20 溫度傳感器芯片采用“一線制”與單片機(jī)相連,它獨(dú)立地完成溫度量以及將溫度測量結(jié)果送到單片機(jī)的工作。圖 3.11 數(shù)字溫度計(jì)電路原理圖4系統(tǒng)軟件程序設(shè)計(jì)系統(tǒng)軟件程序設(shè)計(jì)系統(tǒng)程序主要包括主程序,讀出溫度子
43、程序,溫度轉(zhuǎn)換命令子程序,計(jì)算溫度子程序,顯示數(shù)據(jù)刷新子程序,溫度報(bào)警子程序等。4.14.1 主程序主程序主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理 ds18b20 的測量的當(dāng)前溫度值,溫度測量每 1s 進(jìn)行一次。這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見圖 4.1 所示。圖 4.1 主程序流程圖初始化調(diào)用顯示子程序1s 到?初次上電讀出溫度值,溫度計(jì)算處理顯示數(shù)據(jù)刷新發(fā)溫度轉(zhuǎn)換開始命令nyny4.24.2 讀取溫度子程序讀取溫度子程序讀取溫度子程序的主要功能是讀取 ram 中的 9 字節(jié),在讀出時(shí)需進(jìn)行 crc 校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫,其程序流程圖如圖 4.2 所示
44、。圖 4.2 讀溫度流程圖y發(fā) ds18b20 復(fù)位命令發(fā)跳過 rom 命令發(fā)讀取溫度命令讀取操作,crc 校驗(yàn)9 字節(jié)完?crc 校驗(yàn)正?確?移入溫度暫存器結(jié)束nny發(fā) ds18b20 復(fù)位命令發(fā)跳過 rom 命令發(fā)溫度轉(zhuǎn)換開始命令結(jié)束4.34.3 溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用 12 位分辨率時(shí)轉(zhuǎn)換時(shí)間約為 750ms,在本程序設(shè)計(jì)中采用 1s 顯示程序延時(shí)法等待轉(zhuǎn)換的完成,溫度轉(zhuǎn)換命令子程序流程圖如圖 4.3 所示。圖 4.3 溫度轉(zhuǎn)換流程圖4.44.4 計(jì)算溫度子程序計(jì)算溫度子程序計(jì)算溫度子程序?qū)?ram 中讀取值進(jìn)行 bcd 碼
45、的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖 4.4 所示。 圖 4.4計(jì)算溫度流程圖開始溫度零下?溫度值取補(bǔ)碼置“”標(biāo)志計(jì)算小數(shù)位溫度 bcd 值計(jì)算整數(shù)位溫度 bcd 值結(jié)束置“+”標(biāo)志ny4.54.5 顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對(duì)顯示緩沖器中的顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)最高顯示位為 0 時(shí)將符號(hào)顯示位移入下一位,程序流程圖如圖 4.5 所示。圖 4.5顯示數(shù)據(jù)刷新流程圖溫度數(shù)據(jù)移入顯示寄存器十位數(shù) 0?百位數(shù) 0?十位數(shù)顯示符號(hào)百位數(shù)不顯示百位數(shù)顯示數(shù)據(jù)(不顯示符號(hào))結(jié)束nnyy4.64.6 溫度報(bào)警子程序溫度報(bào)警子程序溫度報(bào)警子程序主要是對(duì)當(dāng)前溫
46、度值與預(yù)先設(shè)置的溫度值的比較,如果當(dāng)前溫度達(dá)到預(yù)設(shè)報(bào)警溫度時(shí),調(diào)用溫度報(bào)警子程序讓單片機(jī)相應(yīng)端口輸出信號(hào)使蜂鳴器和發(fā)光二極管實(shí)現(xiàn)聲光報(bào)警,程序流程圖如圖 4.6 所示。調(diào)用報(bào)警子程序,實(shí)現(xiàn)聲光報(bào)警繼續(xù)執(zhí)行程序結(jié)束圖 4.6調(diào)用溫度報(bào)警子程序流程圖讀取當(dāng)前實(shí)際溫度值溫度是否達(dá)到報(bào)警門限?yn5系統(tǒng)總體調(diào)試系統(tǒng)總體調(diào)試近年來隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷地走向深入,同時(shí)帶動(dòng)傳統(tǒng)控制檢測日新月異更新。在實(shí)時(shí)檢測和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個(gè)核心部件來使用,僅單片機(jī)方面知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對(duì)具體應(yīng)用對(duì)象特點(diǎn)的軟件結(jié)合,加以完善。根據(jù)方案設(shè)計(jì)的要求,調(diào)
47、試過程共分三大部分:硬件調(diào)試、軟件調(diào)試和軟硬聯(lián)調(diào)。 單片機(jī)系統(tǒng)的硬件調(diào)試和軟件調(diào)試是不能分開的,許多硬件錯(cuò)誤是在軟件調(diào)試中被發(fā)現(xiàn)和糾正的。但通常是先排除明顯的硬件故障以后,再和軟件結(jié)合起來調(diào)試以進(jìn)一步排除故障。可見硬件的調(diào)試是基礎(chǔ),如果硬件調(diào)試不通過,軟件設(shè)計(jì)則是無從做起。5.15.1 硬件調(diào)試硬件調(diào)試5.1.1 排除邏輯故障這類故障往往由于設(shè)計(jì)和加工制板過程中工藝性錯(cuò)誤所造成的。主要包括錯(cuò)線、開路、短路。排除的方法是首先將加工的電路板認(rèn)真對(duì)照原理圖,看兩者是否一致。應(yīng)特別注意電源系統(tǒng)檢查,以防止電源短路和極性錯(cuò)誤,并重點(diǎn)檢查系統(tǒng)總線(地址總線、數(shù)據(jù)總線和控制總線)是否存在相互之間短路或與其它
48、信號(hào)線路短路。必要時(shí)利用數(shù)字萬用表的短路測試功能,可以縮短排錯(cuò)時(shí)間。5.1.2 排除元器件失效造成這類錯(cuò)誤的原因有兩個(gè):一個(gè)是元器件買來時(shí)就已壞了;另一個(gè)是由于安裝錯(cuò)誤,造成器件燒壞。可以采取檢查元器件與設(shè)計(jì)要求的型號(hào)、規(guī)格和安裝是否一致。在保證安裝無誤后,用替換方法排除錯(cuò)誤。5.1.3 排除電源故障在通電前,一定要檢查電源電壓的幅值和極性,否則很容易造成集成塊損壞。加電后檢查各插件上引腳的電位,一般先檢查 vcc 與 gnd 之間電位,若在 5v48v之間屬正常。若有高壓,聯(lián)機(jī)仿真器調(diào)試時(shí),將會(huì)損壞仿真器等,有時(shí)會(huì)使應(yīng)用系統(tǒng)中的集成塊發(fā)熱損壞。檢查電路板及焊接的質(zhì)量情況,在檢查無誤后可通電檢
49、查 led 顯示器。若亮度不理想,可以調(diào)整 p1 口的上拉電阻大小,一般情況取 200 歐電阻即可。使用萬用表檢查電路的連接是否與原理圖的一致,并檢查是否有虛焊現(xiàn)象。5.25.2 軟件調(diào)試軟件調(diào)試本系統(tǒng)的軟件系統(tǒng)全部采用 c 語言編寫,除語法與邏輯差錯(cuò)外,當(dāng)確認(rèn)程序沒問題時(shí),直接把生成的 hex 文件下載到單片機(jī)仿真調(diào)試。采取自下到上的方法,單獨(dú)調(diào)好每一個(gè)模塊,最后完成一個(gè)完整的系統(tǒng)調(diào)試。在 keilc51 編譯環(huán)境下進(jìn)行,源程序編譯及仿真調(diào)試應(yīng)分段或以子程序?yàn)閱挝恢饌€(gè)進(jìn)行,先在 keil 里進(jìn)行單步運(yùn)行調(diào)試,最后將 hex 文件下載到單片機(jī)里,結(jié)合硬件進(jìn)行實(shí)時(shí)調(diào)試。通過以上檢查后,將電路通電
50、查看是否按要求正常工作,最終完成設(shè)計(jì)。下面圖 5.1 為 proteus 溫度計(jì)仿真電路圖。圖 5.1 protues 放置電路圖6 設(shè)計(jì)總結(jié)與體會(huì)設(shè)計(jì)總結(jié)與體會(huì)6.16.1 設(shè)計(jì)總結(jié)設(shè)計(jì)總結(jié)89stc52 單片機(jī),體積小,重量輕,抗干擾能力強(qiáng),對(duì)環(huán)境要求不高,價(jià)格低廉,可靠性高,靈活性好,即使是非電子計(jì)算機(jī)專業(yè)人員,通過學(xué)習(xí)一些專業(yè)基礎(chǔ)知識(shí)以后也能依靠自己的技術(shù)力量,來開發(fā)所希望的單片機(jī)應(yīng)用系統(tǒng)。本設(shè)計(jì)的溫度測量和報(bào)警系統(tǒng),只是單片機(jī)廣泛應(yīng)用于各行各業(yè)中的一例。本設(shè)計(jì)研究是基于單片機(jī)控制的溫度測量與報(bào)警系統(tǒng)的設(shè)計(jì),介紹了對(duì)溫度的測量、顯示及報(bào)警,實(shí)現(xiàn)了溫度的實(shí)時(shí)顯示。 它具有微型化、低功耗、
51、高性能、抗干攏能力強(qiáng)、易配微處理器等優(yōu)點(diǎn),特別適合于構(gòu)成多點(diǎn)溫度測控系統(tǒng),可直接將溫度轉(zhuǎn)化成串行數(shù)字信號(hào)供微機(jī)處理,而且每片 ds18s20 都有唯一的產(chǎn)品號(hào)并可存入其 rom 中,以便在構(gòu)成大型溫度測控系統(tǒng)時(shí)在單線上掛接任意多個(gè) ds18s20 芯片。從 ds18s20 讀出或?qū)懭?ds18s20 信息僅需要一根口線,其讀寫及溫度變換功率來源于數(shù)據(jù)總線,該總線本身也可以向所掛接的ds18s20 供電,而無需額處電源。ds18s20 能提供九位溫度讀數(shù),它無需任何外圍硬件即可方便地構(gòu)成溫度檢測系統(tǒng)。本設(shè)計(jì)利用 stc89c52 芯片控制溫度傳感器 ds18b20,再輔之以部分外圍電路實(shí)現(xiàn)對(duì)環(huán)境
52、溫度的測量,性能穩(wěn)定,精度較高,而且擴(kuò)展性能很強(qiáng)大。由于 ds18b20 支持單總線協(xié)議,我們可以將多個(gè) ds18b20 可以并聯(lián)在一起,cpu 只需一根端口線就能與多個(gè) ds18b20 通信,占用較少的微處理器的端口就可以實(shí)現(xiàn)多點(diǎn)測溫系統(tǒng)。由于 ds18b20 的測量精度只有0.5 度,往往很多場合需要更加精確的溫度,在所測溫度精度不變的基礎(chǔ)上必須對(duì)數(shù)據(jù)進(jìn)行校正。不過,其誤差在時(shí)間和外部環(huán)境變化的條件下,保持相當(dāng)高的穩(wěn)定性。針對(duì)這一特性,對(duì)其進(jìn)行誤差校正補(bǔ)償;這種誤差校正的補(bǔ)償方法,不需增加硬件電路,計(jì)算方法簡單,軟件費(fèi)用也很小,既提高了測量精度,又不需增加成本。它充分單片機(jī)的處理能力,在單
53、片機(jī)上用線性插補(bǔ)的數(shù)學(xué)方法對(duì)其進(jìn)行誤差校正補(bǔ)償,能輕易地將其提高其精度,從而達(dá)到更準(zhǔn)確地測量周圍環(huán)境的溫度。6.26.2 畢業(yè)設(shè)計(jì)心得體會(huì)畢業(yè)設(shè)計(jì)心得體會(huì)經(jīng)過將近三個(gè)月的畢業(yè)設(shè)計(jì),終于完成了我的數(shù)字溫度計(jì)的設(shè)計(jì),雖然電路外觀不是很美觀,但從心底里說,還是高興的,畢竟這次設(shè)計(jì)把實(shí)物都做了出來,高興之余也從中學(xué)到了很多知識(shí)。在本次畢業(yè)設(shè)計(jì)的過程中,我發(fā)現(xiàn)很多的問題,雖然以前還做過這樣的設(shè)計(jì)但這次設(shè)計(jì)真的讓我長進(jìn)了很多,單片機(jī)畢業(yè)設(shè)計(jì)重點(diǎn)就在于軟件算法的設(shè)計(jì),需要有很巧妙的程序算法,雖然以前寫過幾次程序,但我覺的寫好一個(gè)程序并不是一件簡單的事,舉個(gè)例子,以前寫的那幾次,數(shù)據(jù)加減時(shí),我用的都是 bcd
54、 碼,這一次,我全部用的都是 16 進(jìn)制的數(shù)直接加減,顯示處理時(shí)再用除法去求出各位,感覺效果比較好;有好多的東西,只有我們?nèi)ピ囍隽?,才能真正的掌握,只學(xué)習(xí)理論有些東西是很難理解的,更談不上掌握。此次的畢業(yè)設(shè)計(jì)真正讓我把學(xué)到的理論知識(shí)應(yīng)用到實(shí)際的設(shè)計(jì)中,同時(shí)也從實(shí)踐中鍛煉了自己的實(shí)驗(yàn)動(dòng)手能力,在實(shí)踐中檢驗(yàn)了學(xué)到的知識(shí)。從這次的課程設(shè)計(jì)中,我真真正正的意識(shí)到,在以后的學(xué)習(xí)和工作中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識(shí)用到實(shí)際當(dāng)中,從實(shí)際中學(xué)到更多的知識(shí)。學(xué)習(xí)單機(jī)片機(jī)更是如此,程序只有在經(jīng)常的寫與讀的過程中才能提高,實(shí)驗(yàn)動(dòng)手能力只有在不斷的鍛煉中才能提升,這就是我在這次畢業(yè)設(shè)計(jì)中的最大收獲。參參
55、考考 文文 獻(xiàn)獻(xiàn)1 肖金球. 單片機(jī)原理和接口技術(shù)m . 北京:清華大學(xué)出版社,2008. 2 馬長林. 單片機(jī)實(shí)踐應(yīng)用與技術(shù)m . 北京:清華大學(xué)出版社,2008.3 牛昱光. 單片機(jī)原理和接口技術(shù)m . 北京:電子工業(yè)出版社, 2008.4 倪志蓮. 單片機(jī)應(yīng)用技術(shù)m . 北京:北京理工大學(xué)出版社, 2007.5 陳志旺. 51 系列單片機(jī)系統(tǒng)設(shè)計(jì)與實(shí)踐m . 北京:電子工業(yè)出版社, 2010.6 趙亮. 單片機(jī) c 語言編程與實(shí)例m . 北京:清華大學(xué)出版社, 2008.7 樓然苗. 單片機(jī)課程設(shè)計(jì)指導(dǎo)m . 北京:北京航空航天大學(xué)出版社, 2007.8 王勇. 基于 at89s51 的
56、便攜式實(shí)時(shí)溫度檢測儀a . 儀表技術(shù)與傳感器c, 2006.9 何立民. mcs-51 系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)m . 北京:北京航空航天大學(xué)出版社, 1995.10 李玉峰,倪虹霞. mcs-51 系列單片機(jī)原理與接口技術(shù)m . 北京:人民郵電出版社, 2004.11 肖來勝,馮建蘭. 單片機(jī)技術(shù)實(shí)用教程m. 武漢:華中科技大學(xué)出版社, 2004.12 丁明亮,唐前輝. 51 單片機(jī)應(yīng)用設(shè)計(jì)與仿真m . 北京:北京航空航天大學(xué)出版社, 2009.13 g jiang m zhang,x xie,s li . application on temperature control of ds18b
57、20m,control engineering of china, 2003.14 i. scott mackenzie raphael c. -w. phan . the 8051 microcontrollerm pearson education, 2007.致致 謝謝本畢業(yè)設(shè)計(jì)(論文)是在我的指導(dǎo)教師童懷老師的親切關(guān)懷和悉心指導(dǎo)下完成的。他嚴(yán)肅的科學(xué)態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和激勵(lì)著我。從題目的選擇到最終完成,童懷老師都始終給予我細(xì)心的指導(dǎo)和不懈的支持。在本畢業(yè)設(shè)計(jì)的設(shè)計(jì)和制作過程中,感謝老師給了我很大的幫助,在論文工作中,遇到了很多細(xì)節(jié)方面的問題,一直得到童
58、懷老師的親切關(guān)懷和悉心指導(dǎo),使我得以順利的完成此次畢業(yè)設(shè)計(jì)的任務(wù),童懷老師以其豐厚的專業(yè)知識(shí)功底、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、求實(shí)的工作作風(fēng)和他敏捷的思維給我留下了深刻的印象,我將終生難忘并向他學(xué)習(xí)。再一次向他表示衷心的感謝,感謝他為學(xué)生營造的濃郁學(xué)習(xí)氛圍,以及學(xué)習(xí)上的無私幫助。同時(shí)我也會(huì)將這種嚴(yán)謹(jǐn)?shù)淖黠L(fēng)運(yùn)用到工作中去,為以后的社會(huì)實(shí)踐工作而努力。畢業(yè)設(shè)計(jì)的完成同時(shí)也離不開很多的同學(xué)熱心幫助,是他們?cè)谖矣龅诫y題的時(shí)候給了我啟發(fā)。通過本次畢業(yè)設(shè)計(jì),我在專業(yè)知識(shí)、專業(yè)技能和解決問題方法方面得到很大的提高。更深入了解并掌握了傳感器的基本理論知識(shí),并在單片機(jī)實(shí)際電路開發(fā)和常用編程設(shè)計(jì)思路掌握方面有了一定程度的掌握
59、,盡管本次設(shè)計(jì)還不是很完善,但這為我以后的設(shè)計(jì)之路積累了寶貴的經(jīng)驗(yàn)。由于本人水平有限,加之時(shí)間倉促,設(shè)計(jì)中疏漏和錯(cuò)誤之處在所難免,希望老師給予諒解,同時(shí)也希望老師加以批評(píng)和指正,使我在以后的學(xué)習(xí)和工作中取得更大的成績。附錄附錄 a 程序源代碼程序源代碼/*程序名稱:ds18b20 溫度測量及報(bào)警;簡要說明:ds18b20 溫度計(jì),溫度測量范圍 0-99.9 攝氏度;可設(shè)置上限報(bào)警溫度、下限報(bào)警溫度;即高于上限值或者低于下限值時(shí)蜂鳴器和 led 指示燈報(bào)警;默認(rèn)上限報(bào)警溫度為 38、默認(rèn)下限報(bào)警溫度為 5;報(bào)警值可設(shè)置范圍:最低上限報(bào)警值等于當(dāng)前下限報(bào)警值;最高下限報(bào)警值等于當(dāng)前上限報(bào)警值;將下
60、限報(bào)警值調(diào)為 0 時(shí)為關(guān)閉下限報(bào)警功能。 */#include #include ds18b20.h #define uint unsigned int#define uchar unsigned char /宏定義#define set p3_1 /定義調(diào)整鍵#define add p3_2 /定義增加鍵#define dec p3_3 /定義減少鍵#define beep p3_7 /定義蜂鳴器bit shanshuo_st; /閃爍間隔標(biāo)志bit beep_st; /蜂鳴器間隔標(biāo)志sbit dian = p17; /小數(shù)點(diǎn)uchar x=0; /計(jì)數(shù)器signed char m; /溫度值全局變量uchar n; /溫度值全局變
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 寧波浙江寧波慈溪市人民法院招聘審判輔助人員13人筆試歷年參考題庫附帶答案詳解
- 2025年蘇教新版選修6歷史下冊(cè)階段測試試卷
- 2025年北師大版必修3生物上冊(cè)月考試卷
- 2025年粵教新版高三歷史下冊(cè)階段測試試卷
- 二零二五年度打印機(jī)租賃及租賃期滿資產(chǎn)回收合同3篇
- 2025年蘇教新版八年級(jí)歷史下冊(cè)階段測試試卷
- 2025年度鋼材產(chǎn)業(yè)鏈上下游戰(zhàn)略合作合同
- 2025年統(tǒng)編版九年級(jí)地理下冊(cè)月考試卷
- 2025年西師新版高二數(shù)學(xué)下冊(cè)月考試卷含答案
- 2025年度新型環(huán)保材料窗戶安裝與推廣合同2篇
- 多子女贍養(yǎng)老人協(xié)議書范文
- 安踏運(yùn)動(dòng)品牌營銷策略研究
- 彩票市場銷售計(jì)劃書
- 骨科抗菌藥物應(yīng)用分析報(bào)告
- 支付行業(yè)反洗錢與反恐怖融資
- 百詞斬托福詞匯excel版本
- 基礎(chǔ)設(shè)施綠色施工技術(shù)研究
- 寶鋼BQB 481-2023全工藝?yán)滠堉蓄l無取向電工鋼帶文件
- 車輛定損情況確認(rèn)書范本
- 高中英語新課標(biāo)詞匯表(附詞組)
- 2022年高考湖南卷生物試題(含答案解析)
評(píng)論
0/150
提交評(píng)論