2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩38頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  基于LM75A和HS1101的智能溫度濕度檢測系統(tǒng)</p><p><b>  設(shè)計與實現(xiàn)</b></p><p> 文作者姓名:</p><p> 申請學(xué)位專業(yè):電子信息工程</p><p> 申請學(xué)位類別:工學(xué)學(xué)士</p><p> 指導(dǎo)教師姓名(職稱):</p&g

2、t;<p> 論文提交日期:</p><p>  基于LM75A和HS1101的智能溫度濕度檢測系統(tǒng)</p><p><b>  設(shè)計與實現(xiàn)</b></p><p><b>  摘 要</b></p><p>  隨著計算機技術(shù)的發(fā)展,智能溫度和濕度的檢測系統(tǒng)在農(nóng)業(yè)、工業(yè)、國防、倉儲

3、等領(lǐng)域有著極為廣泛的應(yīng)用。本文設(shè)計了一種基于51單片機的智能溫度和濕度檢測系統(tǒng),通過STC89C52RC單片機的控制與處理,采用測量范圍在0%~99%之間的濕度傳感器元件HS1101和測量范圍在-55℃~+125℃之間的溫度檢測器元件LM75A,從而測量出當(dāng)前空氣相對濕度和溫度,顯示在4位數(shù)碼管。并且設(shè)置了濕度和溫度的上限制,一旦檢測的濕度或溫度超過了設(shè)定值,就會啟動報警裝置。該產(chǎn)品具有體積小巧、成本低、可靠性高,測量精度高等優(yōu)點。 &

4、lt;/p><p>  關(guān)鍵詞: 單片機;濕度;溫度;檢測</p><p>  Design and Implementation of an Intelligent Temperature and Humidity Detection System Based on LM75A and HS1101 </p><p><b>  Abstract<

5、/b></p><p>  With computer technology development, automatic measurement and control of temperature and humidity are widely applied to agriculture, industry, national defense, storage and other fields. A

6、temperature and humidity measurement system based on 51 MCU is designed in this paper, by control and treatment of STC89C52RC,use the humidity sensor element HS1101 that the range between 1%~99% and temperature sensor el

7、ement LM75A that the range between -55℃~+125℃.Accordingly measures the current relative h</p><p>  keywords: MCU; Humidity; Temperature; Detection目 錄</p><p><b>  1引言1</b></p>

8、;<p>  1.1課題背景1</p><p>  1.2本課題研究的意義1</p><p>  1.3本課題的研究方法1</p><p>  2濕度和溫度測量2</p><p>  2.1空氣濕度的表示方法2</p><p>  2.2濕度傳感器的發(fā)展史2</p>

9、<p>  2.3空氣溫度的表示方法3</p><p>  2.4溫度傳感器的發(fā)展史5</p><p>  3硬件電路設(shè)計5</p><p>  3.1電源電路和單片機電路模塊6</p><p>  3.2濕度檢測模塊7</p><p>  3.3溫度檢測模塊9</p>

10、<p>  3.4數(shù)碼管顯示和鍵盤控制模塊12</p><p>  3.5報警電路模塊12</p><p><b>  4軟件設(shè)計12</b></p><p>  4.1主程序的設(shè)計13</p><p>  4.2中斷函數(shù)設(shè)計15</p><p>  5調(diào)試與測試

11、16</p><p>  5.1軟件調(diào)試16</p><p>  5.2電源及硬件電路調(diào)試17</p><p>  5.3濕度電路調(diào)試18</p><p>  5.4溫度電路調(diào)試18</p><p>  5.5報警電路調(diào)試19</p><p>  5.6按鍵測試19<

12、;/p><p>  6結(jié)論與展望19</p><p>  6.1全文總結(jié)19</p><p>  6.2前景展望20</p><p><b>  參考文獻21</b></p><p><b>  致 謝22</b></p><p>&

13、lt;b>  附 錄23</b></p><p><b>  引言</b></p><p><b>  課題背景</b></p><p>  在日常生活中,空氣濕度和溫度直接影響人們的生活與生產(chǎn)。如在電子設(shè)備機房,為了保持設(shè)備運行良好,延長設(shè)備使用壽命。對濕度及溫度都有較高要求。在生活中,當(dāng)環(huán)境濕

14、度過低時,人體會感覺皮膚干燥不舒服。而濕度過大時,體表汗液不能及時排除蒸發(fā),人體不舒適度會增大。此外如倉庫、博物館、資料室、實驗室等對濕度和溫度要求較高的場合,濕度和溫度檢測的應(yīng)用前景也很廣泛。所以,溫濕度檢測系統(tǒng)的廣泛應(yīng)用是必然的,且隨著人們生活水平的提高,多功能、自動化產(chǎn)品越來越受歡迎。智能溫濕度檢測系統(tǒng)采用數(shù)碼管顯示,可得到直觀且準(zhǔn)確的數(shù)據(jù),讓用戶對室內(nèi)濕度的把握更準(zhǔn)確。</p><p><b>

15、  本課題研究的意義</b></p><p>  基于該產(chǎn)品的需求,研究并提供一個小巧、高性價比、多功能的智能溫度和濕度檢測系統(tǒng)很有必要的,物廉價美是每個產(chǎn)品能受到用戶歡迎的主要原因。因此,配置簡單、功能完善、體積適宜是本次研究主要的著重點。本文選用LM75A數(shù)字溫度檢測芯片和HS1101電容式濕度傳感器分別作為溫度和濕度的感應(yīng)器件。應(yīng)用最簡單的設(shè)計達到最實用的功能。</p><p

16、><b>  本課題的研究方法</b></p><p>  本論文所完成的任務(wù)是通過產(chǎn)品對環(huán)境大氣相對濕度和空氣溫度進行檢測,并通過數(shù)碼管立即顯示,同時當(dāng)溫度超過設(shè)定溫度時及時報警。</p><p>  設(shè)計中采用Keil與Proteus連調(diào)仿真,再結(jié)合硬件調(diào)試的辦法。</p><p>  第一章引言,主要介紹智能溫濕度檢測系統(tǒng)的背景及以

17、后的發(fā)展,并且簡單描述該課題的意義。</p><p>  第二章溫度和濕度的測量,分別描述溫度和濕度的表示方法和溫度傳感器及濕度傳感器的發(fā)展史。</p><p>  第三章硬件電路設(shè)計,主要介紹智能溫度和濕度檢測系統(tǒng)的硬件設(shè)計。詳細(xì)的從功能的模塊上闡述工作原理。</p><p>  第四章軟件設(shè)計,主要通過流程圖簡單介紹編寫程序的思維和程序的各個功能。</p&

