




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、畢業設計(論文)題 目: 溫濕度系統的軟件設計 學 院: 信息工程學院專業名稱: 電子信息工程班級學號: 08041232學生姓名: 周赟指導教師: 劉清平二O一二 年 六 月 溫濕度系統的軟件設計學生姓名:周赟 班級:08041232指導老師:劉清平摘要:隨著微電子技術、計算機技術、測試技術的發展,單片機通信和信息監測技術在日常生活中的運用日益廣泛。雖然紅外,藍牙等無線通信技術得到了很大的發展,但是有線通信仍然是占據著當今通信領域的半壁江山,其在各種信息監測和通信方面也占有著重要的作用。本文采用STC89C52單片機為主控微處理器,設計了一個能夠同時監測溫度和濕度的單片機系統。本設計是以單片
2、機STC89C52為核心,配合DS1820溫度傳感器和CHR-01濕度傳感器,以及相關的外圍電路組成的檢測系統,可以接收所測環境的溫度和濕度信號,檢測人員可以通過數碼管顯示的數據,實時監控環境的溫度和濕度情況。本系統包括系統硬件和軟件設計,可靠性高,結構簡單,實現了對溫濕度的自動調節。該系統的測溫范圍:-25+55,采集精度為±0.5,濕度范圍:20%80%,采集精度為±5%。用DS18B20溫度傳感器作為溫度采集模塊,采用CHR-01作為濕度傳感器,LM324作為運算放大器,TLC0831作為模數轉換器等組成了濕度采集模塊;利用HD7279A 作為鍵盤和顯示模塊;使用單片
3、機的串口組成數據發射、接收模塊。 經過精心的設計和制作,整個系統完成了對溫度和濕度的采集、傳輸、接收和顯示等功能,該系統具有系統結構簡單、電路成本低、數據傳輸距離長,傳輸精度高、抗干擾強等特點。關鍵詞:溫度傳感器 濕度傳感器 STC89C52單片機 指導老師簽名:The software design of Temperature and humidity systemStudent name : Zhou Yun Class: 08041232Supervisor: Liu Qingping Abstract: With microelectronic technology, compute
4、r technology, testing technology, computer communication and information monitoring technology in daily life increasingly widespread use. Although the infrared, Bluetooth and other wireless communication technology has got great development, but is still occupying the wired communication communicati
5、on field in the half of the country, all kinds of information monitoring and communication also plays an important role in.In this paper, using STC89C52 microcontroller to control the microprocessor, the design of a can simultaneously monitor the temperature and humidity of the single chip microcomp
6、uter system. The design is based on STC89C52 single chip computer as the core, with the temperature sensor DS1820 and CHR-01 humidity sensor, and related peripheral circuits of the detection system, which receives the measurement of environmental temperature and humidity signals, the testing personn
7、el can through the digital tube display data, real time monitor of environment temperature and humidity conditions. The system includes the design of hardware and software, high reliability, simple structure, realizes the automatic regulation of temperature and humidity. The system of temperature me
8、asurement range: -25 - +55 , acquisition accuracy is ± 0.5 , humidity range:20% - 80%, acquisition accuracy is ± 5%. With the temperature sensor DS18B20as the temperature acquisition module, using CHR-01as a humidity sensor, LM324 as operational amplifier, TLC0831 as analog-to-digital conv
9、erter composed of humidity acquisition module; the use of HD7279A as a keyboard and display module; the use of single-chip serial port data transmitting, receiving module.Carefully design and production, the whole system for temperature and humidity of the collection, transmission, reception and dis
10、play functions, the system has the advantages of simple structure, low cost, data transmission circuit for long distance, high transmission precision, strong anti-interference.Keyword:Temperature sensor Humidity sensor STC89C52 single chip microcomputer Signature of Supervisor:目 錄1 緒 論51.1 課題研究背景及意義
11、51.2 國內外研究概括及發展趨勢51.3 課題設計的主要內容62 系統總體設計方案72.1 課題設計的主要內容82.2 系統組成框圖83 系統硬件電路設計93.1 單片機最小系統93.2 溫度采集電路的設計123.3 濕度采集電路的設計143.4 A/D轉換電路的設計183.5 鍵盤顯示電路的設計203.6 報警電路的設計214 系統的軟件設計224.1 系統主程序設計224.2 中斷模塊244.3 鍵盤顯示模塊264.4 采樣轉換模塊284.5 溫度采樣模塊294.6 濕度采樣模塊294.7 報警模塊305 系統調試315.1 單片機最小系統的調試315.2 鍵盤顯示電路的調試325.3
12、溫度采集電路的調試325.4 濕度采集電路的調試325.5 系統軟件調試336 總結與展望35參考文獻37致 謝38附 錄 A 系統原理圖38附 錄 B 源程序清單391 緒 論1.1 課題研究背景及意義濕度和溫度是測量領域內十分重要的被測對象。不管是人類賴以生存的居住環境,還是工農業生產,亦或者是軍事、氣象觀測等領域都需要對溫度和濕度進行測量和控制。隨著電子技術、計算機技術、通信技術、傳感器及傳感器材技術的迅速發展,測量領域內對溫度和濕度的檢測也取得了跨越式的發展!可以說對溫濕度的測量與控制水平直接影響到人類的所有活動。現代人類對生活環境的要求越來越高,尤其是溫濕度的影響,溫度高了或者低了都
13、直接影響著這個社會,而濕度低了或高了也同樣影響著我們的生活以及其他物種的生存條件。濕度和溫度是眾多領域中需要檢測的重要環境參數。不僅在工業、現代農業,還是在氣象衛星、倉庫保管等領域,對溫度和濕度的測量都是隨處可見的。對溫度和濕度的測量與監控也是十分有意義的。對濕度和溫度進行合理有效的調控不僅可以節約能源還更有利各行業安全健康的發展。在工業領域,各種現代化的機器設備都需要考慮其所在工作環境的溫濕度。電器設備是工業領域最常使用也是使用最多的基礎設備。溫濕度的高低對電器設備的研發者來說是必須要考慮的重要課題。工程師在設計電器產品的時候必須要考慮設計出的產品將來工作環境中溫濕度的大小,使用過程中散熱通
14、風的問題。選擇合適的材料并且對電氣設備外表面進行合理有效的封裝可以提高電氣設備的使用壽命。大型的電器設備長期處于高電壓、大電流和滿負荷運行,其結果是造成熱量集結加劇,由電流熱效應造成的危害直接影響電器設備的絕緣設施,危害機器的正常運轉和操作人員的人身安全,所以就要求對電氣設備的溫濕度狀況進行測量控制。溫濕度對植物、動物的生長都有一定的影響,當溫度達到了植物和動物生長所能承受的最高值和最低值時,這些植物和動物就會慢慢的消失,或者演變成其他的一些物種,同樣濕度也對動植物的生長有著不可小視的影響,所以對一定的溫濕度我們必須測量。同時我們也必須要記錄大氣的溫濕度的變化,這樣我們才更能對我們的生活的環境
15、的變化有個直觀的了解!1.2 國內外研究概括及發展趨勢國內外溫度控制系統發展迅速,并在智能化、自適應、參數自整定等方面取得成果。目前社會上溫度控制大多采用智能調節器,國產調節器分辨率和精度較低,溫度控制效果不是很理想,但價格便宜,國外調節器分辨率和精度較高,價格較貴。日本、美國、德國、瑞典等技術領先,都生產出了一批商品化的、性能優異的溫度控制器及儀器儀表并在各行業廣泛應用。它們主要具有如下的特點:一是適應于大慣性、大滯后等復雜溫度控制系統的控制;-是能夠適應于受控系統數學模型難以建立的溫度控制系統的控制;三是能夠適應于受控系統過程復雜、參數時變的溫度控制系統的控制;四是溫度控制系統普遍采用自適
16、應控制、自校正控制、模糊控制、人工智能等理論及計算機技術,運用先進的算法,適應的范圍廣泛;五是溫控器普遍具有參數自整定功能。借助計算機軟件技術,溫控器具有對控制對象控制參數及特性進行自動整定的功能。有的還具有自學習功能,能夠根據歷史經驗及控制對象的變化情況,自動調整相關控制參數,以保證控制效果的最優化;六是具有控制精度高、抗干擾力強、魯棒性好的特點。目前,國內外溫度控制系統及儀表正朝著高精度、智能化、小型化等方面快速發展。近年來,國內外在濕度和溫度傳感器研發領域取得了長足進步。溫濕度傳感器正從結構復雜、功能簡單向集成化、智能化、多參數檢測的方向迅速發展,為開發新一代溫濕度測控系統創造了有利條件
17、,也將溫度、濕度測量技術提高到新的水平。國內數字溫濕度儀測量溫濕度采用的主要方法有:“溫阻”法和“濕阻”法,即采用電阻型的溫濕度傳感器,利用其阻值隨溫濕度的變化測定空氣的溫度和相對濕度。受傳感器靈敏度的限制,這類溫濕度儀的精度不可能很高,一般條件下還可以滿足需要,但是在環境實驗設備等對精度要求頗高的場合就難以滿足要求了。目前,國外對溫濕度傳感器技術的研究也有了較大的進展,特別是用電阻式溫濕傳感器發展更快,人們不僅在電阻式陶瓷溫濕度傳感器特性方面做了大量工作,而且在高分子電阻式濕度傳感器上做出可喜的研究成果。1.3 課題設計的主要內容單片機是系統的控制核心,所以單片機的性能關系到整個系統的好壞。
18、因此單片機的選擇,對所設計系統的實現以及功能的擴展有著很大的影響。單片機種類很多,在眾多51系列單片機中,STC89C52含有在系統可編程的Flash存儲器,片內有8K閃存,RAM的容量也較AT89C51大,為256字節。顯然這種單片機優點更多,開發時間也大為縮短。因此,在本次設計中選用了STC89C52單片機。本設計中,最終選用的集成溫度傳感器DS18B20是美國模擬器件公司生產的集成兩端感溫電流源,通過對電流的測量可得到所需要的溫度值。濕度傳感器是采用了CHR-01阻抗型高分子濕度傳感器,它是一種熱固聚脂電容式傳感器。采集到的濕度信號再配以進行適當的放大,經過A/D轉換送至單片機,實現濕度
19、的顯示與控制。系統主要由以上元器件組成,通過硬件電路和軟件程序的設計,實現系統的基本功能。本課題研究設計的是基于單片機STC89C52的溫濕度檢測和控制系統,主要以廣泛應用的DS1820和CHR-01阻抗型高分子作為溫度和濕度的檢測,該儀器具有測量精度高、硬件電路簡單、并能很好的進行顯示,可測試不同環境溫濕度的特點。2 系統總體設計方案2.1 課題設計的主要內容本設計是基于STC89C52單片機的溫濕度數據采集監測系統,主要完成以下功能:1) 選擇STC89C52單片機,了解其基本特性和功能,使用STC89C52實現對溫濕度的采集監測。2) 使用DS18B20溫度傳感器測量現場環境溫度,進行數
20、據的采集及傳到單片機處理,溫度誤差0.1。3) 使用CRH-01阻抗型濕度傳感器對現場時讀數據采集,由單片機進行數據處理,濕度誤差5。4) 使用STC89C52單片機接收數據并處理, 具有定點監測方式,有數據和狀態顯示功能。5) 環境溫濕度超過一定范圍就報警。在完成以上功能時,要確保系統的可靠性和穩定性,是系統能夠長期穩定的工作。2.2 系統組成框圖本設計是基于單片機對數字信號的高敏感和可控性、溫濕度傳感器可以產生模擬信號,和A/D模擬數字轉換芯片的性能,此設計以STC89C52基本系統為核心的一套檢測系統,其中包括A/D轉換、單片機、復位電路、溫度檢測、濕度檢測、鍵盤及顯示、報警電路、系統軟
21、件等部分的設計。系統總體方框圖如圖2.1所示。DS18B20溫度測量CHR-01濕度測量 信號調理電路鍵盤顯示報警電路輸出控制A/D轉換 單片機時鐘電路復位電路數碼管顯示圖2.1 系統總體框圖通過系統組成框圖可以看出系統的各個模塊及其模塊間的關系。按照本課題的設計要求分析組成框圖。本設計的課題是基于單片機串口通信的信息監測系統的研制。課題的主要內容是以STC89C52為控制中心設計的系統。單片機STC89C52是整個系統的核心,它完成溫度和濕度的采集、數據計算處理、結果顯示,串口通信等工作。3 系統硬件電路設計3.1 單片機最小系統本設計采用的是STC89C52單片機,STC89C52是一種帶
22、8K字節閃爍可編程可檫除只讀存儲器(FPEROM-Flash Programable and Erasable Read Only Memory )的低電壓,高性能COMOS8的微處理器,俗稱單片機。該器件采用ATMEL搞密度非易失存儲器制造技術制造,與工業標準的MCS-51指令集和輸出管腳相兼容。其原理圖如下圖所示:圖3.1 最小系統電路圖STC89C52單片機是雙列直插式40引腳封裝。這40引腳大致分為:電源(VCC、VSS、VDD、VPD),時鐘(XTAL1、XTAL2),I/O(P0-P3),地址總線(P0、P2),數據總線(BUS)和控制總線(ALE、RST、PROG、PSEN、EA
23、)6大部分。STC89C52的引腳圖如下圖所示:圖3.2 STC89C52引腳圖電源線 VCC:芯片的主電源,接+5V電壓。 VSS:電源地線。控制總線 ALE/PROG:地址鎖存允許信號,在它的下降沿用于外部存儲器的低8位地址鎖存,使BUS(P0)分時用作地址總線低8位和數據總線。此信號每機器周期出現2次,只在訪問外部數據存儲器期間才不輸出ALE。所以在任何不使用外部數據存儲器的系統中,ALE以1/6振蕩頻率的固定速率輸出,因而它能用作外部時鐘和定時器。 /PSEN:外部程序存儲器選擇信號,并在外部程序存儲器讀取指令時產生,指令內容讀到數據總線上。PSEN在每個機器周期產生2次有效,在執行內
24、部程序存儲器取指時,PSEN無效。 RST/VPD:復位輸入信號。在振蕩器工作時,該引腳2個機器周期的高電平可實現復位操作。在掉電情況下(VCC降到操作允許限度以下),VPD將為芯片內的RAM提供備用電源。 /EA/VDD:訪問外部程序存儲器控制信號輸入端。當為低電平時,單片機都到外部程序存儲器取指。當EA為高電平且PC值小于0FFFH時,CPU執行內部程序存儲器程序。I/O線 P0(BUS):單片機的雙向數據總線和低8位地址總線。在分時操作時先用作地址總線,在ALE信號的下降沿,地址被鎖存,然后作為數據總線;也可以作為雙向并行I/O口。在程序校驗期間,它用于數據輸出。 P1:準雙向I/O口。
25、 P2:準雙向I/O口。在訪問外部存儲器時,用作高8位地址總線。 P3:準雙向I/O口。P3的每一根線還有特殊的第二功能,如表3.1所示。表3.1 P3口的第二功能引腳第二功能標記第二功能P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2 INT0外部中斷0輸入P3.3 INT1外部中斷1輸入P3.4T0 定時/計數器0外部輸入P3.5T1定時/計數器1外部輸入P3.6WR外部數據存儲器寫選通P3.7RD外部數據存儲器讀選通3.2 溫度采集電路的設計3.2.1 DS18B20的測溫原理數字化溫度傳感器DS18B20,是美國DALLAS半導體公司生產的可組網數字溫度傳感器芯片,在其內部使用
26、了在板(ON-BOARD)專利技術。全部傳感元件及轉換電路集成在形如一支三極管的集成電路內,支持“一線總線”的數字方式傳輸,具有較強的抗干擾性,適合于惡劣環境的現場溫度測量。DS18B20測溫原理如圖3.3所示。圖中低溫度系數晶振的振蕩頻率受溫度影響很小,用于產生固定頻率的脈沖信號送給計數器1。高溫度系數晶振隨溫度變化其振蕩頻率明顯改變,所產生的信號作為計數器2的脈沖輸入。計數器1和溫度寄存器被預置在55所對應的一個基數值。計數器1對低溫度系數晶振產生的脈沖信號進行減法計數,當計數器1的預置值減到0時,溫度寄存器的值將加1,計數器1的預置將重新被裝入,計數器1重新開始對低溫度系數晶振產生的脈沖
27、信號進行計數,如此循環直到計數器2計數到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數值即為所測溫度。圖3.3中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正計數器1的預置值。圖3.3 DS18B20的測溫原理圖3.2.2 DS18B20與單片機的接口電路設計 圖3.4 DS18B20與單片機接口電路圖如圖3.4采用外接電源供電方式,在外接電源供電方式下,DS18B20從單線信號線上吸取能量,在信號線DQ處于高電平期間把能量儲存在內部電容里,在信號線處于低電平期間消耗電容上的電能來繼續工作,直到高電平到來再給寄生電源(電容)充電。獨特的寄生電源方式有三個好處,分別是在進行遠距
28、離測溫時,無需本地電源;可以在沒有常規電源的條件下讀取ROM;電路更加簡潔,僅用一根I/O口實現測溫。要想使DS18B20進行精確的溫度轉換,I/O線必須保證在溫度轉換期間獲得足夠的能量。該電路只適應于單一溫度傳感器測溫情況下,不適宜于電池供電系統中工作,并且工作電源VCC必須保證在5V,當電源電壓下降時,寄生電源能夠汲取的能量也降低,會使溫度誤差變大。單片機的P1.4口接DQ,當DS18B20處于寫存儲器操作和溫度A/D轉換操作時,總線上必須有強的上拉,上拉開啟時間最大為10us。由于單線制只有一根線,因此發送接收口必須是三態的。主機控制DS18B20完成溫度轉換必須經過3個步驟:初始化、R
29、OM操作指令、存儲器操作指令。本次單片機系統所用的晶振頻率為11.0592 MHz,根據DS18B20的初始化時序、寫時序和讀時序,分別編寫3個子程序:初始化子程序、寫(命令或數據)子程序、讀數據子程序,所有的數據讀寫均由最低位開始。3.3 濕度采集電路的設計本設計中采用CHR-01阻抗型高分子濕度傳感器,利用其阻抗的特性來分壓,直接通過分壓法采集,將濕度信號轉換成電壓信號,經放大和A/D轉化成數字信號進入單片機處理,同時檢測當前溫度T,通過查閱濕度傳感器Z/RH/T數據表,反推得到當前的相對濕度RH%。3.3.1 CRH-01濕度傳感器的特性參數1)工作電壓:1V AC(50Hz
30、2 K Hz)2)檢測范圍:20%90% RH3)檢測精度:±5%4)工作溫度范圍:085 5)最高使用溫度:1206)特征阻抗范圍:30(21 40.5)K,( 60%RH, 25)7)響應時間:12 s (0% 100%)8)濕度飄移(/年):±2% RH9)濕滯: 1.5%RH表3.2 060濕度阻抗特性數據表152535405530%518.8352.8256.7241.313735%347.6261.814313780.3340%277.2166.693.681.535045%172.892.860.352.733.3850%96.360.641.4334.322
31、.0555%70.840.429.1224.2515.8860%56.229.520.817.7112.1765%43.321.115.6113.129.0270%31.315.4411.5110.096.5875%22.611.848.747.354.6480%15.89.136.525.463.3885%10.486.554.523.892.4890%74.63.152.651.807 單位: K圖3.5 060濕度阻抗特性特性圖3.3.2 模擬信號產生電路高分子濕度傳感器CHR-01為新一代復合型電阻型濕度敏感部件,其復阻抗與空氣相對濕度成指數關系,直流阻抗(普通數字萬用表測量)幾乎為無
32、窮大,與傳統意義上的電阻有空氣中水分子參與膜感濕中的離子導電,由于水分子為極性分子,在直流電存在的情況下,會電離,分解,從而影響導電與元件的壽命,所以要求采用交流電路對傳感器進行供電。 555定時器是一種多用途單片集成電路,利用它可以極方便地構成施密特觸發器、單穩態觸發器和多諧振蕩器。555定時器使用靈活、方便。因而得到廣泛應用。本設計中濕敏電阻的工作電壓只能是交流電壓,采用555多諧振蕩器正好可以滿足這個要求。濕敏電阻的阻抗變化能反映環境濕度的變化,使其輸出的電壓也有對應的變化繼而將數據傳到單片機內處理。 圖3.6 方波信號產生電路如圖3.6 所示,為模擬電壓信號產生電路,2、6腳短接作為輸
33、入,3腳輸出,利用555定時器組成了一個多諧振蕩器。考慮到濕敏電阻的工作頻率為50Hz2 K Hz,所以參數的選擇要使輸出頻率在適當的范圍內。筆者設計讓其輸出一個固定頻率為1KHZ,幅度為4V的矩形方波信號。輸出矩形方波的頻率如下所示。F=1.43/(RA+2RB)C1 式(1-1)在此555多諧振蕩電路中,和5腳相連的電容C2固定為0.01,不必參與參數選擇。同時C1不能太小,否則電路不起振,確定F=1KHZ,確定參數RB=510, C1=1F,可代入式1-1中進行計算,得到滑動變阻器RA等于410左右,硬件調試時只要讓RA調到410即可。產生的矩形方波信號經過C3時,被濾除了直流分量進入濕
34、度傳感器CHR-01,濕度傳感器輸出電壓為V0,電阻為Rchr,由式(1-2)V0=V*R4/(R4+Rchr) 式(1-2)通過電壓采樣后得到V0,再由式(1-3)計算得到Rchr。 Rchr= R4*(V-V0)/V0 式(1-3)同時檢測當前溫度T,通過查閱濕度傳感器Z/RH/T數據表,在不同溫度下Rchr的值推算出當前的相對濕度RH%。R4采樣電阻的阻值通常建議在30200K,側重高濕測量,采樣電阻阻值可降低到20K,低濕阻值可提高到200K。3.3.3 放大和整流濾波電路產生的電壓信號由于比較小,由3腳進入運放進行放大,再通過濾波整行電路才能進入A/D轉換。如圖3.7所示為放大和整形
35、濾波電路。 圖3.7 放大和整形濾波電路運放采用的是LM324四運算放大器 ,放大倍數為Av=(1+RP2/R7)。硬件調試時只要調節RP2,就可以達到想要的放大部數。經放大的電壓信號,從1腳進入整流濾波電路,利用兩個二極管的單向導通性,達到整流的目的,C6,C7起到濾波的作用。3.4 A/D轉換電路的設計3.4.1 A/D芯片的選擇A/D 轉換是決定測量精度和穩定性的重要一環。所以,A/D的選擇也是一個要重點考慮的問題。本次設計中使用的是TLC0831。TLC0831是8位逐次逼近電壓型A/D轉換器,支持單信道輸入串口輸出,極性設置固定,不需尋址。其內部有一采樣數據比較器將輸入的摸擬信號微分
36、比較后轉換為數字信號。摸擬電壓的差分輸入方式有利于抑制共摸信號和減少或消除轉換的偏移誤差。而且,電壓基準輸入可調,使得小范圍摸擬電壓信號轉化時的分辨率更高。其主要特點如下:(1) 8位分辨率;(2) 單信道差分輸入;(3) 5V的電源提供0-5V可調基準電壓;(4) 輸入輸出可與TTL和MOS兼容;(5) 總失調誤差為1SB。此次設計的目的是初步實現對溫度的采集和轉化。綜合比較兩塊芯片發出,雖然ADC0809芯片轉換速度快,但其硬件電路相對較復雜一些,且占用I/O多,TLC0831為串口輸出,芯片的精度、速度都不錯,能滿足這次設計的要求,而且占用很少I/O口。設計者從成本最小化和實用化的原則出
37、發,選擇了TLC0831。3.4.2 A/D轉換電路的設計此次A/D電路設計的主要任務是反映電壓信號的模擬量轉換成數字量,其電路原理圖如圖3.8所示: 圖3.8 A/D電路原理圖其中:整流濾波后的模擬電壓信號經2腳輸入到TLC0831A/D,CS和CLK分別接單片機的P3.6和P3.7口, 6腳數據輸出接P3.5口。這樣,TLC0831采用了串行發送數據的方式傳送給單片機進行處理,這樣只要求占用單片機的三根I/O線,比并行發送數據的方式少很多。采集數據時,首先微處理器執行一條傳送指令,在該指令執行過程中,微處理器在控制總線的同時產生CS,WR 低電平信號,啟動A/D 轉換器工作,TLC0831
38、經延時后將輸入模擬信號轉換為數字信號存于輸出鎖存器,并在等待轉換結束后,通知微處理器來取數據。微處理器立即執行輸入指令,以產生CS,RD 低電平信號到TLC0831 相應引腳,將數據取出并存入存儲器中。3.5 鍵盤顯示電路的設計在一個系統中,鍵盤和顯示模塊也是不可缺少的一個重要部分。顯示模塊將單片機處理后的數據直觀的顯示給人看,而人又可以通過鍵盤按鍵操作單片機的運行等,從而達到很好的人機對話功能。本系統采用的是八段數碼管顯示,顯示電路和鍵盤電路的設計思路,結合整體設計的需要以及管理顯示器的芯片,決定使用HD7279A來進行管理,不僅大大地節約了STC89C52的端口,而且還避免了對鍵盤進行消抖
39、的處理,此消抖處理工作可以由HD7279A自動完成,從軟件與硬件的角度來看都是一種極大的節省。HD7279A是一片具有串行接口的、可同時驅動8位共陰式數碼管的智能顯示驅動芯片,該芯片同時還可以連接多達64鍵的鍵盤矩陣,單片即可完成LED顯示,鍵盤接口的全部功能。HD7279A的主要功能:同時驅動8位共陰式七段LED數碼管(或64只獨立的LED),提供了兩種譯碼方式和消隱、閃爍、移位等多種控制功能,能管理多達64鍵的鍵盤矩陣,采用串行接口,節約單片機的IO口線,特別適用于內嵌ROM的單片機不作總線擴展、僅使用片上的IO接口的情況。這樣,既節省了布線空間,又簡化了電路設計,使儀表的進一步微型化成為
40、可能。HD7279A鍵盤、顯示接口電路圖如下圖所示:圖3.9 HD7279A鍵盤、顯示接口電路圖3.6 報警電路的設計本設計采用峰鳴音報警電路。峰鳴音報警接口電路的設計只需購買市售的壓電式蜂鳴器,然后通過MCS-51的1根口線經驅動器驅動蜂鳴音發聲。壓電式蜂鳴器約需10mA的驅動電流,可以使用TTL系列集成電路7406或7407低電平驅動,也可以用一個晶體三極管驅動。在圖中,P3.2接晶體管基極輸入端。當P3.2輸出高電平“1”時,晶體管導通,壓電蜂鳴器兩端獲得約+5V電壓而鳴叫;當P3.2輸出低電平“0”時,三極管截止,蜂鳴器停止發聲。NPN5.6K3.3K+5VP3.2AT89S52PB2
41、130UP002A圖3.10 三極管驅動的峰鳴音報警電路4 系統的軟件設計軟件系統由數據采集模塊、鍵盤顯示模塊、報警模塊組成。其中數據采集模塊包括溫度和濕度的采集、數據處理、中斷處理幾個模塊。圖4.1 系統模塊圖4.1 系統主程序設計主程序是設計的主體,是由功能不同的子程序和中斷服務子程序組成。本系統主程序的運行如下操作:串口初始化,完成初始化操作后,循環掃描鍵盤,當有相應按鍵時對應不同的功能,開始采集溫度或者濕度數據,判斷溫濕度是否超出設定范圍,如若超出則報警,沒有就經數碼管顯示讀數,主程序流程圖如下圖所示。開始判斷顯示溫度/濕度判斷顯示通道讀溫度/濕度值顯示溫度/濕度值判斷是否超出設定范圍
42、報警NY初始化啟動溫/濕度測量圖4.2 主程序流程圖4.2 中斷模塊定時器中斷入口保護現場定時次數寄存器加一重賦定時器初值調AD采樣子程序調PID控制子程序調顯示子程序是否到255次定時次數寄存器清零加熱器加熱中斷次數是夠大于占空比恢復現場加熱器停止加熱中斷返回圖4.3 中斷服務程序框圖 4.3 鍵盤顯示模塊微機所用的鍵盤可分為編碼鍵盤和非編碼鍵盤兩種。編碼鍵盤采用硬件線路來實現鍵盤編碼,每按下一個鍵,鍵盤能自動生成按鍵代碼,鍵數較多,而且還具有去抖功能。非編碼鍵盤僅提供按鍵開關狀態,其它工作由軟件完成。HD7279A的鍵盤則屬于編碼鍵盤。按照鍵盤與CPU的連接方式可以分為獨立鍵盤和矩陣式鍵盤
43、。在獨立式鍵盤中,每個按鍵是相互獨立的,每個按鍵占用一根I/O口線,每根I/O口線上的按鍵工作狀態不會影響其它I/O口線按鍵的工作狀態。獨立式鍵盤電路配置靈活,軟件結構簡單,但每個按鍵必須占用I/O口,有按鍵數量較多時,I/O口線浪費較大,且電路結構顯得復雜。這種形式適用于按鍵數量較少的場合。在按鍵數量較多時,采用矩陣式鍵盤,可以減少占用I/O線。由于本系統中用的按鍵較多,但是也有手動/自動功能的切換,所以設計時既采用的獨立式鍵盤,又采用了矩陣式鍵盤來完成上述功能。HD7279A管理的八段數碼管有兩種方式的譯碼顯示,按方式0譯碼顯示的指令碼為80H87H,按方式1譯碼顯示的指令碼為C8HCFH
44、。低四位的07或8F表示選擇想要顯示的LED數碼管。R0單元的值放需顯示的十位數,R1單元的值放需顯示的個位數。本系統中使用HD7279A芯片完成有關鍵盤輸入和溫濕度顯示工作。溫度濕度是依次輸入的并且依次以下限、上限輸入,并且將溫濕度的中間數值存入單片機中,在將8段LED數碼管清零后顯示(分別在0123位),并依次顯示實時的溫度濕度數值(顯示在4567位)實際上,在系統初始化的過程中,除了初始化鍵盤和顯示器之外,其中還包括著調用7279鍵盤顯示模塊,7279鍵盤顯示模塊部分的基本流程如下圖所示。開始掃描鍵盤判斷是否有鍵按下延時20ms判斷是否真有鍵按下開始鍵?結束鍵啟動系統工作NNYYNY圖4
45、.4 鍵盤掃描程序流程圖圖4.5 7279鍵盤顯示模塊部分流程圖圖4.6 顯示鍵值的流程圖4.4 采樣轉換模塊轉換模塊是本系統中的核心模塊之一,它負責完成溫度和濕度的測量及模擬量轉換為數字量的全過程,這也是它為什么重要的原因。系統每次轉換前TLC0831的IN0IN7送個任意數,表示開始轉換,結果是一個數字量,將其轉化為#BCD碼,。送顯示程序顯示,并將數值返回給主函數。濕度也可以通過此種方法觀察變化,得出相應的結論。啟動A/D轉換延時等待A/D轉換結果數據輸出顯示開始返回圖4.7 采樣轉換流程圖4.5 溫度采樣模塊溫度采樣使用的是DS18B20傳感器進行溫度采集,所以首先應該初始化傳感器。一
46、片DS18B20應該匹配16位ROM地址,然后將傳感器采集上來的數字量溫度值存入暫存器中,接下來將讀進來的溫度值進行處理,主要的處理是將十六進制數轉化為十進制數,最后將處理過的值送顯示器顯示。溫度采樣子程序流程圖如下圖所示。開始初始化DS18B20發送轉換溫度指令讀取兩字節溫度數據處理、送顯返回圖4.8 溫度采樣子程序流程圖4.6 濕度采樣模塊本設計采用的是CRH-01型阻抗型濕度傳感器,濕度采集采用通過模擬電路轉換后再通過A/D法進行采集,也是采用多次采集求平均的方法實現的。溫度采樣子程序流程圖如下圖所示。開始讀取濕度數據處理、送顯返回圖4.9 濕度采樣子程序流程圖4.7 報警模塊報警模塊具
47、備兩項功能,即為報警燈和聲音報警。聲音報警是從聽覺上提醒用戶,而報警燈則是從視覺上提醒用戶。報警模塊流程圖如下圖所示:報警置位報警標志報警持續計數器初值啟動報警返回圖4.10 報警模塊流程圖5 系統調試在完成系統硬件設計和軟件編程后,就進入了設計的重點部分系統調試階段。此階段的任務是排除硬件電路故障,糾正軟件設計錯誤,從而達到軟硬件之間的協調,使其很好的工作,完成系統功能。5.1 單片機最小系統的調試最小系統是系統的核心,必須保證它的正常工作。首先得保證線路連接正確和導通,其次看單片機的晶振有沒有起振,還有確認單片機的EA端是否懸空未接。對于接在晶振旁邊的電容,電容大有利于晶振的穩定,但不容易
48、起振,電容小容易使晶振起振但穩定性差,有時系統板工作不正常往往是由于該處的電容選擇不當。對于內部有8K字節程序存儲器,若EA引腳接VCC(5V),則程序計數器PC的值在0至1FFFH之間時,CPU取指令時訪問內部的程序存儲器;PC值大于1FFFH時,則訪問外部的程序存儲器。如果EA接VSS(地),則內部的程序存儲器被忽略,CPU總是從外部的程序存儲器中取指令。若EA腳懸空,則CPU不訪問內部的程序存儲器,寫入它的程序就不能正常運行。當把EA腳接VCC后,系統才能工作正常。另外STC89C52的I/O端口必須得正常工作,其調試方法是:將STC89C52的I/O端口與調試好的顯示電路連接起來,再利
49、用WAVE仿真器編寫簡單的程序,比如說讓P1口的某一位輸出方波,然后用示波器去檢查波形是否正確;或者讓P1口的某一位置高電平/低電平,然后用萬用表去檢查引腳上的電平。還可以測試外部中斷口和內部定時器的工作情況,測試方法是:在P口正常工作的情況下,可以通過改變外部中斷和定時中斷到來前后P 口的電平來檢測外部中斷和定時中斷的工作情況。5.2 鍵盤顯示電路的調試在調試此部分之前先檢查器件,四腳開關鍵按下后是否會自動彈起,不會彈起說明是壞的要及時更換。對數碼管首先判斷數碼管的極性是共陰還是共陽。將萬用表打到測試是否導通的端,同時將黑表筆接COM端,紅表筆接其他任一端,相應的段位會亮則表示數碼管是好的,
50、且是共陰的;否則將表筆對換再測量有相應的段位有顯示則是共陽的數碼管。之后便是對整個鍵盤顯示電路的導通性進行測量,以防止在焊接時出現慮焊的情況,經測量,電路的導通性良好,沒有出現慮焊的情況。對電路檢測好之后,筆者打開電源,數碼管顯示全0,說明電路及數碼管沒有問題。5.3 溫度采集電路的調試由于DS18B20是集成的數字溫度傳感器,其硬件電路十分簡單。在硬件調試時只需檢查接線是否正確即可,一般DS18B20沒有燒壞及連線正確的話,硬件就沒有問題了。此部分的調試主要是利用軟件來實現,所以其調試可在其它部分調試完畢后進行。如果其它部分調試都完成,可先不接DS18B20,直接在軟件中給定一確定的溫度值,
51、看數據能否在數碼管上正確顯示,能的話說明系統的無線收發以及顯示都已實現,再接上數字溫度傳感器DS18B20,輸入編出的軟件后看主機是否顯示正確的溫度值。經過反復的調試實現了DS18B20的正確采溫。5.4 濕度采集電路的調試濕度采集模塊是整個電路中重點調試的部分,在焊接好電路之后,首先針對電路圖,對電路的焊接進行檢查,避免出現錯焊的情況,結果并未出現錯焊;其次便是對電路的導通性進行檢查,在測量的過程中,在測NE555的5腳與1腳之間的導通性時,聽見萬用表發出了響聲,說明二者之間出現了短路。二者之間不應該是短路的,原因可能就是它們之間的電容被擊穿了導倒短路,換了此電容后正常。在保證整個電路沒有短
52、路,斷路現象后,再進行相應的調試。首先,用示波器放在555定時器的3腳,看是否有一個頻率為1KHZ,4V的方波信號,調節變阻器RP1,當電阻器達到410時,波形最符合要求,正好跟理論計算值一致,說明此部分電路正確。 其次,是放大和整流濾波電路部分的調試。用示波器分便放在LM324運放的1腳觀察波形,發現沒有放大郊果,說明運放沒有正常工作,但是檢查4腳電壓輸入是正確的5V,在排除了是LM324完好的情況下,這個問題一直得不到解決,筆者最后考慮是還是電源的問題,于是,將LM324的電源沒有使用電路板上的5V,而是單獨接出使用的5V和地。這下,運放能夠正常工作了。調節電阻器RP2,使的運放的放大倍數
53、大概在1.2倍左右即可。整流濾波電路只要檢查一下二極管是否完好,電容是否被擊穿等就行。 最后是A/D轉換電路,用示波器放在A/D的輸入腳2端,用嘴吹濕度傳感器,電壓幅度會馬上抬高,抬高后再慢慢下降,最后穩定在一個值,這說明,A/D的模擬信號輸入是正確的。輸出則要配合軟件程序調試。5.5 系統軟件調試可以通過WAVE6000軟件編譯圖看軟件編寫是否正確(圖5.1為WAVE6000界面)。如果編寫正確表明軟件編譯通過,然后由串口工具(圖5.2 串口下載工具STC-ISP圖)下載到STC89C52單片機進行調試。 圖5.1 WAVE6000編譯軟件界面 圖5.2 串口下載工具STC-ISP圖將程序燒寫入控制芯片STC89C52,用數字萬用表測量電源接入情況。打開電源,啟動整個系統。發現溫度可以顯示,但是反應比較慢,這說明溫度可以采集進來,硬件部分良好,可能是軟件編程的問題,檢查發現是延時程序延遲太久,改過后,結果正常。 6 總結與展望本次專業畢業設計:基于STC89S52單片機的溫濕度檢測系統的設計,已經基本完成。通過這次畢業設計,我掌握了一些實踐性質的設計的基本步驟:首先,明確設計任務,并且要對市場上溫濕度控制器要有初步
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論