版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于單片機(jī)的溫度控制系統(tǒng)的設(shè)計(jì)與制作畢業(yè)論文 桂林航天工業(yè)學(xué)院論文 基于STC89C52單片機(jī)的溫度報(bào)警器的設(shè)計(jì)與制作 Design and production based STC89C52 microcontroller temperature alarm 專 業(yè)應(yīng)用電子技術(shù)學(xué) 生陸星球指導(dǎo)教師 桂林航天工業(yè)學(xué)院電子工程系二零壹貳年陸月畢 業(yè) 設(shè) 計(jì) 論 文 評(píng) 語指導(dǎo)教師評(píng)語 簽字 201 年 月 日評(píng)閱教師評(píng)語 簽字 201 年 月 日畢業(yè)設(shè)計(jì)論文答辯記錄成績(jī)及評(píng)語 答辯提問記錄 記錄人 201 年 月 日答辯委員會(huì)評(píng)語 成 績(jī) 主任簽字 201 年 月 日桂林航天工業(yè)學(xué)院電子工程系畢
2、 業(yè) 設(shè) 計(jì) 任 務(wù) 書專業(yè)年級(jí) 姓名陸星球?qū)W號(hào)指導(dǎo)教師簽名畢業(yè)設(shè)計(jì)題目基于單片機(jī)的溫度控制系統(tǒng)的設(shè)計(jì)與制作任務(wù)下達(dá)日期2011年11月10日設(shè)計(jì)提交期限2012年6月10日設(shè)計(jì)主要內(nèi)容采用數(shù)字溫度傳感器基于單片機(jī)的數(shù)字溫度計(jì)本溫度計(jì)屬于多功能溫度計(jì)可以設(shè)置上下報(bào)警溫度當(dāng)溫度不在設(shè)置范圍內(nèi)時(shí)可以報(bào)警主要技術(shù)參數(shù)指標(biāo)采集到的溫度數(shù)據(jù)通過數(shù)碼管顯示出來采集的溫度范圍為0到99度精確到±05度成果提交形式設(shè)計(jì)論文一份樣品一套設(shè)計(jì)進(jìn)度安排1月10日2月10日收集資料2月10日3月10日方案設(shè)計(jì)論證3月10日4月10日硬件設(shè)計(jì)與制作4月10日5月10日編寫程序及調(diào)試5月10日6月10日書寫報(bào)告
3、提交設(shè)計(jì)成果 教研室意見 簽名 2012 年 月 日 系主任意見簽名 2012 年 月 日桂林航天工業(yè)學(xué)院電子工程系畢 業(yè) 設(shè) 計(jì) 開 題 報(bào) 告姓名陸星球?qū)W號(hào)指導(dǎo)教師楊端畢業(yè)設(shè)計(jì)題目基于單片機(jī)的溫度控制系統(tǒng)的設(shè)計(jì)與制作同組設(shè)計(jì)目的意義隨著時(shí)代的進(jìn)步和發(fā)展單片機(jī)技術(shù)已經(jīng)普及到我們生活工作科研各個(gè)領(lǐng)域已經(jīng)成為一種比較成熟的技術(shù) 在日常生活及工農(nóng)業(yè)生產(chǎn)中對(duì)溫度的檢測(cè)及控制時(shí)常顯得極其重要因此對(duì)數(shù)顯溫度計(jì)的設(shè)計(jì)有著實(shí)際意義和廣泛的應(yīng)用方案論證方案一由于本設(shè)計(jì)是測(cè)溫電路可以使用熱敏電阻之類的器件利用其感溫效應(yīng)在將隨被測(cè)溫度變化的電壓或電流采集過來進(jìn)行AD轉(zhuǎn)換后就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理在顯示電路上就
4、可以將被測(cè)溫度顯示出來這種設(shè)計(jì)需要用到AD轉(zhuǎn)換電路其中還涉及到電阻與溫度的對(duì)應(yīng)值的計(jì)算感溫電路比較麻煩而且在對(duì)采集的信號(hào)進(jìn)行放大時(shí)容易受溫度的影響出現(xiàn)較大的偏差方案二 進(jìn)而考慮到用溫度傳感器在單片機(jī)電路設(shè)計(jì)中大多都是使用傳感器所以這是非常容易想到的所以可以采用一只溫度傳感器DS18B20此傳感器可以很容易直接讀取被測(cè)溫度值進(jìn)行轉(zhuǎn)換電路簡(jiǎn)單精度高軟硬件都以實(shí)現(xiàn)而且使用單片機(jī)的接口便于系統(tǒng)的再擴(kuò)展?jié)M足設(shè)計(jì)要求時(shí)間安排1月10日3月10日收集資料方案設(shè)計(jì)論證3月10日4月10日硬件設(shè)計(jì)與制作4月10日5月10日編寫程序及調(diào)試5月10日6月10日書寫報(bào)告提交設(shè)計(jì)成果指導(dǎo)教師意見 簽字 年 月 日 審核
5、小組意見 組長簽字 年 月 日中文摘要 在日常生活及工農(nóng)業(yè)生產(chǎn)中對(duì)溫度的檢測(cè)及控制時(shí)常顯得極其重要因此對(duì)數(shù)顯溫度計(jì)的設(shè)計(jì)有著實(shí)際意義和廣泛的應(yīng)用本文介紹一種利用單片機(jī)實(shí)現(xiàn)對(duì)溫度智能控制及顯示的方案本畢業(yè)設(shè)計(jì)主要研究的是高精度的數(shù)字溫度計(jì)的設(shè)計(jì)繼而實(shí)現(xiàn)對(duì)對(duì)象的測(cè)溫測(cè)溫系統(tǒng)主要包括供電電源數(shù)字溫度傳感器的數(shù)據(jù)采集電路LED顯示電路蜂鳴器報(bào)警電路繼電器控制按鍵電路單片機(jī)主板電路數(shù)字溫度傳感器的數(shù)據(jù)采集電路與單片機(jī)主板電路是整個(gè)系統(tǒng)的關(guān)鍵高精度數(shù)字溫度計(jì)的測(cè)溫過程由數(shù)字溫度傳感器采集所測(cè)對(duì)象的溫度并將溫度傳輸?shù)絾纹瑱C(jī)最終由液晶顯示器顯示溫度值該數(shù)顯溫度計(jì)要求測(cè)溫范圍為55125精度誤差在05以內(nèi)LED
6、數(shù)碼管直讀顯示數(shù)字式溫度計(jì)完全可以代替?zhèn)鹘y(tǒng)的水銀溫度計(jì)可以在家庭中以及工業(yè)中都可以應(yīng)用實(shí)用價(jià)值很高 關(guān)鍵詞 單片機(jī)ABSTRACT In our daily life and industrial and agricultural production the detection and control of the temperature is extremely important Therefore the design of the digital thermometer has practical significance and a wide range of applicatio
7、ns This article describes a programmer which use a microcontroller to achieve and display the right temperature by intelligent control This programmer mainly consists by temperature control sensors MCU LED display modules circuit The main aim of this thesis is to design high-precision digital thermo
8、meter and then realize the object temperature measurement Temperature measurement system includes power supply data acquisition circuit of digital temperature sensor LED display circuit buzzer alarm circuit keypad circuit board with a microcontroller circuit data acquisition circuit of digital tempe
9、rature sensor and board with a microcontroller circuit is the key to the whole system The temperature process of high-precision digital thermometer from collecting the temperature of the object by the digital temperature sensor and the temperature transmitted to the microcontroller and ultimately di
10、splay temperature by the LED The digital thermometer requires the high degree is positive 99 and the low degree is negative 55 the error is less than 01LED can read the number This digital thermometer could replace the traditional mercurial thermometer can be used in family or industrial and agricul
11、tural production it has a great value KEY WORDSMCU DS18B20LED displayDigital thermometer目 錄 畢 業(yè) 設(shè) 計(jì) 論 文 評(píng) 語I畢業(yè)設(shè)計(jì)論文答辯記錄成績(jī)及評(píng)語II畢 業(yè) 設(shè) 計(jì) 任 務(wù) 書III畢 業(yè) 設(shè) 計(jì) 開 題 報(bào) 告IV中文摘要VABSTRACTVI目 錄i第一章 引言1第二章 方案選擇及總體設(shè)計(jì)221 數(shù)字溫度計(jì)設(shè)計(jì)方案論證2211 方案一2212 方案二2213 終選222 系統(tǒng)概述323 總體設(shè)計(jì)3231 實(shí)現(xiàn)功能3232 擴(kuò)展功能4第三章 硬件設(shè)計(jì)531 總體電路設(shè)計(jì)5311 主控制器STC
12、89C525312 顯示電路9313 報(bào)警溫度調(diào)整按鍵9314報(bào)警電路11315控制加溫電路1232 DS18B20溫度傳感器12321溫度傳感計(jì)DS18B20電路設(shè)計(jì)17第四章 程序流程圖設(shè)計(jì)1941 主程序1942 讀出溫度子程序2043 溫度轉(zhuǎn)換命令子程序2044 計(jì)算溫度子程序與報(bào)警程序2145 顯示數(shù)據(jù)刷新子程序2146 按鍵掃描處理子程序22第五章 系統(tǒng)調(diào)試與運(yùn)行23第六章 結(jié)論24致 謝25附 錄26A電路總原理圖26B程序清單27參考文獻(xiàn)36引言溫度是日常生活工業(yè)醫(yī)學(xué)環(huán)境保護(hù)化工石油等領(lǐng)域最常遇到的一個(gè)物理量測(cè)量溫度的基本方法是使用溫度計(jì)直接讀取溫度最常見到的測(cè)量溫度的工具是各
13、種各樣的溫度計(jì)例如水銀玻璃溫度計(jì)酒精溫度計(jì)熱電偶或熱電阻溫度計(jì)等它們常常以刻度的形式表示溫度的高低人們必須通過讀取刻度值的多少來測(cè)量溫度利用單片機(jī)和溫度傳感器構(gòu)成的電子式智能溫度計(jì)就可以直接測(cè)量溫度得到溫度的數(shù)字值既簡(jiǎn)單方便又直觀準(zhǔn)確在傳統(tǒng)的溫度測(cè)量系統(tǒng)設(shè)計(jì)中往往采用模擬技術(shù)進(jìn)行設(shè)計(jì)這樣就不可避免地遇到諸如引線誤差補(bǔ)償多點(diǎn)測(cè)量中的切換誤差和信號(hào)調(diào)理電路的誤差等問題而其中某一環(huán)節(jié)處理不當(dāng)就可能造成整個(gè)系統(tǒng)性能的下降隨著現(xiàn)代科學(xué)技術(shù)的飛速發(fā)展特別是大規(guī)模集成電路設(shè)計(jì)技術(shù)的發(fā)展微型化集成化數(shù)字化正成為傳感器發(fā)展的一個(gè)重要方向美國Dallas半導(dǎo)體公司推出的數(shù)字溫度傳感器DSl8B20具有獨(dú)特的單總線
14、接口僅需要占用一個(gè)通用IO端口即可完成與微處理器的通信用戶可編程設(shè)定912位的分辨率以上特性使得DSl8B20非常適用于構(gòu)建高精度多點(diǎn)溫度測(cè)量系統(tǒng)本課題設(shè)計(jì)的數(shù)字溫度計(jì)選用DS18B20數(shù)字溫度傳感器它與單片機(jī)組成一個(gè)測(cè)溫系統(tǒng)具有線路簡(jiǎn)單體積小等特點(diǎn)而且一條總線可連接器件構(gòu)成一個(gè)低電壓低功耗的多點(diǎn)數(shù)字測(cè)溫系統(tǒng)適合于惡劣環(huán)境下進(jìn)行現(xiàn)場(chǎng)溫度測(cè)量有廣泛的應(yīng)用前景AD轉(zhuǎn)換后就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理在顯示電路上就可以將被測(cè)溫度顯示出來這種設(shè)計(jì)需要用到AD轉(zhuǎn)換電路其中還涉及到電阻與溫度的對(duì)應(yīng)值的計(jì)算感溫電路比較麻煩而且在對(duì)采集的信號(hào)進(jìn)行放大時(shí)容易受溫度的影響出現(xiàn)較大的偏差 方案二進(jìn)而考慮到用溫度傳感器
15、在單片機(jī)電路設(shè)計(jì)中大多都是使用傳感器所以這是非常容易想到的所以可以采用一只溫度傳感器DS18B20此傳感器可以很容易直接讀取被測(cè)溫度值進(jìn)行轉(zhuǎn)換電路簡(jiǎn)單精度高軟硬件都以實(shí)現(xiàn)而且使用單片機(jī)的接口便于系統(tǒng)的再擴(kuò)展?jié)M足設(shè)計(jì)要求一條總線可連接器件構(gòu)成一個(gè)低電壓低功耗的多點(diǎn)數(shù)字測(cè)溫系統(tǒng)適合于惡劣環(huán)境下進(jìn)行現(xiàn)場(chǎng)溫度測(cè)量有廣泛的應(yīng)用前景 系統(tǒng)概述在日常生活及工農(nóng)業(yè)生產(chǎn)中經(jīng)常要用到溫度的檢測(cè)及控制傳統(tǒng)的測(cè)溫元件有熱電偶和熱電阻而熱電偶和熱電阻測(cè)出的一般都是電壓再轉(zhuǎn)換成對(duì)應(yīng)的溫度需要比較多的外部硬度支持硬件電路1復(fù)雜軟件調(diào)試復(fù)雜制作成本高故本設(shè)計(jì)使用集成傳感器DS18B20作為測(cè)溫傳感器系統(tǒng)主要分為溫度采集模塊數(shù)
16、據(jù)傳輸模塊報(bào)警模塊LED顯示模塊和供電模塊系統(tǒng)設(shè)計(jì)原理圖如圖2-1所示 圖-1 基于單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)原理圖DS18B20之后推出的一種改進(jìn)型智能溫度傳感器DS18B20作為檢測(cè)元件測(cè)溫范圍為55125最大分辨率可達(dá)00625DS18B20可以直接讀出被測(cè)溫度值而且采用3線制與單片機(jī)相連減少了外部的硬件電路具有低成本和易使用的特點(diǎn) 總體設(shè)計(jì)231 實(shí)現(xiàn)功能 采用數(shù)字溫度傳感器基于單片機(jī)的數(shù)字溫度計(jì)本溫度計(jì)屬 于多功能溫度計(jì)可以設(shè)置上下報(bào)警溫度當(dāng)溫度不在設(shè)置范圍內(nèi)時(shí)可以報(bào)警采集到的溫度數(shù)據(jù)通過數(shù)碼管顯示出來采集的溫度范圍為0到99度精確到1度232 擴(kuò)展功能 測(cè)溫范圍 -55125 誤差0
17、5以內(nèi)采用LED數(shù)碼管直讀顯示測(cè)溫范圍為-55125 的上線溫度和下線溫度 報(bào)警功能能在上限和下限溫度時(shí)蜂鳴器報(bào)警發(fā)光二極管閃爍LED數(shù)碼管直讀顯示當(dāng)溫度為負(fù)則顯示負(fù)號(hào)最低位顯示攝氏度符號(hào)C硬件設(shè)計(jì)總體電路設(shè)計(jì)溫度計(jì)電路設(shè)計(jì)原理圖如圖2-1所示控制器使用單片機(jī)溫度傳感器使用DS18B20用4位共陽LED數(shù)碼管以動(dòng)態(tài)掃描法實(shí)現(xiàn)溫度顯示采用USB燒入程序及供電用12M晶振電路還包括按鍵電路復(fù)位電路報(bào)警電路控制加溫電路單片機(jī)外設(shè)電路等整個(gè)系統(tǒng)的原理圖如下圖所示 主控制器STC89C52 STC89C52 是低電壓 高性能 CMOS 8 位單片機(jī) 片內(nèi)含 8k bytes 的可反復(fù)擦寫的 Flash
18、只讀程序存儲(chǔ)器和 256 bytes 的隨機(jī)存取數(shù) 據(jù)存儲(chǔ)器RAM 器件采用高密度非易失性存儲(chǔ)技術(shù)生產(chǎn)與標(biāo)準(zhǔn) MCS-51 指令系統(tǒng)及 8052 產(chǎn)品引腳兼容 片內(nèi)置通用 8 位中央處理器 CPU和 Flash 存儲(chǔ)單元功能強(qiáng)大 STC89C52 單片機(jī)適合于許多 較為復(fù)雜控制應(yīng)用場(chǎng)合STC89C52 單片機(jī)為 40 引腳雙列直插芯片 有四個(gè) IO 口 P0P1P2P3每一條 IO 線都能獨(dú)立地作輸出或輸 入STC89C52 PDIP 管腳封裝如圖 所示STC89c52 包含以下部分1一個(gè) 8 位微處理器 CPU 2片內(nèi)數(shù)據(jù)存儲(chǔ)器 RAM 和特殊功能寄存器 SFR 3片內(nèi)程序存儲(chǔ)器 ROM 4
19、兩個(gè)定時(shí)計(jì)數(shù)器 T0T1可用作定時(shí)器也可用以對(duì)外部脈 沖進(jìn)行計(jì)數(shù) 5四個(gè) 8 位可編程的并行 IO 端口每個(gè)端口既可作輸入也可 作輸出6一個(gè)串行端口用于數(shù)據(jù)的串行通信 7中斷控制系統(tǒng) 8內(nèi)部時(shí)鐘電路STC89c52部分引腳說明1 時(shí)鐘電路引腳XTAL1 和XTAL2XTAL2 18 腳 接外部晶體和微調(diào)電容的一端在8051 片內(nèi)它是振蕩電路反相放大器的輸出端振蕩電路的頻率就是晶體固有頻率若需采用外部時(shí)鐘電路時(shí)該引腳輸入外部時(shí)鐘脈沖要檢查80518031 的振蕩電路是否正常工作可用示波器查看XTAL2 端是否有脈沖信號(hào)輸出XTAL1 19 腳 接外部晶體和微調(diào)電容的另一端在片內(nèi)它是振蕩電路反相放
20、大器的輸入端在采用外部時(shí)鐘時(shí)該引腳必須接地控制信號(hào)引腳RSTALEPSEN 和EARSTVPD 9 腳 RST是復(fù)位信號(hào)輸入端高電平有效當(dāng)此輸入端保持備用電源的輸入端當(dāng)主電源Vcc 發(fā)生故障降低到低電平規(guī)定值時(shí)將5V 電源自動(dòng)兩個(gè)機(jī)器周期 24個(gè)時(shí)鐘振蕩周期 的高電平時(shí)就可以完成復(fù)位操作RST 引腳的第二功能是VPD即接入RST 端為RAM 提供備用電源以保證存儲(chǔ)在RAM 中的信息不丟失從而合復(fù)位后能繼續(xù)正常運(yùn)行ALEPROG 30 腳 地址鎖存允許信號(hào)端當(dāng)8051 上電正常工作后ALE 引腳不斷向外輸出正脈沖信號(hào)此頻率為振蕩器頻率fOSC 的16CPU 訪問片外存儲(chǔ)器時(shí)ALE 輸出信號(hào)作為鎖
21、存低8 位地址的控制信號(hào)平時(shí)不訪問片外存儲(chǔ)器時(shí)ALE 端也以振蕩頻率的16 固定輸出正脈沖因而ALE 信號(hào)可以用作對(duì)外輸出時(shí)鐘或定時(shí)信號(hào)如果想確定80518031 芯片的好壞可用示波器查看ALE端是否有脈沖信號(hào)輸出如有脈沖信號(hào)輸出則80518031 基本上是好的ALE 端的負(fù)載驅(qū)動(dòng)能力為8 個(gè)LS 型TTL 低功耗甚高速TTL 負(fù)載此引腳的第二功能PROG 在對(duì)片內(nèi)帶有4KB EPROM 的8751 編程寫入 固化程序 時(shí)作為編程脈沖輸入端PSEN 29 腳 程序存儲(chǔ)允許輸出信號(hào)端在訪問片外程序存儲(chǔ)器時(shí)此端定時(shí)輸出負(fù)脈沖作為讀片外存儲(chǔ)器的選通信號(hào)此引肢接EPROM 的OE 端 見后面幾章任何一
22、個(gè)小系統(tǒng)硬件圖 PSEN 端有效即允許讀出EPROMROM 中的指令碼PSEN 端同樣可驅(qū)動(dòng)8 個(gè)LS 型TTL 負(fù)載要檢查一個(gè)80518031 小系統(tǒng)上電后CPU 能否正常到EPROMROM 中讀取指令碼也可用示波器看PSEN 端有無脈沖輸出如有則說明基本上工作正常EAVpp 31 腳 外部程序存儲(chǔ)器地址允許輸入端固化編程電壓輸入端當(dāng)EA 引腳接高電平時(shí)CPU只訪問片內(nèi)EPROMROM并執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令但當(dāng)PC 程序計(jì)數(shù)器 的值超過0FFFH 對(duì)87518051 為4K 時(shí)將自動(dòng)轉(zhuǎn)去執(zhí)行片外程序存儲(chǔ)器內(nèi)的程序當(dāng)輸入信號(hào)EA 引腳接低電平 接地 時(shí)CPU 只訪問外部EPROMROM
23、并執(zhí)行外部程序存儲(chǔ)器中的指令而不管是否有片內(nèi)程序存儲(chǔ)器對(duì)于無片內(nèi)ROM 的8031 或8032需外擴(kuò)EPROM此時(shí)必須將EA 引腳接地此引腳的第二功能是Vpp 是對(duì)8751 片內(nèi)EPROM固化編程時(shí)作為施加較高編程電壓 一般12V21V 的輸入端3 輸入輸出端口P0P1P2P3P0口 P00P073932 腳 P0口是一個(gè)漏極開路的8 位準(zhǔn)雙向IO口作為漏極開路的輸出端口每位能驅(qū)動(dòng)8 個(gè)LS 型TTL 負(fù)載當(dāng)P0 口作為輸入口使用時(shí)應(yīng)先向口鎖存器 地址80H 寫入全1此時(shí)P0 口的全部引腳浮空可作為高阻抗輸入作輸入口使用時(shí)要先寫1這就是準(zhǔn)雙向口的含義在CPU 訪問片外存儲(chǔ)器時(shí)P0口分時(shí)提供低8
24、 位地址和8 位數(shù)據(jù)的復(fù)用總線在此期間P0口內(nèi)部上拉電阻有效P1口 P10P1718 腳 P1口是一個(gè)帶內(nèi)部上拉電阻的8 位準(zhǔn)雙向IO口P1口每位能驅(qū)動(dòng)4 個(gè)LS 型TTL 負(fù)載在P1口作為輸入口使用時(shí)應(yīng)先向P1口鎖存地址 90H 寫入全1此時(shí)P1口引腳由內(nèi)部上拉電阻拉成高電平P2口 P20P272128 腳 P2口是一個(gè)帶內(nèi)部上拉電阻的8 位準(zhǔn)雙向IO口P口每位能驅(qū)動(dòng)4個(gè)LS 型TTL 負(fù)載在訪問片外EPROMRAM 時(shí)它輸出高8 位地址P3口 P30P371017 腳 P3口是一個(gè)帶內(nèi)部上拉電阻的8 位準(zhǔn)雙向IO口P3口每位能驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載P3口與其它IO 端口有很大的區(qū)別它的每
25、個(gè)引腳都有第二功能如下P30 RXD 串行數(shù)據(jù)接收P31 RXD 串行數(shù)據(jù)發(fā)送P32 INT0 外部中斷0輸入P33 INT1 外部中斷1輸入P34 T0 定時(shí)計(jì)數(shù)器0的外部計(jì)數(shù)輸入P35 T1 定時(shí)計(jì)數(shù)器1的外部計(jì)數(shù)輸入P36 WR 外部數(shù)據(jù)存儲(chǔ)器寫選通P37 RD 外部數(shù)據(jù)存儲(chǔ)器讀選通 顯示電路顯示電路采用8位共陰極LED數(shù)碼管其中的前5位P0口高電平有效作為段碼輸出并作為數(shù)碼管的驅(qū)動(dòng)P2口的低3位作為數(shù)碼管的位選端采用動(dòng)態(tài)掃描的方式顯示如圖3-2所示1 74HC573 11腳接ACC鎖存不起作用相當(dāng)于直通相應(yīng)的段賦值1有效2 74HC138 ABC賦值 07則輸出端分別是Y0Y7 置0如
26、P2 0則Y0 0 P2 6則Y6 0即選通第七個(gè)數(shù)碼管 圖3-2顯示電路 報(bào)警溫度調(diào)整按鍵本系統(tǒng)設(shè)計(jì)個(gè)按鍵采用查詢方式均采用軟 件消抖硬件連接如圖所示按鍵圖3-4 復(fù)位按鍵報(bào)警或0需要直續(xù)賦值變化的電平Led等的正極都是接5V的高電平所以負(fù)極低電平時(shí)led燈亮反之則滅Led燈D2連接單片機(jī)P10口當(dāng)溫度超過設(shè)定的上下限溫度時(shí)D2閃爍報(bào)警當(dāng)達(dá)到上下限溫度時(shí)報(bào)警led燈閃爍電路如下 圖3-6 LED電路315控制加溫電路RELAY-SPDT這個(gè)繼電器是控制加溫電路工作狀態(tài)的插座J12的12腳連到加溫電路的電源兩端繼電器觸電K1作為加溫電路的電源開關(guān)當(dāng)溫度超過設(shè)定的上下限溫度時(shí)程序控制繼電器自動(dòng)打
27、開控制加溫或者減溫系統(tǒng)進(jìn)行工作當(dāng)溫度恢復(fù)正常值則繼電器自動(dòng)關(guān)閉 圖3-7 繼電器控制電路 DS18B20溫度傳感器DS18B20溫度傳感器是美國DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比它能直接讀出被測(cè)溫度并且可根據(jù)實(shí)際要求通過簡(jiǎn)單的編程實(shí)現(xiàn)912位的數(shù)字值讀數(shù)方式DS18B20的性能特點(diǎn)如下·獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信·實(shí)際應(yīng)用中不需要外部任何元器件即可實(shí)現(xiàn)測(cè)溫·可通過數(shù)據(jù)線供電電壓范圍為3055V·在DS18B20中的每個(gè)器件上都有獨(dú)一無二的序列號(hào)·溫度以9或12位數(shù)字量讀出
28、3;報(bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度 溫度報(bào)警條件 的器件·負(fù)電壓特性電源極性接反時(shí)溫度計(jì)不會(huì)因發(fā)熱而燒毀但不能工作 圖3-7 DS18B20內(nèi)部結(jié)構(gòu)圖 DS18B20采用3腳PR35封裝或8腳SOIC封裝其內(nèi)部結(jié)構(gòu)框圖如圖3-7所示64位ROM的位結(jié)構(gòu)如圖3-8所示開始8位是產(chǎn)品類型的編號(hào)接著是每個(gè)器件的惟一的序號(hào)共有48位最后8位是前56位的CRC檢驗(yàn)碼這也是多個(gè)DS18B20可以采用一線進(jìn)行通信的原因非易失性溫度報(bào)警觸發(fā)器TH和TL可通過軟件寫入戶報(bào)警上下限 8位檢驗(yàn)CRC48位序列號(hào)8位工廠代碼10HMSB LSB MSB LSB MSB LSB 圖3-8 64位ROM
29、結(jié)構(gòu)圖DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的EERAM高速暫存RAM的結(jié)構(gòu)為8字節(jié)的存儲(chǔ)器結(jié)構(gòu)如圖3所示 頭2個(gè)字節(jié)包含測(cè)量得的溫度信息第3和第4字節(jié)是TH和TL的拷貝是易失的每次上電復(fù)位時(shí)被刷新第5個(gè)字節(jié)為配置寄存器9它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辯率DS18B20工作時(shí)按此寄存器中的分辯率將溫度轉(zhuǎn)換為相應(yīng)精度的數(shù)值該字節(jié)各位的定義如圖3-8所示低5位一直為1TM是測(cè)試模式位用于設(shè)置DS18B20在工作模式還是在測(cè)試模式在DS18B20出廠時(shí)該位被設(shè)置為0用戶不要去改動(dòng)R1和R0決定溫度轉(zhuǎn)換的精度位數(shù)即用來設(shè)置分辯率定義方法見表1 溫度 L
30、SB溫度 MSBTH用戶字節(jié)1TL用戶字節(jié)2配置寄存器保留保留保留CRC1字節(jié)2字節(jié)4字節(jié) TH用戶字節(jié)15字節(jié) TH用戶字節(jié)26字節(jié) EEROM7字節(jié)8字節(jié)9字節(jié) TMR1R011111圖3-9 高速暫存RAM結(jié)構(gòu)圖 圖3-10 配置寄存器 表1 DS18B20分辯率的定義規(guī)定R1R0分辯率位溫度最大轉(zhuǎn)換時(shí)間ms0099375211 0 110187510113751112750由表1可見DS18B20溫度轉(zhuǎn)換的時(shí)間比較長而且設(shè)定的分辯率越高所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間就越長因此在實(shí)際應(yīng)用中要將分辯率和轉(zhuǎn)換時(shí)間權(quán)衡考慮高速暫存RAM的第678字節(jié)保留未用表現(xiàn)為全邏輯1轉(zhuǎn)換完成后溫度值就以16位帶
31、符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第12字節(jié)單片機(jī)可以通過單線接口讀出該數(shù)據(jù)讀數(shù)據(jù)時(shí)低位在先高位在后數(shù)據(jù)格式以00625LSB形式表示溫度值格式如圖4-6所示當(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)制值表2是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù) 2321202-12-22-32-4LS字節(jié) S S S SS262524MS字節(jié)圖3-11溫度數(shù)據(jù)值格式DS18B20完成溫度轉(zhuǎn)換后就把測(cè)得的溫度值與RAM中的THTL字節(jié)內(nèi)容作比較若T TH或T TL則將該器件內(nèi)的報(bào)警標(biāo)志位置位并對(duì)主機(jī)發(fā)出的報(bào)警
32、搜索命令作出響應(yīng)因此可用多只DS18B20同時(shí)測(cè)量溫度并進(jìn)行報(bào)警搜索主機(jī)根據(jù)ROM的前56位來計(jì)算CRC值并和存入DS18B20的CRC值作比較以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確DS18B20的測(cè)量原理如圖3-11所示圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器1高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器2的脈沖輸入圖中還隱含著計(jì)數(shù)門當(dāng)計(jì)數(shù)門打開時(shí)DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)表2DS18B20溫度與測(cè)得值對(duì)應(yīng)表溫度二進(jìn)制表示十六進(jìn)制表示1250000 0111 1101 000007D0H850000
33、 0101 0101 00000550H2506250000 0001 1001 00010191H101250000 0000 1010 001000A2H050000 0000 0000 10000008H00000 0000 0000 00000000H051111 1111 1111 1000FFF8H101251111 1111 0101 1110FF5EH2506251111 1110 0110 1111FE6FH551111 1100 1001 0000FC90H進(jìn)而完成溫度測(cè)量計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定每次測(cè)量前首先將55所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器1溫度寄
34、存器中減法計(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è)溫度值圖3-11中的斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線形性其輸出用于修正減法計(jì)數(shù)器的預(yù)置值只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過程直到溫度寄存器值達(dá)到被測(cè)溫度值 另外由于DS18B20單線通信功能是分時(shí)完成的它有嚴(yán)格的時(shí)隙概念因此讀寫時(shí)序很重要系統(tǒng)對(duì)DS18B2
35、0的各種操作必須按協(xié)議進(jìn)行操作協(xié)議為初始化DS18B20 發(fā)復(fù)位脈沖 發(fā)ROM功能命令 發(fā)存儲(chǔ)器操作命令 處理數(shù)據(jù)45 DS18B20的其他介紹DS18B20的存儲(chǔ)器包括高速暫存器RAM和可電擦除RAM可電擦除RAM又包括溫度觸發(fā)器TH和TL以及一個(gè)配置寄存器存儲(chǔ)器能完整的確定一線端口的通訊數(shù)字開始用寫寄存器的命令寫進(jìn)寄存器接著也可以用讀寄存器的命令來確認(rèn)這些數(shù)字當(dāng)確認(rèn)以后就可以用復(fù)制寄存器的命令來將這些數(shù)字轉(zhuǎn)移到可電擦除RAM中當(dāng)修改過寄存器中的數(shù)時(shí)這個(gè)過程能確保數(shù)字的完整性高速暫存器RAM是由8個(gè)字節(jié)的存儲(chǔ)器組成第一和第二個(gè)字節(jié)是溫度的顯示位第三和第四個(gè)字節(jié)是復(fù)制TH和TL同時(shí)第三和第四個(gè)
36、字節(jié)的數(shù)字可以更新第五個(gè)字節(jié)是復(fù)制配置寄存器同時(shí)第五個(gè)字節(jié)的數(shù)字可以更新六七八三個(gè)字節(jié)是計(jì)算機(jī)自身使用用讀寄存器的命令能讀出第九個(gè)字節(jié)這個(gè)字節(jié)是對(duì)前面的八個(gè)字節(jié)進(jìn)行校驗(yàn)DS18B20采用一線通信接口因?yàn)橐痪€通信接口必須在先完成ROM設(shè)定否則記憶和控制功能將無法使用主要首先提供以下功能命令之一讀ROMROM匹配搜索ROM跳過ROM報(bào)警檢查這些指令操作作用在沒有一個(gè)器件的64位光刻ROM序列號(hào)可以在掛在一線上多個(gè)器件選定某一個(gè)器件同時(shí)總線也可以知道總線上掛有有多少什么樣的設(shè)備DS18B20可以使用外部電源VDD也可以使用內(nèi)部的寄生電源當(dāng)VDD端口接30V55V的電壓時(shí)是使用外部電源當(dāng)VDD端口接地
37、時(shí)使用了內(nèi)部的寄生電源無論是內(nèi)部寄生電源還是外部供電IO口線要接5K左右的上拉電阻DS18B20電路設(shè)計(jì) DS18B20 最大的特點(diǎn)是單總線數(shù)據(jù)傳輸方式DS18B20 的數(shù)據(jù)IO 均由同一條線來完 成DS18B20 的電源供電方式有2 種 外部供電方式和寄生電源方式工作于寄生電源方 式時(shí) VDD 和GND 均接地 他在需要遠(yuǎn)程溫度探測(cè)和空間受限的場(chǎng)合特別有用 原理是當(dāng) 1 W ire 總線的信號(hào)線DQ 為高電平時(shí) 竊取信號(hào)能量給DS18B20 供電 同時(shí)一部分能量給 內(nèi)部電容充電 當(dāng)DQ為低電平時(shí)釋放能量為DS18B20 供電但寄生電源方式需要強(qiáng)上拉電 路 軟件控制變得復(fù)雜 特別是在完成溫度轉(zhuǎn)
38、換和拷貝數(shù)據(jù)到E2PROM 時(shí) 同時(shí)芯片的性 能也有所降低因此 在條件允許的場(chǎng)合 盡量采用外供電方式無論是內(nèi)部寄生電源還是 外部供電IO口線要接5K左右的上拉電在這里采用前者方式供電DS18B20與芯片連 接電路如圖 32所示圖312圖 DS18B20與單片機(jī)的連接外部電源供電方式是DS18B20最佳的工作方式工作穩(wěn)定可靠抗干擾能力強(qiáng)而且電 路也比較簡(jiǎn)單 可以開發(fā)出穩(wěn)定可靠的多點(diǎn)溫度監(jiān)控系統(tǒng) 在開發(fā)中使用外部電源供電方式 畢竟比寄生電源方式只多接一根VCC引線在外接電源方式下可以充分發(fā)揮DS18B20寬電 源電壓范圍的優(yōu)點(diǎn)即使電源電壓VCC 降到3V 時(shí)依然能夠保證溫度量精度 由于DS18B2
39、0 只有一根數(shù)據(jù)線因此它和主機(jī)單片機(jī)通信是需要串行通信而 89C52 有兩個(gè)串行端口所以可以不用軟件來模擬實(shí)現(xiàn)經(jīng)過單線接口訪問DC18B20 必 須遵循如下協(xié)議初始化ROM 操作命令存儲(chǔ)器操作命令和控制操作要使傳感器工作 一切處理均嚴(yán)格按照時(shí)序 圖41 主程序流程圖讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié)在讀出時(shí)需進(jìn)行CRC校驗(yàn)校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫其程序流程圖如圖42示 圖4-3溫度轉(zhuǎn)換命令流程圖 圖4-2 讀出溫度子程序流程圖 溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令當(dāng)采用12位分辨率時(shí)轉(zhuǎn)換時(shí)間約為750ms在本程序設(shè)計(jì)中采用1s顯示程序延時(shí)
40、法等待轉(zhuǎn)換的完成溫度轉(zhuǎn)換命令子程序流程圖如上圖圖43所示計(jì)算溫度子程序與報(bào)警程序計(jì)算溫度子程序?qū)AM中讀取值進(jìn)行BCD碼的轉(zhuǎn)換運(yùn)算并進(jìn)行溫度值正負(fù)的判定其程序流程圖如圖44所示顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對(duì)分離后的溫度顯示數(shù)據(jù)進(jìn)行刷新操作當(dāng)標(biāo)志位位為1時(shí)將符號(hào)顯示位移入第一位程序流程圖如圖45 圖44計(jì)算溫度流程圖 圖45顯示數(shù)據(jù)刷新流程圖 按鍵掃描處理子程序按鍵采用掃描查詢方式設(shè)置標(biāo)志位當(dāng)標(biāo)志位為1時(shí)顯示設(shè)置溫度否則顯示當(dāng)前溫度如下圖46示 圖4-6按鍵掃描處理圖 系統(tǒng)調(diào)試與運(yùn)行本人主要負(fù)責(zé)的內(nèi)容是寫程序所以系統(tǒng)的調(diào)試以程序?yàn)橹鬈浖{(diào)試可以先編寫顯示程序并進(jìn)行硬件的性檢驗(yàn)然后
41、分別進(jìn)行主程序讀出溫度子程序溫度轉(zhuǎn)換命令子程序計(jì)算溫度子程序顯示數(shù)據(jù)刷新等子程序的編程及調(diào)試由于DS18B20與單片機(jī)采用串行數(shù)據(jù)傳送因此對(duì)DS18B20進(jìn)行讀寫編程時(shí)必須嚴(yán)格地保證讀寫時(shí)序否則將無法讀取測(cè)量結(jié)果本程序采用單片機(jī)C語言編寫用EWAVR-KS4編譯器編程調(diào)試軟件調(diào)試到能顯示溫度值而且在有溫度變化時(shí)顯示溫度能改變就基本完成55125的測(cè)量范圍使得該溫度計(jì)完全適合一般的應(yīng)用場(chǎng)合其低電壓供電特性可做成用電池供電的手持電子溫度計(jì) DS18B20溫度計(jì)還可以在高低溫報(bào)警遠(yuǎn)距離多點(diǎn)測(cè)量控制等方面進(jìn)行應(yīng)用開發(fā)但在實(shí)際設(shè)計(jì)中應(yīng)注意以下問題1DS18B20工作時(shí)電流高達(dá)15mA總線上掛接點(diǎn)數(shù)較多且
42、同時(shí)進(jìn)行轉(zhuǎn)換時(shí)要考慮增加總線驅(qū)動(dòng)可用單片機(jī)端口在溫度轉(zhuǎn)換時(shí)導(dǎo)通一個(gè)MOSFET供電2連接DS18B20的總線電纜是有長度限制的因此在用DS18B20進(jìn)行長距離測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要充分考慮總線分布電容和阻抗匹配等問題3在DS18B20測(cè)溫度程序設(shè)計(jì)中向DS18B20發(fā)出溫度轉(zhuǎn)換命令后程序總要等待DS18B20的返回信號(hào)一旦某個(gè)DS18B20接觸不好或斷線當(dāng)程序讀該DS18B20時(shí)將沒有返回信號(hào)程序進(jìn)入死循環(huán)這一點(diǎn)在進(jìn)行DS18B20硬件連接和軟件設(shè)計(jì)時(shí)要給予一定的重視 結(jié)論本設(shè)計(jì)方案達(dá)到了任務(wù)書的要求并擴(kuò)展了功能實(shí)現(xiàn)了數(shù)字溫度計(jì)的設(shè)計(jì)實(shí)現(xiàn)了較為精確的測(cè)溫功能1對(duì)被測(cè)對(duì)象的測(cè)溫結(jié)果精度可以達(dá)到
43、7;05°C突出了本設(shè)計(jì)的特點(diǎn)2所測(cè)溫度值的范圍在55125符合指定工作溫度范圍3由蜂鳴器報(bào)警電路控制的報(bào)警功能也調(diào)試實(shí)現(xiàn)并在LED上正確顯示了溫度值繼電器控制成功 本設(shè)計(jì)中的數(shù)字計(jì)直接測(cè)的方式該計(jì)的靈敏度高響應(yīng)時(shí)間短抗干擾能力強(qiáng)而且具有測(cè)量范圍大讀數(shù)方便優(yōu)點(diǎn)在接通電源時(shí)數(shù)碼管上顯示的數(shù)字會(huì)不清晰或者出現(xiàn)抖動(dòng)這是由于電源電壓不穩(wěn)或是接觸不良所引起可以使用電容的方法來消除上述現(xiàn)象該系統(tǒng)成本低器件均為常用元件有很高的工程應(yīng)用價(jià)值如稍加改動(dòng)本系統(tǒng)致 謝本論文的工作是在我的導(dǎo)師楊端的悉心指導(dǎo)下完成的楊老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和科學(xué)的工作方法給了我極大的幫助和影響在此衷心感謝三年來龐老師對(duì)我的關(guān)心和
44、指導(dǎo)楊老師悉心指導(dǎo)我們完成了畢業(yè)論文工作在學(xué)習(xí)上和生活上都給予了我很大的關(guān)心和幫助在此向楊老師表示衷心的謝意龐教授對(duì)于我的論文提出了許多的寶貴意見在此表示衷心的感謝在撰寫論文期間馬同學(xué)徐學(xué)姐等同學(xué)對(duì)我論文中的格式研究工作給予了熱情幫助在此向他們表達(dá)我的感激之情另外也感謝家人朋友他們的理解和支持使我能夠在學(xué)校專心完成我的學(xué)業(yè) 附 錄A電路總原理圖 B程序清單include include _nop_ 延時(shí)函數(shù)用define dm P0 段碼輸出口define uchar unsigned chardefine uint unsigned intsbit RELAY P11sbit led1 P1
45、2sbit DQ P13 溫度輸入口sbit led P10sbit beep P17 蜂鳴器和指示燈sbit set P30 溫度設(shè)置切換鍵sbit add P31 溫度加sbit dec P32 溫度減int temp1 0 顯示當(dāng)前溫度和設(shè)置溫度的標(biāo)志位為0 時(shí)顯示當(dāng)前溫度uint huint tempuchar ruchar high 29low 15uchar signuchar q 0uchar tt 0uchar scale溫度小數(shù)部分用查表法uchar code ditab16 0x000x010x010x020x030x030x040x040x050x060x060x070x
46、080x080x090x09 小數(shù)斷碼表uchar code table_dm12 0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f0x000x40 共陰LED 段碼表"0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "不亮" "-"uchar code table_dm21 0x39 uchar
47、 table_dm1 0xbf0x860xdb0xcf0xe60xed0xfd0x870xff0xef 個(gè)位帶小數(shù)點(diǎn)的斷碼表uchar data temp_data2 0x000x00 讀出溫度暫放uchar data display5 0x000x000x000x000x00 顯示單元數(shù)據(jù)共4 個(gè)數(shù)據(jù)和一個(gè)運(yùn)算暫用11us 延時(shí)函數(shù)void delay uint t for t 0t- void scan int jfor j 0j 5j switch j delay 50 case 0 P0 0x39P2 4delay 100 case 1 P0 table_dmdisplay0P2 3d
48、elay 100 xiaoshucase 2 P0 table_dm1display1P2 2delay 100 geweicase 3 P0 table_dmdisplay2P2 1delay 100 shiweicase 4 P0 table_dmdisplay3P2 0delay 100 baiwei DS18B20 復(fù)位函數(shù)ow_reset void char presence 1while presence while presence DQ 1_nop_ _nop_ 從高拉倒低DQ 0delay 50 550 usDQ 1delay 6 66 uspresence DQ prese
49、nce 0 復(fù)位成功繼續(xù)下一步 delay 45 延時(shí)500 uspresence DQ DQ 1 拉高電平 DS18B20 寫命令函數(shù)向1-WIRE 總線上寫1 個(gè)字節(jié)void write_byte uchar val uchar ifor i 8i 0i- DQ 1_nop_ _nop_ 從高拉倒低DQ 0_nop_ _nop_ _nop_ _nop_ 5 usDQ val0x01 最低位移出delay 6 66 usval val2 右移1 位 DQ 1delay 1 DS18B20 讀1 字節(jié)函數(shù)從總線上取1 個(gè)字節(jié)uchar read_byte void uchar iuchar v
50、alue 0for i 8i 0i- DQ 1_nop_ _nop_ value 1DQ 0_nop_ _nop_ _nop_ _nop_ 4 usDQ 1_nop_ _nop_ _nop_ _nop_ 4 usif DQ value 0x80delay 6 66 us DQ 1return value 讀出溫度函數(shù)read_temp ow_reset 總線復(fù)位delay 200 write_byte 0xcc 發(fā)命令write_byte 0x44 發(fā)轉(zhuǎn)換命令ow_reset delay 1 write_byte 0xcc 發(fā)命令write_byte 0xbe temp_data0 read_
51、byte 讀溫度值的第字節(jié)temp_data1 read_byte 讀溫度值的高字節(jié)temp temp_data1temp 8temp temptemp_data0 兩字節(jié)合成一個(gè)整型變量return temp 返回溫度值 溫度數(shù)據(jù)處理函數(shù) work_temp uint tem uchar n 0if tem 6348 溫度值正負(fù)判斷 tem 65536-temn 1 負(fù)溫度求補(bǔ)碼標(biāo)志位置1display4 tem0x0f 取小數(shù)部分的值display0 ditabdisplay4 存入小數(shù)部分顯示值display4 tem 4 取中間八位即整數(shù)部分的值display3 display4100
52、 取百位數(shù)據(jù)暫存display1 display4100 取后兩位數(shù)據(jù)暫存display2 display110 取十位數(shù)據(jù)暫存display1 display110 個(gè)位數(shù)據(jù)r display1display210display3100符號(hào)位顯示判斷if display3 display3 0x0a 最高位為0 時(shí)不顯示if display2 display2 0x0a 次高位為0 時(shí)不顯示 if n display3 0x0b 負(fù)溫度時(shí)最高位顯示"-" void BEEP if r highr 129 r low beep beepRELAY 1led leddelay 300 else beep 0RELAY 0led 1 if r low beep beepRELAY 1led1 led1d
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年心理咨詢師題庫及答案(易錯(cuò)題)
- 【中考生物】主題四 植物的生活 專題1 綠色開花植物的生命周期
- 2025年個(gè)人住宅安全設(shè)施維修與更換合同4篇
- 2025年度智慧圖書館建設(shè)承包合同3篇
- 2024年09月江蘇蘇州銀行數(shù)字銀行總部網(wǎng)絡(luò)金融部招考(155)號(hào)筆試歷年參考題庫附帶答案詳解
- 2024離婚合同標(biāo)準(zhǔn)文本范例版B版
- 2024年06月浙江中國人民銀行浙江省分行系統(tǒng)業(yè)務(wù)操作崗位聘用制員工招考筆試歷年參考題庫附帶答案詳解
- 2024年05月浦發(fā)銀行溫州分行社會(huì)招考信息筆試歷年參考題庫附帶答案詳解
- 2025年度互聯(lián)網(wǎng)醫(yī)院服務(wù)與患者隱私保護(hù)合同4篇
- 2025年套篩項(xiàng)目投資可行性研究分析報(bào)告
- 2024年縣鄉(xiāng)教師選調(diào)進(jìn)城考試《教育學(xué)》題庫及完整答案(考點(diǎn)梳理)
- 車借給別人免責(zé)協(xié)議書
- 河北省興隆縣盛嘉恒信礦業(yè)有限公司李杖子硅石礦礦山地質(zhì)環(huán)境保護(hù)與治理恢復(fù)方案
- 第七章力與運(yùn)動(dòng)第八章壓強(qiáng)第九章浮力綜合檢測(cè)題(一)-2023-2024學(xué)年滬科版物理八年級(jí)下學(xué)期
- 醫(yī)療機(jī)構(gòu)診療科目名錄(2022含注釋)
- 微視頻基地策劃方案
- 光伏項(xiàng)目質(zhì)量評(píng)估報(bào)告
- 八年級(jí)一本·現(xiàn)代文閱讀訓(xùn)練100篇
- 2023年電池系統(tǒng)測(cè)試工程師年度總結(jié)及下一年計(jì)劃
- 應(yīng)急預(yù)案評(píng)分標(biāo)準(zhǔn)表
- 《既有建筑結(jié)構(gòu)安全監(jiān)測(cè)技術(shù)標(biāo)準(zhǔn)》(征求意見稿)及條文說明
評(píng)論
0/150
提交評(píng)論