18、gt;<p>  第五章調(diào)試與測試。描述本課題的調(diào)試過程和相關(guān)的數(shù)據(jù),分析調(diào)試過程中遇到的問題和解決方案。在設(shè)計完成時的測試方式。</p><p>  第六章結(jié)論和展望,對本課題進行總結(jié)和對該設(shè)計的發(fā)展進行展望。</p><p><b>  濕度和溫度測量</b></p><p><b>  空氣濕度的表示方法</

19、b></p><p>  人們通常采用絕對濕度、相對濕度和飽和差三種不同量度方式來表示空氣濕度。</p><p>  1、絕對濕度。指每立方米空氣中含有的水汽的克數(shù)。通常用水汽壓的大小來表示,其單位為百帕或毫米。絕對濕度大,空氣比較潮濕;絕對濕度小,空氣比較干燥。而在一定溫度下,空氣中的水汽含量有一個最大的限度,達到這個限度時的水汽壓,叫飽和水汽壓。飽和水汽壓隨著空氣溫度的增高而迅速

20、變大。</p><p>  2、相對濕度。指空氣中的實際的水汽壓(即絕對濕度)與當(dāng)時溫度下飽和水汽壓的百分比。相對濕度是一個百分?jǐn)?shù),沒有單位。相對濕度小,說明當(dāng)時的空氣遠(yuǎn)沒有達到飽和狀態(tài),空氣干燥;相對濕度大,表明接近水汽壓飽和,空氣潮濕。這種表示方法,方便于對不同溫度下的濕度進行比較,其用途最為廣泛,</p><p>  3、飽和差。指測量時的溫度下的飽和水汽壓和空氣中實際的水汽壓之間的

21、差值。飽和差越小,說明空氣越潮濕,飽和差越大,說明空氣越干燥。</p><p>  人們經(jīng)常采用相對濕度來表示空氣的濕度,本文設(shè)計的產(chǎn)品也采用相對濕度的表示方式[1]。</p><p><b>  濕度傳感器的發(fā)展史</b></p><p>  最早的濕度檢測法是達芬奇用羊毛或人頭發(fā)制成的毛發(fā)濕度計。這種機械式濕度檢測儀曾在測濕歷史上發(fā)揮重大作

22、用。</p><p>  但是隨著電子技術(shù)的發(fā)展, 人們開始對電子濕度傳感器進行研究。1939年, 頓蒙利用材料的電氣特性研制出世界上第一個濕度傳感器。頓蒙濕度傳感器是利用電解質(zhì)制成的。根據(jù)電阻值的變化可以檢測相對濕度。但是, 這種傳感器的檢測范圍太小, 要想測量較寬的濕度變化必須使用多個特性不同的傳感器。同時進入測濕市場的還有利用聚合物薄膜或碳膜吸濕膨脹原理制作的濕度傳感器。然而, 這些傳感器都不能批量生產(chǎn),

23、因為它們的制作過程需要大量的人工技巧,因此需要龐大的生產(chǎn)資金。</p><p>  后來, 人們又開始研究如何用半導(dǎo)體制造濕度傳感器, 于是研制出若干種以陶瓷金屬氧化物為主要材料的濕度傳感器。測試了用含金屬氧化物的厚膜硅或膠體涂印的傳感器。此外, 還通過減小膠體電阻的辦法提高響應(yīng)速度。陶瓷濕度傳感器會由于吸水、界面捕獲現(xiàn)象和環(huán)境中, 分子等因素而使性能變壞。為防止這種情況, 又研制出能耐受定時加熱清洗的傳感器元件

24、。</p><p>  本文設(shè)計所采用的濕度傳感器為濕敏電容式傳感器。濕敏電容一般是用高分子薄膜電容制成的,常用的高分子材料有聚苯乙烯、聚酰亞胺、酷酸醋酸纖維等。當(dāng)環(huán)境濕度發(fā)生改變時,濕敏電容的介電常數(shù)發(fā)生變化,使其電容量也發(fā)生變化,其電容變化量與相對濕度成正比。濕敏電容的主要優(yōu)點是靈敏度高、產(chǎn)品互換性好、響應(yīng)速度快、濕度的滯后量小、便于制造、容易實現(xiàn)小型化和集成化,但其精度一般比濕敏電阻要低一些。國外生產(chǎn)濕敏電

25、容的主要廠家有Humirel公司、Philips公司、Siemens公司等。除電阻式、電容式濕敏元件之外,還有電解質(zhì)離子型濕敏元件、重量型濕敏元件(利用感濕膜重量的變化來改變振蕩頻率)、光強型濕敏元件、聲表面波濕敏元件等。</p><p><b>  空氣溫度的表示方法</b></p><p>  溫度的表示方式有幾種,我們常用的是攝氏度的表示方式,但不同的國家和不同

26、的環(huán)境為了方便人們會用不同的表示方式,</p><p>  1、攝氏溫度。目前被通常使用的一種溫度表示方式,是設(shè)定在一個標(biāo)準(zhǔn)大氣壓下水的冰點為零度,沸點為100度,其中間分成100等分,每個等分被定為1攝氏度。</p><p>  2、絕對溫度。是從物理學(xué)考慮到的最低溫度(-273.15℃)作為0度;1度的刻度和攝氏相同,單位用K表示,"0" K 被假定為分子的熱運動處

27、于靜止?fàn)顟B(tài)時的溫度;稱之為“絕對溫度”。 </p><p>  絕對溫度T(K)=攝氏溫度t(℃)+273.15 (1-1)</p><p>  3、華氏溫度。早前規(guī)定冰和食鹽的混合物溫度為0度,冰點為32度,人們的體溫為96度的表示方法,單位為:℉;后來更改為水的溫度為32度,沸點為212度中間分為180等分。</p&g

28、t;<p>  攝氏溫度t(℃)=5/9 ×[華氏溫度(℉)-32 ] (1-2)</p><p>  華氏溫度(℉)=9/5×攝氏溫度t(℃)+32 (1-3)</p><p>  國際實用溫標(biāo)是一個國際協(xié)議性溫標(biāo),它與熱力學(xué)溫標(biāo)相接近,而且復(fù)現(xiàn)精度高,使用方便。目前

