版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 溫度的檢測與控制是工業(yè)生產(chǎn)過程中比較典型的應(yīng)用。本設(shè)計(jì)以AT89C52單片機(jī)為核心,采用DS18B20溫度傳感器檢測溫度,由溫度采集、溫度顯示,溫度報(bào)警等功能模塊組成?;陬}目基本要求,本系統(tǒng)對溫度采集和溫度顯示系統(tǒng)行了重點(diǎn)設(shè)計(jì)。本系統(tǒng)大部分功能能由軟件實(shí)現(xiàn),吸收了硬件軟件化的思想。實(shí)際操作時(shí),各功能在開發(fā)板上也能完美實(shí)現(xiàn)。
2、本系統(tǒng)實(shí)現(xiàn)了要求的基本功能,其余發(fā)揮部分也能實(shí)現(xiàn)。</p><p> 關(guān)鍵字:AT89C52單片機(jī)、DS18B20溫度傳感器、數(shù)碼管顯示、溫度采集</p><p><b> 目 錄</b></p><p><b> 一.緒論</b></p><p><b> 二.設(shè)計(jì)目的&l
3、t;/b></p><p><b> 三.設(shè)計(jì)要求</b></p><p><b> 四.設(shè)計(jì)思路</b></p><p> 五.系統(tǒng)的硬件構(gòu)成及功能</p><p><b> 5.1主控制器</b></p><p><b&g
4、t; 5.2顯示電路</b></p><p><b> 5.3溫度傳感器</b></p><p> 六.系統(tǒng)整體硬件電路</p><p><b> 七.系統(tǒng)程序設(shè)計(jì)</b></p><p> 八.測量及其結(jié)果分析</p><p><b&g
5、t; 九.設(shè)計(jì)心得體會</b></p><p><b> 十.參考文獻(xiàn)</b></p><p><b> 附錄1 源程序</b></p><p> 附錄2 元件清單及PCB圖</p><p><b> 一.緒 論</b></p><
6、p> 隨著時(shí)代的發(fā)展,控制智能化,儀器小型化,功耗微量化得到廣泛關(guān)注。單片機(jī)控制系統(tǒng)無疑在這些忙面起到了舉足輕重的作用。單片機(jī)的應(yīng)用系統(tǒng)設(shè)計(jì)業(yè)已成為新的技術(shù)熱點(diǎn),其中數(shù)字溫度計(jì)就是一個(gè)典型的例子。 </p><p> 人民的生活與環(huán)境的溫度息息相關(guān),在工業(yè)生產(chǎn)過程中需要實(shí)時(shí)測量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開溫度的測量,因此研究溫度的測量方法和裝置具有重要的意義。</p><p&
7、gt; 測量溫度的關(guān)鍵是溫度傳感器,溫度傳感器的發(fā)展經(jīng)歷了三個(gè)發(fā)展階段:</p><p> ?、賯鹘y(tǒng)的分立式溫度傳感器</p><p> ?、谀M集成溫度傳感器</p><p> ③智能集成溫度傳感器。</p><p> 目前的智能溫度傳感器(亦稱數(shù)字溫度傳感器)是在20世紀(jì)90年代中期問世的,它是微電子技術(shù)、計(jì)算機(jī)技術(shù)和自動測試技術(shù)(
8、ATE)的結(jié)晶,特點(diǎn)是能輸出溫度數(shù)據(jù)及相關(guān)的溫度控制量,適配各種微控制器(MCU)。社會的發(fā)展使人們對傳感器的要求也越來越高,現(xiàn)在的溫度傳感器正在基于單片機(jī)的基礎(chǔ)上從模擬式向數(shù)字式,從集成化向智能化、網(wǎng)絡(luò)化的方向飛速發(fā)展,并朝著高精度、多功能、總線標(biāo)準(zhǔn)化、高可靠性及安全性、開發(fā)虛擬傳感器和網(wǎng)絡(luò)傳感器、研制單片測溫系統(tǒng)等高科技的方向迅速發(fā)展,與傳統(tǒng)的溫度計(jì)相比,其具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確,輸出溫度采用數(shù)字顯示,主要用于對測溫要求
9、比較準(zhǔn)確的場所,或科研實(shí)驗(yàn)室使用。該設(shè)計(jì)控制器使用ATMEL公司的AT89C52單片機(jī),測溫傳感器使用DALLAS公司DS18B20,用數(shù)碼管來實(shí)現(xiàn)溫度顯示。</p><p><b> 二.設(shè)計(jì)目的</b></p><p> 1.理解掌握MCS-51系列單片機(jī)的功能和實(shí)際應(yīng)用。</p><p> 2.掌握仿真開發(fā)軟件的使用。</p&
10、gt;<p> 3.掌握數(shù)字式溫度計(jì)電路的設(shè)計(jì)、組裝與調(diào)試方法。</p><p><b> 三.設(shè)計(jì)要求</b></p><p> 1.以MCS-51系列單片機(jī)為核心器件,組成一個(gè)數(shù)字式溫度計(jì)。</p><p> 2.采用數(shù)字式溫度傳感器為檢測器件,進(jìn)行單點(diǎn)溫度檢測,檢測精度為0.5</p><p>
11、; 3.溫度顯示采用4位LED數(shù)碼管顯示,三位整數(shù),一位小數(shù)。</p><p> 4.具有鍵盤輸入上下限功能,超過上下限溫度時(shí),進(jìn)行聲音報(bào)警。</p><p><b> 四.設(shè)計(jì)思路</b></p><p> 1.根據(jù)設(shè)計(jì)要求,選擇AT89C52單片機(jī)為核心器件。</p><p> 2.溫度檢測器件采用DS18
12、B20數(shù)字式溫度傳感器。與單片機(jī)的接口為P3.6引腳。</p><p> 3.鍵盤采用獨(dú)立式按鍵,由三個(gè)按鍵組成,分別是:設(shè)置鍵(SET),加一建(+1),確認(rèn)鍵(RET)。</p><p> SET鍵(上下限溫度設(shè)置鍵):當(dāng)該鍵按下時(shí),進(jìn)入上下限溫度設(shè)置功能。通過P3.1引腳接入。</p><p> +1鍵(加一調(diào)整鍵):在輸入上下限溫度時(shí),該鍵按下一次,被
13、調(diào)整位加一。通過P3.2引腳接入。</p><p> RET鍵(確認(rèn)鍵):當(dāng)該鍵按下時(shí),指向下一個(gè)要調(diào)整的位。通過P3.3引腳接入。</p><p> 4.聲音報(bào)警蜂鳴器通過P1.7引腳接入。</p><p> 硬件電路設(shè)計(jì)總體框圖為圖4.1:</p><p><b> 圖4.1</b></p>&
14、lt;p> 五、系統(tǒng)的硬件構(gòu)成及功能</p><p><b> 1.主控制器</b></p><p> 單片機(jī)AT89S52具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,使用Atmel公司高密度非易失性存儲器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。很適合便
15、攜手持式產(chǎn)品的設(shè)計(jì)使用。</p><p> AT89S52在仿真軟件中的圖像為圖5.1</p><p><b> 圖5.1</b></p><p><b> 2.顯示電路</b></p><p> 顯示電路采用四位共陽LED數(shù)碼管,從P3口RXD,TXD串口輸出段碼。</p>
16、<p> LED數(shù)碼管在仿真軟件中如圖5.2</p><p><b> 圖5.2</b></p><p><b> 3.溫度傳感器</b></p><p> DS18B20是美國DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實(shí)際要
17、求通過簡單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式。DS18B20的性能特點(diǎn)如下:</p><p> ? 獨(dú)特的單線接口僅需一個(gè)端口引腳進(jìn)行通訊</p><p> ? 簡單的多點(diǎn)分布應(yīng)用</p><p><b> ? 無需外部器件</b></p><p> ? 可通過數(shù)據(jù)線供電</p><p>
18、;<b> ? 零待機(jī)功耗</b></p><p> ? 測溫范圍-55~+125℃,以0.5℃遞增。華氏器件-67~+2570F,以0.90F 遞增</p><p> ? 溫度以9 位數(shù)字量讀出</p><p> ? 溫度數(shù)字量轉(zhuǎn)換時(shí)間200ms(典型值)</p><p> ? 用戶可定義的非易失性溫度報(bào)警設(shè)
19、置</p><p> ? 報(bào)警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件。</p><p> DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列、各種封裝形式如圖 3.3.1所示,DQ 為數(shù)據(jù)輸入/輸出引腳。開漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以向器件提供電源;GND為地信
20、號;VDD為可選擇的VDD引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。其電路圖如圖5.3.1所示.。 </p><p> 圖5.3.1 外部封裝形式 </p><p> 在仿真軟件中如圖5.3.2所示</p><p><b> 圖5.3.2</b></p><p>
21、 DS18B20的測溫原理如圖5.3.3所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小用于產(chǎn)生固定頻率的脈沖信號送給減法計(jì)數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號作為減法計(jì)數(shù)器2的脈沖輸入,圖中還隱含著計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí),DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖后進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測量.計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55 ℃所對應(yīng)的基數(shù)分別置入減法計(jì)數(shù)器1和溫
22、度寄存器中,減法計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55 ℃所對應(yīng)的一個(gè)基數(shù)值。</p><p> 減法計(jì)數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器1的預(yù)置值減到0時(shí)溫度寄存器的值將加1,減法計(jì)數(shù)器 1的預(yù)置將重新被裝入,減法計(jì)數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測溫圖5.3.3中的斜率累加器
23、用于補(bǔ)償和修正測溫過程中的非線性其輸出用,于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá)到被測溫度值,這就是DS18B20的測溫原理。</p><p> 另外,由于DS18B20單線通信功能是分時(shí)完成的,有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對DS18B20的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為:初始化DS18B20(發(fā)復(fù)位脈沖)→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。
24、</p><p><b> 圖5.3.3 </b></p><p> 在正常測溫情況下,DS1820的測溫分辨力為0.5℃,可采用下述方法獲得高分辨率的溫度測量結(jié)果:首先用DS1820提供的讀暫存器指令(BEH)讀出以0.5℃為分辨率的溫度測量結(jié)果,然后切去測量結(jié)果中的最低有效位(LSB),得到所測實(shí)際溫度的整數(shù)部分Tz,然后再用BEH指令取計(jì)數(shù)器1的計(jì)數(shù)剩余值
25、Cs和每度計(jì)數(shù)值CD。考慮到DS1820測量溫度的整數(shù)部分以0.25℃、0.75℃為進(jìn)位界限的關(guān)系,實(shí)際溫度Ts可用下式計(jì)算:</p><p> 表1.部分溫度值對應(yīng)的二進(jìn)制溫度數(shù)據(jù)。</p><p> 六.系統(tǒng)整體硬件電路</p><p> 根據(jù)設(shè)計(jì)要求與設(shè)計(jì)思路,硬件電路設(shè)計(jì)框圖如圖6.1所示,在仿真軟件Proteus上完成。其中LED數(shù)碼管以動態(tài)掃描法實(shí)
26、現(xiàn)溫度顯示,由四個(gè)PNP型晶體管Q2,Q3,Q4,Q5和八個(gè)電阻組成,基極與單片機(jī)的P1.0,P1.1,P1.2連接。DS18B20的數(shù)據(jù)I/O端與單片機(jī)P3.6引腳連接。外部晶振為12MHz。蜂鳴器通過Q1放大后與引腳P1.7相連。</p><p> 圖中有三個(gè)獨(dú)立式按鍵可以分別調(diào)整溫度計(jì)的上下限報(bào)警設(shè)置,圖中蜂鳴器可以在被測溫度不在上下限范圍內(nèi)時(shí),發(fā)出報(bào)警鳴叫聲音,同時(shí)LED數(shù)碼管將沒有被測溫度值顯示,這時(shí)
27、可以調(diào)整報(bào)警上下限,從而測出被測的溫度值。圖中的按健復(fù)位電路是上電復(fù)位加手動復(fù)位,使用比較方便,在程序跑飛時(shí),可以手動復(fù)位,這樣就不用在重起單片機(jī)電源,就可以實(shí)現(xiàn)復(fù)位。</p><p> 圖6.1系統(tǒng)總體硬件電路</p><p><b> 七.系統(tǒng)程序設(shè)計(jì)</b></p><p> 數(shù)字式溫度計(jì)的應(yīng)用程序主要包括主程序,溫度檢測程序,溫度
28、轉(zhuǎn)換程序, LED顯示程序等。</p><p> 系統(tǒng)的主程序主要用來初始化一些系統(tǒng)參數(shù),對DS18B20的配置數(shù)據(jù)進(jìn)行一系列的設(shè)定。溫度檢測程序是對DS18B20的狀態(tài)不斷地查詢,讀出RAM中的9字節(jié),在讀出時(shí)需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫,讀取當(dāng)前的溫度值后,進(jìn)行溫度轉(zhuǎn)化程序,對溫度符號處理和溫度值的BCD碼處理,進(jìn)行溫度值正負(fù)的判定,將其段碼送至顯示緩沖區(qū),以備定時(shí)掃描服務(wù)程序處理。LE
29、D顯示程序主要對顯示緩沖器中的顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)最高顯示位為0時(shí),將符號顯示位移入下一位。總程序程序代碼見附錄一</p><p> 八.測量及其結(jié)果分析</p><p> 1.Proteus仿真結(jié)果</p><p> 軟件方面,在Proteus編譯下進(jìn)行,源程序編譯及仿真調(diào)試。</p><p> 在軟件中選定傳感器后可對其進(jìn)行環(huán)
30、境溫度設(shè)置,如圖8.1.1,將環(huán)境溫度設(shè)為34.9。</p><p><b> 圖8.1.1</b></p><p> 然后點(diǎn)擊軟件執(zhí)行鍵,按操作步驟實(shí)施后,觀察LED數(shù)碼管示數(shù),此時(shí)示數(shù)如圖8.1.2。</p><p><b> 圖8.1.2</b></p><p> 可見本次軟件測試結(jié)果
31、良好。</p><p><b> 2.硬件測試結(jié)果</b></p><p> 在硬件測試方面,檢查電路板及焊接的質(zhì)量情況,在檢查無誤后通電檢查LED顯示器。</p><p> 其中 DS18B20實(shí)物圖為8.2.1</p><p> 在室溫下,LED顯示器示數(shù)如圖8.2.2,為26.4攝氏度</p>
32、<p><b> 圖8.2.2</b></p><p> 用手蓋住溫度傳感器后,LED顯示器示數(shù)如圖8.2.3,為29.7攝氏度。</p><p> 比較可知,硬件調(diào)試結(jié)果也達(dá)到了要求。</p><p><b> 九.設(shè)計(jì)心得體會</b></p><p> 本次課設(shè)對我來說是一
33、次難得的經(jīng)歷,首先是第一次接觸了仿真軟件Proteus,在使用時(shí)經(jīng)歷了很多次失敗,因?yàn)檫@款軟件與以前使用的各種軟件有很多不同,使用時(shí)不停出錯(cuò),接線時(shí)由于元件放置不合理而接的雜亂無章;輸入源程序時(shí)還較為順利,顯示結(jié)果比較滿意。其次是程序設(shè)計(jì),我們在參考別人成功先例的基礎(chǔ)上根據(jù)自己設(shè)計(jì)的需要編制程序,其中歷經(jīng)不少曲折,最后我的收獲是,編程一定要細(xì)心,針對每一個(gè)細(xì)節(jié),稍有疏忽,程序就不能正常工作。最后是單片機(jī)實(shí)踐操作,由于我自己已買了一塊開發(fā)
34、板,所以硬件調(diào)試比較順利,效果也不錯(cuò),就是DS18B20溫度傳感器靈敏度不太高,示數(shù)變化不大。另外,我前期花了一些時(shí)間專門學(xué)習(xí)這塊芯片,了解了DS18B20的工作原理的時(shí)序圖。</p><p> 在這次的實(shí)踐與學(xué)習(xí)中,盡管期間困難重重,但我還是從中學(xué)習(xí)了不少新的知識與技能和解決困難的方法,也終于體驗(yàn)到了經(jīng)歷困難到最終獲得成功的那種無以言表的喜悅之情,總之,本次課設(shè)是我收獲最多的一次,也希望自己在以后的各項(xiàng)研究活
35、動中能堅(jiān)持這種精神。</p><p><b> 十.參考文獻(xiàn)</b></p><p> [1]單片機(jī)原理與接口技術(shù)(第二版)牛昱光 李曉林 電子工業(yè)出版社. 2010.7</p><p> [2]單片機(jī)系統(tǒng)設(shè)計(jì)與應(yīng)用實(shí)例. 韓志軍 機(jī)械工業(yè)出版社. 2009.10</p><p> [
36、3]《DS18B20數(shù)據(jù)手冊》</p><p><b> 附錄一 源程序</b></p><p> #include <AT89X52.h></p><p> #include "DS18B20.h" </p><p> #define uint unsigned int<
37、;/p><p> #define uchar unsigned char //宏定義</p><p> #define SET P3_1 //定義調(diào)整鍵</p><p> #define DEC P3_2 //定義減少鍵</p><p> #define ADD P3_3 //定義增加鍵</p>
38、<p> #define BEEP P3_7 //定義蜂鳴器</p><p> bit shanshuo_st; //閃爍間隔標(biāo)志</p><p> bit beep_st; //蜂鳴器間隔標(biāo)志</p><p> sbit DIAN = P2^7; //小數(shù)點(diǎn)</p><p> uchar x=0;
39、 //計(jì)數(shù)器</p><p> signed char m; //溫度值全局變量</p><p> uchar n; //溫度值全局變量</p><p> uchar set_st=0; //狀態(tài)標(biāo)志</p><p> signed char shangxian=38; //上限報(bào)警溫度,默認(rèn)值為
40、38</p><p> signed char xiaxian=15; //下限報(bào)警溫度,默認(rèn)值為5</p><p> uchar code LEDData[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};</p><p> /*****延時(shí)子程序*****/</p><p&
41、gt; void Delay(uint num)</p><p><b> {</b></p><p> while( --num );</p><p><b> }</b></p><p> /*****初始化定時(shí)器0*****/</p><p> void I
42、nitTimer(void)</p><p><b> {</b></p><p><b> TMOD=0x1;</b></p><p><b> TH0=0x4c;</b></p><p> TL0=0x00; //50ms(晶振12M)</p>
43、<p><b> }</b></p><p> /*****定時(shí)器0中斷服務(wù)程序*****/</p><p> void timer0(void) interrupt 1</p><p><b> {</b></p><p><b> TH0=0x4c;</b&
44、gt;</p><p><b> TL0=0x00;</b></p><p><b> x++;</b></p><p><b> }</b></p><p> /*****外部中斷0服務(wù)程序*****/</p><p> void int0(
45、void) interrupt 0</p><p><b> {</b></p><p> EX0=0; //關(guān)外部中斷0</p><p> if(DEC==0&&set_st==1)</p><p><b> {</b></p><p>
46、 shangxian--;</p><p> if(shangxian<xiaxian)shangxian=xiaxian;</p><p><b> }</b></p><p> else if(DEC==0&&set_st==2)</p><p><b> {</b>
47、;</p><p> xiaxian--;</p><p> if(xiaxian<0)xiaxian=0;</p><p><b> }</b></p><p><b> }</b></p><p> /*****外部中斷1服務(wù)程序*****/</p&
48、gt;<p> void int1(void) interrupt 2</p><p><b> {</b></p><p> EX1=0; //關(guān)外部中斷1</p><p> if(ADD==0&&set_st==1)</p><p><b> {</b
49、></p><p> shangxian++;</p><p> if(shangxian>99)shangxian=99;</p><p><b> }</b></p><p> else if(ADD==0&&set_st==2)</p><p><b
50、> {</b></p><p> xiaxian++;</p><p> if(xiaxian>shangxian)xiaxian=shangxian;</p><p><b> } </b></p><p><b> }</b></p><p
51、> /*****讀取溫度*****/</p><p> void check_wendu(void)</p><p><b> {</b></p><p> uint a,b,c;</p><p> c=ReadTemperature()-5; //獲取溫度值并減去DS18B20的溫漂誤差</p&
52、gt;<p> a=c/100; //計(jì)算得到十位數(shù)字</p><p> b=c/10-a*10; //計(jì)算得到個(gè)位數(shù)字</p><p> m=c/10; //計(jì)算得到整數(shù)位</p><p> n=c-a*100-b*10; //計(jì)算得到小數(shù)位</p><p> if(m<0){
53、m=0;n=0;} //設(shè)置溫度顯示上限</p><p> if(m>99){m=99;n=9;} //設(shè)置溫度顯示上限 </p><p><b> }</b></p><p> /*****顯示開機(jī)初始化等待畫面*****/</p><p> Disp_init()</p>&
54、lt;p><b> {</b></p><p> P2=0xbf; </p><p><b> P1=0xfe;</b></p><p> Delay(200);</p><p><b> P2=0xbf;</b></p><p>&
55、lt;b> P1=0xfd;</b></p><p> Delay(200);</p><p><b> P2=0xbf;</b></p><p><b> P1=0xfb;</b></p><p> Delay(200);</p><p><
56、;b> P2=0xbf; </b></p><p> P1=0xf7; //第四</p><p> Delay(200);</p><p> P1=0xff; //關(guān)閉顯示</p><p><b> }</b></p><p> /*****顯示溫度
57、子程序*****/</p><p> Disp_Temperature() //顯示溫度</p><p><b> {</b></p><p> P2=0xc6; //顯示C</p><p> P1=0xf7; //</p><p> Delay(300
58、);</p><p> P2=LEDData[n]; //顯示個(gè)位</p><p> P1=0xfb; //</p><p> Delay(300);</p><p> P2=LEDData[m%10]; //顯示小數(shù)點(diǎn)</p><p><b> DIAN=0;</b&
59、gt;</p><p><b> P1=0xfd;</b></p><p> Delay(300);</p><p> P2=LEDData[m/10]; //顯示百位</p><p><b> P1=0xfe;</b></p><p> Delay(300)
60、;</p><p> P1=0xff; //關(guān)閉顯示</p><p><b> }</b></p><p> /*****顯示報(bào)警溫度子程序*****/</p><p> Disp_alarm(uchar baojing)</p><p><b> {<
61、;/b></p><p> P2=0xc6; //顯示C</p><p><b> P1=0xf7;</b></p><p> Delay(200);</p><p> P2=LEDData[baojing%10]; //顯示十位</p><p><b> P
62、1=0xfb;</b></p><p> Delay(200);</p><p> P2=LEDData[baojing/10]; //顯示百位</p><p><b> P1=0xfd;</b></p><p> Delay(200);</p><p> if(set_s
63、t==1)P2=0x89;</p><p> else if(set_st==2)P2=0xc7; //上限H、下限L標(biāo)示</p><p><b> P1=0xfe;</b></p><p> Delay(200);</p><p><b> P1=0xff;</b></p>
64、<p><b> }</b></p><p> /*****報(bào)警子程序*****/</p><p> void Alarm()</p><p><b> {</b></p><p> if(x>=10){beep_st=~beep_st;x=0;}</p>&
65、lt;p> if((m>=shangxian&&beep_st==1)||(m<xiaxian&&beep_st==1))BEEP=0;</p><p> else BEEP=1;</p><p><b> }</b></p><p> /*****主函數(shù)*****/</p>
66、<p> void main(void)</p><p><b> {</b></p><p><b> uint z;</b></p><p> InitTimer(); //初始化定時(shí)器</p><p> EA=1; //全局中斷開關(guān)</p>
67、<p><b> TR0=1;</b></p><p> ET0=1; //開啟定時(shí)器0</p><p> IT0=1; </p><p><b> IT1=1;</b></p><p> check_wendu();</p><p&
68、gt; check_wendu();</p><p> for(z=0;z<300;z++)</p><p><b> {</b></p><p> Disp_init(); </p><p><b> }</b></p><p><b&g
69、t; while(1)</b></p><p><b> {</b></p><p> if(SET==0)</p><p><b> {</b></p><p> Delay(2000);</p><p> do{}while(SET==0);<
70、;/p><p> set_st++;x=0;shanshuo_st=1;</p><p> if(set_st>2)set_st=0;</p><p><b> }</b></p><p> if(set_st==0)</p><p><b> {</b><
71、/p><p> EX0=0; //關(guān)閉外部中斷0</p><p> EX1=0; //關(guān)閉外部中斷1</p><p> check_wendu();</p><p> Disp_Temperature();</p><p> Alarm(); //報(bào)警檢測</p><p>
72、<b> }</b></p><p> else if(set_st==1)</p><p><b> {</b></p><p> BEEP=1; //關(guān)閉蜂鳴器</p><p> EX0=1; //開啟外部中斷0</p><p> EX1=1;
73、 //開啟外部中斷1</p><p> if(x>=10){shanshuo_st=~shanshuo_st;x=0;}</p><p> if(shanshuo_st) {Disp_alarm(shangxian);}</p><p><b> }</b></p><p> else if(set_st
74、==2)</p><p><b> {</b></p><p> BEEP=1; //關(guān)閉蜂鳴器</p><p> EX0=1; //開啟外部中斷0</p><p> EX1=1; //開啟外部中斷1</p><p> if(x>=10){shanshuo_st=
75、~shanshuo_st;x=0;}</p><p> if(shanshuo_st) {Disp_alarm(xiaxian);}</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p>
76、<p> /*****END*****/</p><p> DS18B20.h:</p><p> #include <AT89X52.h></p><p> #define DQ P3_6 //定義DS18B20總線I/O</p><p> /*****延時(shí)子程序*****/</p>
77、<p> void Delay_DS18B20(int num)</p><p><b> {</b></p><p> while(num--) ;</p><p><b> }</b></p><p> /*****初始化DS18B20*****/</p>&
78、lt;p> void Init_DS18B20(void)</p><p><b> {</b></p><p> unsigned char x=0;</p><p> DQ = 1; //DQ復(fù)位</p><p> Delay_DS18B20(8); //稍做延時(shí)<
79、;/p><p> DQ = 0; //單片機(jī)將DQ拉低</p><p> Delay_DS18B20(80); //精確延時(shí),大于480us</p><p> DQ = 1; //拉高總線</p><p> Delay_DS18B20(14);</p><p>
80、; x = DQ; //稍做延時(shí)后,如果x=0則初始化成功,x=1則初始化失敗</p><p> Delay_DS18B20(20);</p><p><b> }</b></p><p> /*****讀一個(gè)字節(jié)*****/</p><p> unsigned char ReadOneCh
81、ar(void)</p><p><b> {</b></p><p> unsigned char i=0;</p><p> unsigned char dat = 0;</p><p> for (i=8;i>0;i--)</p><p><b> {</b&
82、gt;</p><p> DQ = 0; // 給脈沖信號</p><p><b> dat>>=1;</b></p><p> DQ = 1; // 給脈沖信號</p><p><b> if(DQ)</b></p><p
83、> dat|=0x80;</p><p> Delay_DS18B20(4);</p><p><b> }</b></p><p> return(dat);</p><p><b> }</b></p><p> /*****寫一個(gè)字節(jié)*****/<
84、;/p><p> void WriteOneChar(unsigned char dat)</p><p><b> {</b></p><p> unsigned char i=0;</p><p> for (i=8; i>0; i--)</p><p><b> {&l
85、t;/b></p><p><b> DQ = 0;</b></p><p> DQ = dat&0x01;</p><p> Delay_DS18B20(5);</p><p><b> DQ = 1;</b></p><p><b> d
86、at>>=1;</b></p><p><b> }</b></p><p><b> }</b></p><p> /*****讀取溫度*****/</p><p> int ReadTemperature(void)</p><p><
87、;b> {</b></p><p> unsigned char a=0;</p><p> unsigned char b=0;</p><p><b> int t=0;</b></p><p> float tt=0;</p><p> Init_DS18B20
88、();</p><p> WriteOneChar(0xCC); //跳過讀序號列號的操作</p><p> WriteOneChar(0x44); //啟動溫度轉(zhuǎn)換</p><p> Init_DS18B20();</p><p> WriteOneChar(0xCC); //跳過讀序號列號的操作</p><
89、;p> WriteOneChar(0xBE); //讀取溫度寄存器</p><p> a=ReadOneChar(); //讀低8位</p><p> b=ReadOneChar(); //讀高8位</p><p><b> t=b;</b></p><p><b> t<
90、<=8;</b></p><p><b> t=t|a;</b></p><p> tt=t*0.0625;</p><p> t= tt*10+0.5; //放大10倍輸出并四舍五入</p><p> return(t);</p><p><b>
91、 }</b></p><p> /*****END*****/</p><p> 附錄二 元件清單及PCB圖</p><p> 數(shù)字溫度計(jì)電路元器件清單</p><p><b> PCB圖</b></p><p> g an employment tribunal clai
92、m</p><p> Employment tribunals sort out disagreements between employers and employees.</p><p> You may need to make a claim to an employment tribunal if:</p><p> you don't ag
93、ree with the disciplinary action your employer has taken against you</p><p> your employer dismisses you and you think that you have been dismissed unfairly.</p><p> For more information about
94、 dismissal and unfair dismissal, see Dismissal.</p><p> You can make a claim to an employment tribunal, even if you haven't appealed against the disciplinary action your employer has take
95、n against you. However, if you win your case, the tribunal may reduce any compensation awarded to you as a result of your failure to appeal.</p><p> Remember that in most cases you must make an application
96、to an employment tribunal within three months of the date when the event you are complaining about happened. If your application is received after this time limit, the tribunal will not usually accept it.</p><
97、p> If you are worried about how the time limits apply to you, take advice from one of the organisations listed under Further help.</p><p> Employment tribunals are less formal than some other court
98、s, but it is still a legal process and you will need to give evidence under an oath or affirmation.</p><p> Most people find making a claim to an employment tribunal challenging. If you are thinking about m
99、aking a claim to an employment tribunal, you should get help straight away from one of the organisations listed under Further help.</p><p> If you are being represented by a solicitor at the tribunal,
100、they may ask you to sign an agreement where you pay their fee out of your compensation if you win the case. This is known as a damages-based agreement. In England and Wales, your solicitor can't charge you more
101、than 35% of your compensation if you win the case.</p><p> If you are thinking about signing up for a damages-based agreement, you should make sure you're clear about the terms of the agreem
102、ent. It might be best to get advice from an experienced adviser, for example, at a Citizens Advice Bureau. To find your nearest CAB, including those that give advice by e-mail, click on nearest CAB.</p>
103、<p> For more information about making a claim to an employment tribunal, see Employment tribunals.</p><p> The (lack of) air up there </p><p> Watch mCayman Islands-based Webb, th
104、e head of Fifa's anti-racism taskforce, is in London for the Football Association's 150th anniversary celebrations and will attend City's Premier League match at Chelsea on Sunday.</p><p> "
105、;I am going to be at the match tomorrow and I have asked to meet Yaya Toure," he told BBC Sport.</p><p> "For me it's about how he felt and I would like to speak to him first to find out what
106、his experience was."</p><p> Uefa has opened disciplinary proceedings against CSKA for the "racist behaviour of their fans" during City's 2-1 win.</p><p> Mic
107、hel Platini, president of European football's governing body, has also ordered an immediate investigation into the referee's actions.</p><p> CSKA said they were "surprised and disappointed&quo
108、t; by Toure's complaint. In a statement the Russian side added: "We found no racist insults from fans of CSKA."</p><p> Age has reached the end of the beginning of a word. May be guilty in his
109、 seems to passing a lot of different life became the appearance of the same day; May be back in the past, to oneself the paranoid weird belief disillusionment, these days, my mind has been very messy, in my mind constant
110、ly. Always feel oneself should go to do something, or write something. Twenty years of life trajectory deeply shallow, suddenly feel something, do it.</p><p> 一字開頭的年齡已經(jīng)到了尾聲?;蛟S是愧疚于自己似乎把轉(zhuǎn)瞬即逝的很多個(gè)不同的日子過成了同一天的樣子
111、;或許是追溯過去,對自己那些近乎偏執(zhí)的怪異信念的醒悟,這些天以來,思緒一直很凌亂,在腦海中不斷糾纏??傆X得自己自己似乎應(yīng)該去做點(diǎn)什么,或者寫點(diǎn)什么。二十年的人生軌跡深深淺淺,突然就感覺到有些事情,非做不可了。</p><p> The end of our life, and can meet many things really do?</p><p> 而窮盡我們的一生,又能遇到多
112、少事情是真正地非做不可?</p><p> During my childhood, think lucky money and new clothes are necessary for New Year, but as the advance of the age, will be more and more found that those things are optional; Junior high
113、 school, thought to have a crush on just means that the real growth, but over the past three years later, his writing of alumni in peace, suddenly found that isn't really grow up, it seems is not so important; Then i
114、n high school, think don't want to give vent to out your inner voice can be in the high school chil</p><p> 童年時(shí),覺得壓歲錢和新衣服是過年必備,但是隨著年齡的推進(jìn),會越來越發(fā)現(xiàn),那些東西根本就可有可無;初中時(shí),以為要有一場暗戀才意味著真正的成長,但三年過去后,自己心平氣和的寫同學(xué)錄的時(shí)候,突然
115、就發(fā)現(xiàn)是不是真正的成長了,好像并沒有那么重要了;然后到了高中,覺得非要吐露出自己的心聲才能為高中生涯里的懵懂情愫劃上一個(gè)句點(diǎn),但畢業(yè)晚會的時(shí)候最終還是被梗塞在了咽喉,后來再次站在他曾經(jīng)揮汗如雨的球場,看著他投過籃球的球框時(shí),突然間發(fā)現(xiàn)自己已經(jīng)想不起他的容顏。</p><p> Originally, this world, can produce a chemical reaction to an event,
116、 in addition to resolutely, have to do, and time.</p><p> 原來,這個(gè)世界上,對某個(gè)事件能產(chǎn)生化學(xué)反應(yīng)的,除了非做不可的堅(jiān)決,還有,時(shí)間。</p><p> A person's time, your ideas are always special to clear. Want, want, line is clear
117、, as if nothing could shake his. Also once seemed to be determined to do something, but more often is he backed out at last. Dislike his cowardice, finally found that there are a lot of love, there are a lot of miss, lik
118、e shadow really have been doomed. Those who do, just green years oneself give oneself an arm injection, or is a self-righteous spiritual.</p><p> 一個(gè)人的時(shí)候,自己的想法總是特別地清晰。想要的,不想要的,界限明確,好像沒有什么可以撼動自己。也曾經(jīng)好像已經(jīng)下定了決心去
119、做某件事,但更多的時(shí)候是最后又打起了退堂鼓。嫌惡過自己的怯懦,最終卻發(fā)現(xiàn)有很多緣分,有很多錯(cuò)過,好像冥冥之中真的已經(jīng)注定。那些曾經(jīng)所謂的非做不可,只是青蔥年華里自己給自己注射的一支強(qiáng)心劑,或者說,是自以為是的精神寄托罷了。</p><p> At the moment, the sky is dark, the air is fresh factor after just rained. Suddenly th
120、ought of blue plaid shirt; Those were broken into various shapes of stationery; From the corner at the beginning of deep friendship; Have declared the end of the encounter that haven't start planning... Those years,
121、those days of do, finally, like youth, will end in our life.</p><p> 此刻,天空是陰暗的,空氣里有著剛下過雨之后的清新因子。突然想到那件藍(lán)格子襯衫;那些被折成各種各樣形狀的信紙;那段從街角深巷伊始的友誼;還有那場還沒有開始就宣告了終結(jié)的邂逅計(jì)劃……那些年那些天的非做不可,終于和青春一樣,都將在我們的人生中謝幕。</p><
122、p> Baumgartner the disappointing news: Mission aborted. r plays an important role in this mission. Starting at the ground, conditions have to be very calm -- winds less than 2 mph, with no precipitation or humidity a
123、nd limited cloud cover. The balloon, with capsule attached, will move through the lower level of the atmosphere (the troposphere) where our day-to-day weather lives. It will climb higher than the tip of Mount Everest (5.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)--數(shù)字溫度計(jì)
- 單片機(jī)課程設(shè)計(jì)--數(shù)字溫度計(jì)
- 單片機(jī)課程設(shè)計(jì)-數(shù)字溫度計(jì)
- 單片機(jī)課程設(shè)計(jì)—數(shù)字溫度計(jì)
- 單片機(jī)數(shù)字溫度計(jì)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---數(shù)字溫度計(jì)
- 單片機(jī)課程設(shè)計(jì)-數(shù)字溫度計(jì)
- 單片機(jī)課程設(shè)計(jì)—數(shù)字溫度計(jì)
- 基于單片機(jī)數(shù)字溫度計(jì)課程設(shè)計(jì)
- 數(shù)字溫度計(jì)課程設(shè)計(jì)---基于51單片機(jī)數(shù)字溫度計(jì)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)——數(shù)字溫度計(jì)
- 單片機(jī)課程設(shè)計(jì)—數(shù)字溫度計(jì)
- 課程設(shè)計(jì)--基于單片機(jī)數(shù)字溫度計(jì)設(shè)計(jì)
- 溫度計(jì)課程設(shè)計(jì)---基于51單片機(jī)數(shù)字溫度計(jì)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--數(shù)字溫度計(jì)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-數(shù)字溫度計(jì)
- 數(shù)字溫度計(jì)--單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--數(shù)字溫度計(jì)設(shè)計(jì)
- 基于單片機(jī)的數(shù)字溫度計(jì)課程設(shè)計(jì)
- 基于單片機(jī)的數(shù)字溫度計(jì)課程設(shè)計(jì)
評論
0/150
提交評論