29、國際通用的溫標(biāo)是1975年第15屆國際權(quán)度大會通過的《1968年國際實用溫標(biāo)-1975年修訂版》,記為:IPTS-68(Rev-75)。但由于IPTS-68溫示存在一定的不足,國際計量委員會在18屆國際計量大會第七號決議授權(quán)予1989年會議通過了1990年國際溫標(biāo)ITS-90,ITS-90溫標(biāo)替代IPTS-68。我國自1994年1月1日起全面實施ITS-90國際溫標(biāo)。</p><p>  1990年國際溫標(biāo)(IT

30、S-90)簡介如下。 1.溫度單位   熱力學(xué)溫度(符號為T)是基本功手物理量,它的單位為開爾文(符號為K),定義為水三相點的熱力學(xué)溫度的1/273.16。由于以前的溫標(biāo)定義中,使用了與273.15K(冰點)的差值來表示溫度,因此現(xiàn)在仍保留這各方法。 根據(jù)定義,攝氏度的大小等于開爾文,溫差亦可以用攝氏度或開爾文來表示。 國際溫標(biāo)ITS-90同時定義國際開爾文溫度(符號為T90)和國際攝氏溫度(符號為t90) 2.國際溫標(biāo)ITS-90的通

31、則, ITS-90由0.65K向上到普朗克輻射定律使用單色輻射實際可測量的最高溫度。ITS-90是這樣制訂的,即在全量程中,任何溫度的T90值非常接近于溫標(biāo)采納時T的最佳估計值,與直接測量熱力學(xué)溫度相比,T90的測量要方便得多,而且更為精密,并具有很高的復(fù)現(xiàn)性。 3.ITS-90的定義 第一溫區(qū)為0.65K到5.00K之間, T90由3He和4He的蒸氣壓與溫度的關(guān)系式來定義。 第二溫區(qū)為3.0K到氖三相點(24.5661K)之間T90

32、是用氦氣體溫度計來定義. 第二溫區(qū)為平衡氫三相點(13.8033K)到銀的凝固點(961.78℃</p><p><b>  溫度傳感器的發(fā)展史</b></p><p>  溫度傳感器的發(fā)展大致經(jīng)歷了以下3個階段:1、傳統(tǒng)的分立式溫度傳感器(含敏感元件),主要是能夠進行非電量和電量之間的轉(zhuǎn)換。2、模擬集成溫度傳感器/控制器。3、智能溫度傳感器。目前,國際上新型溫度傳感

33、器正從模擬式向數(shù)字式、集成化向智能化及網(wǎng)絡(luò)化的方向發(fā)展。溫度傳感器按傳感器與被測介質(zhì)的接觸方式可分為兩大類:一類是接觸式溫度傳感器,一類是非接觸式溫度傳感器。接觸式溫度傳感器的測溫元件與被測對象要有良好的熱接觸,通過熱傳導(dǎo)及對流原理達到熱平衡,這時的示值即為被測對象的溫度。這種測溫方法精度比較高,并可測量物體內(nèi)部的溫度分布。但對于運動的,熱容量比較小的及對感溫元件有腐蝕作用的對象,這種方法將會產(chǎn)生很大的誤差。非接觸測溫的測溫元件與被測對

34、象互不接觸。常用的是輻射熱交換原理。此種測溫方法的主要特點是可測量運動狀態(tài)的小目標(biāo)及熱容量小或變化迅速的對象,也可以測量溫度場的溫度分布,但受環(huán)境的影響比較大。</p><p><b>  硬件電路設(shè)計</b></p><p>  圖3-1 硬件原理框圖</p><p>  本系統(tǒng)電源電路采用穩(wěn)定的5V電壓,使電路進行工作正常。單片機的定時/計

35、數(shù)器來測量由濕度傳感器電路所產(chǎn)生的頻率值,并經(jīng)過單片機的程序處理后,轉(zhuǎn)換為相應(yīng)的空氣相對濕度,顯示在數(shù)碼管上。另一方面,單片機直接讀取溫度傳感器中檢測的溫度值,再由單片機處理后傳給數(shù)碼管顯示。如果測量溫度超過設(shè)定的溫度值,溫度傳感器立即向單片機發(fā)出信號,啟動報警系統(tǒng)。顯示方式是通過按鍵控制的,由按鍵來控制濕度顯示和溫度顯示的切換,在顯示中,分別用“C”和“H”來表示溫度和濕度的單位符號。根據(jù)以上分析,可將本電路劃分為:電源電路和單片機電

36、路模塊、數(shù)碼管顯示和鍵盤控制模塊、濕度檢測模塊、溫度檢測模塊和報警電路模塊。硬件結(jié)構(gòu)框圖如圖3-1所示。</p><p>  電源電路和單片機電路模塊</p><p>  圖3-2 電源電路模塊</p><p>  電源電路模塊中,電源兩端并聯(lián)一個10uF的電解電容與105電容作為電源去耦電容。而電源和地的接線也是獨立的,是為了在實際操作中避免電源與地的短路,而且也

37、讓產(chǎn)品的操作更加方便。</p><p>  圖3-3 單片機電路模塊</p><p>  本電路使用的STC89C52RC單片機是一種低功耗、高性能、高抗干擾的CMOS 8位微控制器,它的結(jié)構(gòu)與MCS-51單片機產(chǎn)品完全兼容,8K字節(jié)在系統(tǒng)可編程Flash存儲器,三個16位定時器/計數(shù)器,六個中斷源,32個可編程I/O口, 1000次擦寫周期,全雙工UART串行通道,低功耗空閑和掉電模式,

38、掉電后中斷可喚醒,看門狗定時器等[3]。</p><p>  單片機電路部分包括復(fù)位電路與晶振電路。復(fù)位電路部分采用上電復(fù)位方式。方便在使用過程中產(chǎn)品的復(fù)位。復(fù)位后單片機所有引腳高電平有效。單片機電路圖如圖3-2所示。晶振電路采用的是11.0592M的晶振和兩個22pF電容組成使單片機正常工作。</p><p><b>  濕度檢測模塊</b></p>

39、<p>  本設(shè)計濕度檢測模塊使用的濕度傳感器HS1101是法國Humirel生產(chǎn)的電容式濕度傳感器。它具有以下特點:</p><p>  全互換性,在標(biāo)準(zhǔn)環(huán)境下不需校正。</p><p>  長時間飽和下快速脫濕。</p><p>  可以自動化焊接,包括波峰焊或水沒</p><p>  高可靠性與長時間穩(wěn)定性。</p>

40、;<p>  專利的固態(tài)聚合物結(jié)構(gòu)。</p><p>  可用于線性電壓或頻率輸出回路。</p><p><b>  快速反應(yīng)時間。</b></p><p>  可見HS1101是不僅具有較高精度,還具有高可靠性的濕度傳感器。它的濕度</p><p>  響應(yīng)曲線接近線性,能夠使設(shè)計更加的方便可靠。<

41、/p><p>  圖3-4 HS1101的濕度電容響應(yīng)曲線</p><p>  HS1101是基于獨特工藝設(shè)計的固態(tài)聚合物結(jié)構(gòu),在電路中等效于一個電容器,其電容值隨所測空氣的相對濕度的增大而增大。具有極好的線性輸出,在相對濕度為0%RH~100%RH的范圍內(nèi),電容的容量由163 pF變化到202 pF,其誤差不超過±2%RH;濕度量程為1%RH~99%RH,工作的溫度范圍為-40℃~

42、+100℃;濕度輸出受溫度影響極小(溫度系數(shù)僅為0.04 pF/℃);常溫下使用不需要溫度補償,也不用進行校準(zhǔn)[4]。</p><p>  HS1101是一種在高分子薄膜上形成的電容。高分子薄膜上的電極是一種很薄的金屬微孔蒸發(fā)膜,水分子被兩端的電極被高分子薄膜吸附或釋放,隨著其水分子的吸附或釋放,高分子的介電系數(shù)將發(fā)生相應(yīng)的變化。由于介電系數(shù)隨空氣的相對濕度變化而變化,所以只要測定HS1101的電容值就可得到相對

43、濕度。其濕度電容響應(yīng)曲線如圖3-4所示。</p><p>  為了能讓單片機方便的讀取HS1101電容值的變化,將HS1101接入555非穩(wěn)態(tài)電路,把電容值的變化轉(zhuǎn)換為頻率值的變化,這樣可以直接由單片機測出,不需要再經(jīng)過A/D器件,簡化了電路的設(shè)計。</p><p>  圖3-5所示[5],HS1101作為電容變量接在555芯片的TRIG與THR兩引腳上,引腳DIS用作電阻R4的短路,在R

44、4上串聯(lián)一個可變電阻,用作實際操作中調(diào)節(jié)R4的的阻值,使頻率的計算更加方便。等量電容HS1101通過R1與R4充電到門限電壓,通過R4放電到觸發(fā)電平,然后R1通過引腳7短路到地,555振蕩器輸出口腳3與單片機14腳T0連接,達到輸出頻率到單片機的目的。</p><p>  圖3-5濕度傳感器電路模塊</p><p>  555電路的非平衡電阻R2用作內(nèi)部溫度補償,目的是為了引入溫度效應(yīng),使

45、他與HS1101的溫度效應(yīng)相匹配,由于不同型號的555內(nèi)部溫度不常有所不同,R2的值必須與特定的芯片相匹配,為了保證在55%RH的典型濕度值時頻率為6271HZ,R4也要做稍許修正。表3-1[6]給出了本次設(shè)計中采用的頻率輸出參數(shù)(參考點:28℃,相對濕度:50%,輸出頻率:6271Hz)[7]。</p><p>  表3-1頻率輸出典型參數(shù)</p><p><b>  溫度檢測

46、模塊</b></p><p>  本次設(shè)計溫度檢測模塊選用的是LM75A溫度檢測芯片。它的特性如下:</p><p>  1、提供環(huán)境溫度對應(yīng)的數(shù) 字信息,直接表示溫度。 </p><p>  2、對某一特定溫度做出反應(yīng),可以配置成中斷或者比較器模式。 </p><p>  3、小型8腳封裝。 </p><p&

47、gt;  4、具有I²C總線接口。 </p><p>  5、寬電源電壓范圍:2.8V~5.5V。 </p><p>  6、溫度范圍:-55℃~+125℃。</p><p>  7、提供0.125℃精度的11位ADC。 </p><p>  8、溫度精度:-25℃~+100℃時為±2℃,-55℃~+125℃時為±

48、;3℃.</p><p>  9、可編程溫度閥值和之后設(shè)定點。 </p><p>  10、低功耗設(shè)計,工作電流為250uA,掉電模式為3.5uA。 </p><p>  LM75A是一個使用了內(nèi)置帶隙溫度傳感器和∑-△模數(shù)轉(zhuǎn)換技術(shù)的溫度-數(shù)字轉(zhuǎn)換器,它也是一個溫度檢測器,可提供一個過熱檢測輸出。LM75A 包含許多數(shù)據(jù)寄存器:配置寄存器(Conf),用來存儲器件的

49、某些配置,如器件的工作模式、OS工作模式、OS極性和 OS故障隊列等(在功能描述一節(jié)中有詳細(xì)描述);溫度寄存器(Temp),用來存儲讀取的數(shù)字溫度;設(shè)定點寄存器(Tos & Thyst),用來存儲可編程的過熱關(guān)斷和滯后限制,器件通過 2 線的串行 I²C 總線接口與控制器通信。LM75A 還包含一個開漏輸出(OS),當(dāng)溫度超過編程限制的值時該輸出有效。LM75A有 3個可選的邏輯地址管腳,使得同一總線上可同時連接8個器

50、件而不發(fā)生地址沖突。LM75A可以在-55℃~+125℃的溫度范圍內(nèi)將溫度直接轉(zhuǎn)換為數(shù)字信號存儲在內(nèi)部寄存器中,并可實現(xiàn)0.125℃的精度。MCU可以通過I²C總線直接讀取其內(nèi)部寄存器中的數(shù)據(jù),并可通過I²C對4個數(shù)據(jù)寄存器進行操作,設(shè)置成不同的工作模式 [8]。</p><p>  圖3-6溫度傳感器模塊</p><p>  如圖3-6所示,LM75A的時鐘和數(shù)據(jù)串口

51、及OS過熱關(guān)斷輸出與單片機相接,并且分別接10K的上拉電阻,而A0,A1,A2數(shù)字輸出的地址線全部接地,表示只有一個地址。</p><p>  溫度的報警是由LM75A設(shè)置的,由于該芯片中設(shè)定點寄存器(Tos & Thyst),特定用來存儲可編程的過熱關(guān)斷和滯后限制,器件通過 2 線的串行 I²C 總線接口與控制器通信。LM75A 還包含一個開漏輸出(OS),當(dāng)溫度超過編程限制的值時該輸出有效。

52、所以當(dāng)設(shè)置了過熱關(guān)斷點和滯后點以后,檢測溫度達到設(shè)置溫度值,OS輸出有效,單片機收到OS是信號后,啟動報警裝置,當(dāng)檢測溫度下降到滯后點后,OS輸出無效,報警接觸。圖3-7[9]所示的就是OS的響應(yīng)溫度時序圖。</p><p>  圖3-7 OS響應(yīng)溫度</p><p>  *=OS 可通過讀寄存器或使器件進入關(guān)斷狀態(tài)來復(fù)位。</p><p>  假設(shè)故障隊列在每個T

53、os 和Thyst 交叉點處都被滿足。</p><p>  數(shù)碼管顯示和鍵盤控制模塊</p><p>  本設(shè)計由于STC89C52RC單片機P0口沒有內(nèi)部上拉電阻,所以在接數(shù)碼管時需要外接上拉電阻。本設(shè)計采用一個4位8段共陰數(shù)碼管作為顯示,由P0口提供段選,P2.4-P2.7提供位選碼,上拉電阻選用2.2K的排阻。</p><p>  本設(shè)計提供一個按鍵作為溫度和

54、濕度顯示的切換功能。連接的是P2.2口。</p><p><b>  報警電路模塊</b></p><p>  當(dāng)前溫度和濕度值分別超過LM75A內(nèi)設(shè)定的溫度和單片機設(shè)定的濕度值時,單片機將置低P2.3,三極管Q1導(dǎo)通,蜂鳴器將發(fā)出報警聲。報警電路模塊如圖3-8所示。</p><p>  圖3-8 報警電路原理</p><p

55、><b>  軟件設(shè)計</b></p><p>  軟件設(shè)計是本次設(shè)計的另一個重點,在此次設(shè)計中,采用C語言進行程序的編寫,程序可讀性較高,易理解和修改。對頻率的計數(shù)采用中斷方式,節(jié)省CPU資源,讀出的頻率轉(zhuǎn)換為濕度值輸出時采用查表方式,提高運算速度,降低運算難度。</p><p><b>  主程序的設(shè)計</b></p>&

56、lt;p>  主程序流程圖如圖4-1所示。</p><p>  在主程序中,首先對中斷及各類寄存器狀態(tài)進行初始化,將T0作為計數(shù)器,對測濕度的振蕩電路進行計數(shù),T1作為定時器每隔1/20秒產(chǎn)生一次中斷,在中斷程序中讀取計數(shù)器的值并對其進行處理,計算出濕度。</p><p>  初始化完成后主程序?qū)⒁来芜\行溫度采集、數(shù)碼管顯示、報警控制、按鍵判斷等子例程并不斷循環(huán)。</p>

57、<p>  溫度采集時通過I²C總線與LM75A通信,采集到LM75A的寄存器中存儲的相關(guān)數(shù)據(jù)并對其進行處理,轉(zhuǎn)換為溫度值。</p><p>  報警控制則是判斷濕度值是否超出或低于正常值以及LM75A的OS端是否發(fā)出報警。如果超出范圍或者OS端發(fā)出報警的話,就把控制蜂鳴器的端口置1,使得蜂鳴器工作。</p><p><b>  圖4-1 主流程圖<

58、/b></p><p>  顯示子程序?qū)︼@示模式標(biāo)志進行判斷,根據(jù)顯示模式的不同則顯示不同的單位以及數(shù)值(溫度值或者濕度值)。</p><p>  進行按鍵判斷時如果發(fā)現(xiàn)按鍵被按下則首先進行軟件延時去抖。如果判斷是按鍵按下的話,若顯示模式是顯示溫度則換為顯示濕度;若顯示模式是顯示濕度的話則換為顯示溫度。</p><p><b>  中斷函數(shù)設(shè)計<

59、;/b></p><p>  圖4-2 中斷流程圖</p><p>  中斷流程圖4-2所示。當(dāng)定時器1中斷到來時,將調(diào)用中斷服務(wù)程序。中斷服務(wù)程序執(zhí)行后,先關(guān)閉中斷,防止因為別的事情產(chǎn)生的中斷影響此服務(wù)程序。然后判斷計數(shù)器0是否溢出。若果計數(shù)器0溢出的話則是不正常,因為根據(jù)設(shè)計振蕩器頻率不過超過8000Hz。所以如果溢出的話就放棄本次的數(shù)據(jù)。如果正常的話就對其進行相應(yīng)的運算,計算出

60、相應(yīng)的濕度。為了方便并且簡化運算,本程序使用分段的一次函數(shù)來逼近實際的濕度-頻率曲線。</p><p><b>  調(diào)試與測試</b></p><p>  測試過程分為硬件調(diào)試和軟件測試。硬件部分采用萬用表對硬件進行靜態(tài)分析,檢查各電路是否能夠正常工作。之后使用示波器,觀察晶振與頻率產(chǎn)生是否正常。軟件部分使用Keil軟件進行程序的編寫和調(diào)試,并通過Proteus與Ke

61、il軟件進行濕度模塊的仿真連調(diào)(由于在Proteue軟件里沒有LM75A芯片,所以無法進行溫度模塊的仿真),修改程序中的錯誤。最后進行軟件與硬件的連調(diào)工作,檢查能否達到技術(shù)要求,并實現(xiàn)預(yù)定功能,</p><p><b>  軟件調(diào)試</b></p><p>  將程序調(diào)入Proteus原理圖,運行仿真。由于Proteus中無HS1101和LM75A,所以只能用以電容代

62、替HS1101做濕度功能的仿真,通過對照電容值-濕度值表格,改變替代HS1101的電容值,觀察輸出頻率變化是否正常,數(shù)碼管濕度數(shù)值是否正常。經(jīng)過測試,程序各功能正常,顯示數(shù)值達到預(yù)定目標(biāo),程序運行中無不正?,F(xiàn)象,說明程序基本完成,達到預(yù)期要求。</p><p>  仿真圖如圖5-1所示。</p><p><b>  圖5-1仿真原理圖</b></p>&

63、lt;p><b>  電源及硬件電路調(diào)試</b></p><p>  測試儀器包括數(shù)字萬用表、示波器、+5V USB電源,溫濕度表等。</p><p>  在通電前,先用數(shù)字萬用表的蜂鳴器測試電路板是否有虛焊,漏焊,短路和斷路現(xiàn)象,避免在通電調(diào)試時,由于電路焊接問題影響電路的正常工作。通電后,用數(shù)字萬用表對每個芯片管腳進行測試,檢查各芯片供電是否正常。檢查單片機

64、為空的時,各管腳高低電平是否正常。用示波器測量晶振是否起振,單片機頻率是否正常。用示波器觀察555振蕩器輸出引腳輸出的頻率是否正常。</p><p>  燒制程序,觀察數(shù)碼管顯示是否正常,按鍵控制是否正常。</p><p>  測試結(jié)果每個芯片的供電達到5V要求,晶振與555振蕩器頻率符合要求,數(shù)碼管顯示正常,各按鍵功能符合要求,基本完成硬件預(yù)期功能。</p><p&g

65、t;<b>  濕度電路調(diào)試</b></p><p>  將程序燒入單片機之后,接通電源,數(shù)碼管顯示出當(dāng)前環(huán)境相對濕度值,人為減濕(使用吹風(fēng)機吹風(fēng)),濕度值降低。停止吹風(fēng)后,看見數(shù)碼管顯示中,濕度值明顯回升,說明本機濕度傳感器焊接到位,設(shè)計合理,達到功能要求。</p><p>  在實際的調(diào)試中,由于剛開始電路的錯誤而無法起振,所以對NE555的各引腳進行了電壓的測試

66、,便于查找錯誤。表5-1是NE555正常工作后,各引腳的電壓值。</p><p>  表5-1 芯片NE555正常工作的引腳電壓表</p><p>  在實際測試中,通過吹風(fēng)機能降低到最低相對濕度36h,通過對著濕度傳感器呼氣能升高到相對濕度的最高值82h,如表5-2,是HS1101濕度和555振蕩電路所對應(yīng)的頻率值。</p><p>  表5-2 HS1101濕度

67、和頻率值對應(yīng)表</p><p><b>  溫度電路調(diào)試</b></p><p>  在電路接通之后,數(shù)碼管顯示出當(dāng)前環(huán)境中空氣溫度,人為的升高溫度(用吹風(fēng)機的熱風(fēng)檔吹風(fēng)),溫度升高。停止吹風(fēng)后,看見數(shù)碼管顯示的溫度值明顯降低。當(dāng)溫度升至芯片內(nèi)部設(shè)定溫度值時,使用萬用表查看芯片的OS引腳有電平的改變,證明芯片本身的報警裝置已經(jīng)啟動,說明本機溫度傳感器焊接到位,設(shè)計合理

68、,達到功能要求。</p><p><b>  報警電路調(diào)試</b></p><p>  在程序中將上限報警值設(shè)定存入LM75A,加溫后,讓當(dāng)前濕度值不小于報警上限,蜂鳴器鳴叫,上限報警功能正常。在程序中設(shè)置濕度的上限報警值,當(dāng)濕度超過上限值時,報警系統(tǒng)啟動,說明報警電路設(shè)計合理,完全符合程序控制,功能實現(xiàn)。</p><p><b> 

69、 按鍵測試</b></p><p>  電路連接電源之后,將相關(guān)程序燒入單片機,要求預(yù)設(shè)的按鍵控制溫度和濕度顯示模式。</p><p>  經(jīng)過測試,按下按鍵,數(shù)碼管顯示符合按鍵預(yù)設(shè)功能。通過多次測試,與理論預(yù)設(shè)的完全一樣。這樣就說明了本機按鍵電路設(shè)計合理,電路焊接到位。</p><p><b>  結(jié)論與展望</b></p&

70、gt;<p><b>  全文總結(jié)</b></p><p>  本文所介紹的是基于LM75A和HS1101的智能溫度濕度檢測系統(tǒng)的設(shè)計與實現(xiàn),主要闡述了硬件設(shè)計中的各模塊設(shè)計和軟件的設(shè)計。在設(shè)計中將溫度和濕度的檢測分別用了兩個傳感器來分別檢測,是為了使每一方面的檢測在獨立的狀態(tài)下更加的簡單和精確,也方便了之后調(diào)試的方便。另外溫度檢測芯片是直接將內(nèi)部傳感器測量的溫度轉(zhuǎn)換為數(shù)字信號

71、直接傳給單片機,而濕度傳感器是用555振蕩電路來實現(xiàn)濕度-頻率的轉(zhuǎn)換,所以一個是數(shù)字信號,一個是模擬信號,在電路設(shè)計時,需要將兩部分分開布置,避免不同信號的干擾。在報警電路方面,溫度采用的是溫度檢測芯片設(shè)定的報警值,有上限設(shè)定點和滯后點,當(dāng)溫度達到上限設(shè)定值后報警,當(dāng)溫度下降到滯后值時取消報警。濕度報警是由單片機設(shè)置,當(dāng)超過了設(shè)定的報警值后,啟動蜂鳴器。各項功能基本實現(xiàn),達到設(shè)計目標(biāo)。</p><p>  在畢業(yè)

72、設(shè)計中,通過自己的學(xué)習(xí)與研究,特別是將書本和自己搜索的資料結(jié)合一起時在實際中運用,讓我更加的掌握了理論知識,加深了理論和原理的了解,讓我更深刻的理解到處理實際問題時所面臨的困難以及全面考慮問題的重要性。在這個設(shè)計過程中,提升了查閱文獻資料的水平,增加了獨立思考解決問題的能力,提高了了單片機硬件設(shè)計和軟件編寫的水平。</p><p>  不過由于對51單片機程序編寫的不完善性以及傳感器本身的誤差,還有由于不熟悉液晶

73、顯示軟件運用,在顯示這方面也沒有做的更好,無法設(shè)計更高精度的溫濕度檢測系統(tǒng)。下一步研究可以在顯示上使用液晶顯示,完善產(chǎn)品的可操作性,更要著重于配合更好精度的傳感器,如何在單片機中處理更高位數(shù)的數(shù)據(jù),以增強測量精度,再配合其他器件,達到控制環(huán)境濕度和溫度的目標(biāo)。</p><p><b>  前景展望</b></p><p>  隨著科技的發(fā)展以及人們生活需求的不斷增加和

74、提升,對各種環(huán)境中空氣的濕度和溫度的要求也越來也大。特別是民用的,體積小巧,價格低廉智能溫度和濕度檢測系統(tǒng)將有很大的市場前景。</p><p>  本文研究的是基于LM75A和HS1101的智能溫度和濕度檢測系統(tǒng),有了初步的進展,不過可以通過對電路的改進和程序的加深使兩者的功能得到更加高效的發(fā)揮。未來的智能溫濕度檢測系統(tǒng)儀器外觀更加好看,形狀更加小巧,操作更加簡便,數(shù)據(jù)更加全面,精度更加準(zhǔn)確。另外,將延伸更多的附

75、加功能,例如在電力的維持方面將更加的長久,在不同的領(lǐng)域根據(jù)不同的需求設(shè)計相應(yīng)的功能產(chǎn)品,根據(jù)消費者的需要,添加燈光,語音控制,電子音樂報警,在智能方面,可以通過設(shè)定使用者的愛好,在不同的季節(jié)和不同的天氣自動控制溫濕度的變化等??偠灾?,溫度和濕度的檢測將有更科學(xué),更高性能,更長久的發(fā)展[10]。</p><p><b>  參考文獻</b></p><p>  [1]

76、 中華人民共和國衛(wèi)生部. GBT 18204.14-2000. 中華人民共和國國家標(biāo)準(zhǔn)-公共場所空氣濕度測定方法.北京:中國標(biāo)準(zhǔn)出版社,2000</p><p>  [2] 溫度及其表示方法.老茶的BLOG,文化教育類,2009</p><p>  [3]張俊謨,單片機中級教程[M].北京:北京航空航天大學(xué)出版社,1996,75-85</p><p>  [4] H

77、UMIREL.HPC001.Relative Humiditu Sensor HS1101/HS1101[Z].HUMIREL,2002 </p><p>  [5]楊志忠,數(shù)字電路技術(shù)基礎(chǔ).北京:高等教育出版社,2004,288-289</p><p>  [6] 濕度傳感器HS1101的原理與應(yīng)用.中國電子科技信息網(wǎng)</p><p>  [7]冉彥中,基于單片機

78、的軍需倉庫溫濕度測控系統(tǒng)研究,中國學(xué)術(shù)期刊電子雜志社,2008</p><p>  [8]數(shù)字溫度傳感器和溫度監(jiān)控器-LM75A.周立功單片機公司網(wǎng)站,2004</p><p>  [9]LM75A Digital temperature sensor and thermal watchdog TM.PHILIPS,2004</p><p>  [10]新一代TES

79、TO溫濕度記錄儀系列——溫濕度長期記錄的最佳幫手.德國儀器國際貿(mào)易有限公司,德國中國總部網(wǎng)站,2011</p><p><b>  致 謝</b></p><p>  本文是在胡仕兵老師的關(guān)心和指導(dǎo)下完成的,他耐心的指導(dǎo)和淵博的知識使我受益匪淺,胡老師的指導(dǎo)和我所學(xué)習(xí)到的知識將使我終身受用,特別是胡老師的指導(dǎo)使我能順利完成本課題。在此向他表示我最衷心的感謝!&l

80、t;/p><p>  論文完成過程中,我還得到了許多同學(xué)的幫助,在這里向他們表示誠摯的謝意。</p><p>  感謝所有給與我?guī)椭睦蠋熍c同學(xué)。</p><p>  感謝我的家人給予我的支持與鼓勵。</p><p>  最后向在百忙之中評審本文的各位專家、老師表示衷心的感謝!</p><p><b>  附

81、錄</b></p><p><b>  1:設(shè)計實物圖</b></p><p><b>  2:主程序</b></p><p>  /* 定義相關(guān)變量,wet0,wet1,(記錄頻率的變量)wetdata(濕度),tempdata(溫度)*/</p><p>  unsigned cha

82、r wet0=0,wet1=0;</p><p>  int wetdata = 0;</p><p>  int tempdata = 0;</p><p>  #include"reg52.h"</p><p>  #include"LM75A.h"</p><p>  #i

83、nclude"HS1101.h"</p><p>  /* 定義定時器定時時間,1/20秒*/</p><p>  #define THdef0x4b</p><p>  #define TLdef0xff</p><p><b>  /* 定義端口*/</b></p><p&

84、gt;  sbit BUTTON = P2^2;</p><p>  sbit BUZZER = P2^3;</p><p>  sbit INFORM = P3^1;</p><p>  /*顯示模式,顯示溫度或者顯示濕度*/</p><p>  #define DIS_TEMP 1</p><p>  #d

85、efine DIS_WET2</p><p><b>  /*數(shù)碼管碼表*/</b></p><p>  unsigned char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};</p><p>  //0, 1, 2 3 4 5 6

86、 7 8 9</p><p><b>  /*延時*/</b></p><p>  void delay_xms (unsigned int count) {</p><p>  register unsigned char j;</p><p>  while (count --)</p>&

87、lt;p>  for (j=0;j<125;j++); //約1MS</p><p><b>  }</b></p><p>  /*數(shù)碼管顯示程序*/</p><p>  void Led_Display (int i, char mode) {</p><p>  unsigned char p2ori

88、= P2&0xf;//保存P2端口其他IO口的狀態(tài),防止隨意改變而造成某些讓人不愉快的錯誤</p><p>  char zero_con = 1;//此變量用于判斷在遇到數(shù)字0時應(yīng)該顯示0還是不顯示,比如02的0不用顯示,而102的0需要顯示</p><p>  /* 如果輸入超過可顯示的范圍則退出*/</p><p>  if (i > 999

89、) i=999;</p><p>  else if (i < -99) i=-99;</p><p>  /* 第一個數(shù)字,正負(fù)號或者數(shù)字*/</p><p>  if (i < 0) {</p><p>  P0 = 0x40;</p><p><b>  i = -i;</b>&

90、lt;/p><p><b>  } else {</b></p><p>  if (i/100 == 0) {</p><p>  P0 = 0x00;</p><p><b>  } else {</b></p><p>  zero_con = 0;</p>

91、<p>  P0 = ~tab[i/100];</p><p><b>  }</b></p><p><b>  }</b></p><p>  P2 = p2ori|(~0x10);</p><p><b>  i%=100;</b></p><

92、;p>  delay_xms(1);</p><p>  /* 第二個數(shù)字,顯示數(shù)字 */</p><p>  if (i/10 == 0 && zero_con) P0 = 0x00;</p><p>  else P0 = ~tab[i/10];</p><p>  P2 = p2ori|(~0x20);</p

93、><p>  delay_xms(1);</p><p>  /*第三個數(shù)字,顯示數(shù)字*/</p><p>  P0 = ~tab[i%10];</p><p>  P2 = p2ori|(~0x40);</p><p>  delay_xms(1);</p><p>  /* 第四個數(shù)字,顯示單位

94、,C或者H */</p><p>  if (mode == DIS_TEMP)</p><p>  P0 = 0x39;</p><p><b>  else</b></p><p>  P0 = 0x76;</p><p>  P2 = p2ori|(~0x80);</p>&l

95、t;p><b>  }</b></p><p>  /*定時器1,用于定時1/20秒,然后從計數(shù)器0中讀出計數(shù)值,計數(shù)值乘以20即頻率,根據(jù)頻率即可換算出相應(yīng)數(shù)據(jù)*/</p><p>  void timer1() interrupt 3 {</p><p><b>  int a,b;</b></p>

96、<p>  /*為防止意外,關(guān)閉中斷,并且復(fù)位1/20秒的定時器*/</p><p><b>  EA=0;</b></p><p><b>  TR0=0;</b></p><p><b>  TR1=0;</b></p><p>  TL1=TLdef;<

97、/p><p>  TH1=THdef;</p><p>  /* 如果計數(shù)器0溢出則不正常,因為計數(shù)器0的計數(shù)最大為65535,是不可能溢出的 */</p><p>  if (TF0) {</p><p><b>  wet0 = 0;</b></p><p><b>  wet1 = 0

98、;</b></p><p><b>  TF0 = 0;</b></p><p>  /*沒有溢出的話,讀取數(shù)據(jù)并計算。計算時為減輕計算量使用分段的一次函數(shù)擬合原曲線。相關(guān)參數(shù)定義在HS1101.h中</p><p>  * 一次函數(shù)對應(yīng)為rh=f*a+b,為減小整形除法帶來的小數(shù)忽略造成的誤差,更改為rh=(b-f*10)/a *

99、/</p><p><b>  } else {</b></p><p><b>  wet0=TL0;</b></p><p><b>  wet1=TH0;</b></p><p>  wetdata=wet0|(wet1<<8);</p><

100、;p>  wetdata=20*wetdata;</p><p>  if (wetdata >= wetf0 && wetdata <= wetf1) {</p><p>  a = weta0; b = wetb0;</p><p>  } else if (wetdata >= wetf1 &&am

101、p; wetdata <= wetf2) {</p><p>  a = weta1; b = wetb1;</p><p>  } else if (wetdata >= wetf2 && wetdata <= wetf3) {</p><p>  a = weta2; b = wetb2;</p><p>

102、;  } else if (wetdata >= wetf3 && wetdata <= wetf4) {</p><p>  a = weta3; b = wetb3;</p><p>  } else if (wetdata >= wetf4 && wetdata <= wetf5) {</p><p> 

103、 a = weta4; b = wetb4;</p><p>  } else if (wetdata >= wetf5 && wetdata <= wetf6) {</p><p>  a = weta5; b = wetb5;</p><p>  } else if (wetdata >= wetf6 && we

104、tdata <= wetf7) {</p><p>  a = weta6; b = wetb6;</p><p>  } else if (wetdata >= wetf7 && wetdata <= wetf8) {</p><p>  a = weta7; b = wetb7;</p><p>  }

105、else if (wetdata >= wetf8 && wetdata <= wetf9) {</p><p>  a = weta8; b = wetb8;</p><p>  } else if (wetdata >= wetf9 && wetdata <= wetf10){</p><p>  a =

106、weta9; b = wetb9;</p><p><b>  } else {</b></p><p>  a = 0; b = 0;</p><p><b>  }</b></p><p>  if (a == 0 && b == 0) wetdata = 0;</p>

107、;<p>  else wetdata = (b - wetdata * 10)/a + 15;</p><p><b>  }</b></p><p>  /*計數(shù)器復(fù)位,重新啟動定時器和中斷*/</p><p><b>  TL0=0x00;</b></p><p><b&g

108、t;  TH0=0x00;</b></p><p><b>  TR0=1;</b></p><p><b>  TR1=1;</b></p><p><b>  EA=1;</b></p><p><b>  }</b></p>

109、<p>  void main() {</p><p>  unsigned char i = 0;//此變量用于某些情況下的計數(shù)</p><p>  char dis_mode = DIS_TEMP;//顯示模式</p><p>  char ci = 0;</p><p>  /*初始化定時器。因為初始化這種行為只會發(fā)生一

110、次,所以沒有包裝為函數(shù),增加軟件運行速度。*/</p><p>  SCL_LM75=1;</p><p>  SDA_LM75=1;</p><p>  TMOD=0x15;</p><p><b>  TL0=0x00;</b></p><p><b>  TH0=0x00;<

111、/b></p><p><b>  TL1=0xaf;</b></p><p><b>  TH1=0x3c;</b></p><p><b>  ET1=1;</b></p><p><b>  EA=1;</b></p><p

112、><b>  TR1=1;</b></p><p><b>  TR0=1;</b></p><p><b>  /* 初始化*/</b></p><p>  BUTTON = 1;</p><p>  BUZZER = 1;</p><p>  

113、INFORM = 1;</p><p>  /*初始化測溫芯片,更改報警溫度,詳情見LM75A.h */</p><p>  delay_xms(100);</p><p>  write_conf();</p><p>  write_limit();</p><p>  write_delay();</p&g

114、t;<p>  /*以下進入主例程*/</p><p>  while (1) {</p><p>  /*從LM75A讀出溫度數(shù)據(jù)并轉(zhuǎn)換為相應(yīng)溫度,精確到個位 */</p><p><b>  ci++;</b></p><p>  if (ci >= 100) {</p><p

115、><b>  ci = 0;</b></p><p>  read_intpre();</p><p>  tempdata=tempdata/8;</p><p><b>  } else {</b></p><p>  delay_xms(1);</p><p>&

116、lt;b>  }</b></p><p>  INFORM = 1;</p><p>  if (INFORM == 0 || tempdata >= 40) {</p><p>  BUZZER = 0;</p><p><b>  }</b></p><p>  /*

117、根據(jù)現(xiàn)實模式不同顯示不同數(shù)據(jù) */</p><p>  if (dis_mode == DIS_TEMP) {</p><p>  Led_Display(tempdata,DIS_TEMP);//tempdata</p><p><b>  } else {</b></p><p>  Led_Display(wetd

118、ata,DIS_WET);//wetdata</p><p><b>  }</b></p><p>  /* 視察按鍵是否被按下。如果按鍵被按下過又沒有彈起的話會進入else if。 */</p><p>  if (i == 0 && BUTTON==0) {</p><p>  BUTTON = 1

119、;</p><p>  for (i = 100; i > 0; i--);//按鍵去抖</p><p>  /*更改顯示模式*/</p><p>  if (BUTTON==0) {</p><p>  if (dis_mode == DIS_TEMP) dis_mode = DIS_WET;</p><p>

120、;  else dis_mode = DIS_TEMP;</p><p><b>  }</b></p><p>  BUTTON = 1;</p><p><b>  i = 222;</b></p><p>  /*在按鍵被下過而又沒有彈起的情況下會進入這個else if。 */</p&g

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論