孔進論文4 基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計畢業(yè)論文_第1頁
孔進論文4 基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計畢業(yè)論文_第2頁
孔進論文4 基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計畢業(yè)論文_第3頁
孔進論文4 基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計畢業(yè)論文_第4頁
孔進論文4 基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計畢業(yè)論文_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計南 陽 理 工 學(xué) 院 本科生畢業(yè)設(shè)計(論文) 學(xué)院(系): 電子與電氣工程系 專 業(yè): 電子信息工程 學(xué) 生: 孔 進 指導(dǎo)教師: 陳 華 敏 完成日期 2011 年 05 月 南陽理工學(xué)院本科畢業(yè)設(shè)計(論文)南陽理工學(xué)院本科生畢業(yè)設(shè)計(論文)基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計The Design of Mutiple Temperatures Measuring System Based on ATMEGA32總計: 畢業(yè)設(shè)計(論文)20頁表格: 0 個插圖 : 13 幅南 陽 理 工 學(xué) 院 本 科 畢 業(yè) 設(shè) 計(論文)基于ATME

2、GA32的多點溫度測量系統(tǒng)的設(shè)計The Design of Mutiple Temperatures Measuring System Based on ATMEGA32學(xué) 院(系): 電子與電氣工程系 專 業(yè): 電子信息工程 學(xué) 生 姓 名: 孔 進 學(xué) 號: 094409050 指 導(dǎo) 教 師(職稱): 陳華敏(講師) 評 閱 教 師: 完 成 日 期: 2011年5月 南陽理工學(xué)院 Nanyang Institute of Technology基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計電子信息工程專業(yè) 孔進摘 要 本設(shè)計主要介紹基于ATMEGA32單片機和DS18B20數(shù)字溫度傳感器的

3、多點溫度測量系統(tǒng)。該系統(tǒng)利用ATMEGA32單片機分別采集各個溫度點的溫度實現(xiàn)溫度顯示、報警等功能。該系統(tǒng)具有硬件組成簡單、多點溫度監(jiān)測、讀數(shù)方便、精度高、溫度范圍廣等特點,在實際工程中得到廣泛應(yīng)用。它以ATMEGA32單片機為主控制芯片,采用數(shù)字溫度傳感器DS18B20實現(xiàn)多點溫度的檢測,測量精度可以達到0.5C。該系統(tǒng)采用了采用LCD液晶顯示模塊,形象直觀的顯示所測出的溫度值。關(guān)鍵詞 ATMEGA32單片機;溫度測試;數(shù)字溫度傳感器DS18B20The Design of Mutiple Temperatures Measuring System Based on ATMEGA32Elec

4、tronic Information Engineering Specialty Kong JinAbstract: This design mainly introduces, based on the ATMEGA32 microcontroller and the digital temperature sensor DS18B20, multiple-point temperature sensor measurement system .The system collects various temperatures of temperature, and realizes temp

5、erature display ,alarm and other functions. It uses ATMEGA32 microcontroller as the CPU and achieves multi-temperature detection by a digital temperature sensor DS18B20 so that the measurement accuracy can be reached 0.5C. The system also uses LCD as monitors and visually displays the temperature va

6、lue tested. Keywords: ATMEGA32 microcontroller; temperature measuring; digital temperature sensor DS18B20.目 錄1 引言11.1 溫度測量的應(yīng)用11.2 溫度測量的演變與發(fā)展12 系統(tǒng)方案設(shè)計12.1 設(shè)計內(nèi)容12.2 功能組成框圖22.3 方案設(shè)計22.4 方案比較32.5本章小結(jié)43 硬件設(shè)計43.1 ATMEGA32單片機43.1.1 ATMEGA32單片機的介紹43.1.2 ATMEGA32的外部引腳43.2 數(shù)字溫度傳感器DS18B2063.2.1 DS18B20 的主要特性63

7、.2.2 DS18B20 的外形及引腳功能63.2.3 DS18B20測溫原理73.3 多點溫度測量系統(tǒng)電路模塊設(shè)計83.3.1 多點溫度檢測電路83.3.2 按鍵控制電路93.3.3 LCD顯示電路93.4 多點溫度測量系統(tǒng)的硬件電路總體設(shè)計103.5 本章小結(jié)104 軟件設(shè)計104.1 Code Vision AVR介紹104.1.1 CVAVR環(huán)境簡介114.1.2 CVAVR中項目開發(fā)流程114.2 多點溫度測量系統(tǒng)的程序設(shè)計124.2.1 軟件設(shè)計總體思路及主要程序流程圖124.2.2 多點溫度的巡回測量流程圖124.2.3 LCD顯示流程圖134.3 本章小結(jié)145.1 系統(tǒng)仿真及

8、結(jié)果分析155.1.1 系統(tǒng)仿真155.1.2 仿真結(jié)果分析155.2 本章小結(jié)16結(jié)束語17參考文獻18附錄19致謝20201 引言1.1 溫度測量的應(yīng)用溫度是在工業(yè)、農(nóng)業(yè)、國防和科研等部門中應(yīng)用最普遍的被測物理量。有資料表明,溫度傳感器的數(shù)量在各種傳感器中位居首位,約占50%左右。因此,溫度測量在保證產(chǎn)品質(zhì)量,提高生產(chǎn)效率,節(jié)約能源,安全生產(chǎn),促進國民經(jīng)濟發(fā)展等諸多方面起到了至關(guān)重要的作用。1.2 溫度測量的演變與發(fā)展傳統(tǒng)的溫度測量系統(tǒng)中,一般選用模擬式的溫度傳感器。常用的模擬式溫度傳感器,有多種輸出形式以及電壓偏移。其中一個特點就是輸出信號為模擬信號,因此在測量電路中必須經(jīng)過A/D轉(zhuǎn)換才

9、能成為計算機所能處理的數(shù)字量1。模擬溫度傳感器適合需要低成本、小體積和低功耗的應(yīng)用。但是此種測溫系統(tǒng)電路復(fù)雜,抗干擾能力差。數(shù)字式溫度傳感器對于更緊密控制能力、更高精度和更大的分辨率的需求帶動了數(shù)字溫度傳感器的發(fā)展。數(shù)字式溫度傳感器將非電模擬量轉(zhuǎn)換到數(shù)字信號這一處理過程的多個環(huán)節(jié)集成在單芯片上,實現(xiàn)了在測量值數(shù)字化,有效解決了傳統(tǒng)溫度傳感器外圍電路復(fù)雜,抗干擾能力差的弊病,降低了對系統(tǒng)的要求。在溫度檢測系統(tǒng)開發(fā)中主要涉及到的是單片機和溫度傳感器,目前,隨著芯片技術(shù)及單片機功能的不斷發(fā)展和成熟,單片機技術(shù)已經(jīng)在工業(yè)測控系統(tǒng)中得到了廣泛的應(yīng)用。市場上出現(xiàn)了很多型號的單片機和相應(yīng)的外圍模塊化產(chǎn)品,尤

10、以8051系列和AVR單片機最為流行。這更使溫度測量系統(tǒng)簡單化,精確化。2 系統(tǒng)方案設(shè)計2.1 設(shè)計內(nèi)容AVR單片機是Atmel公司1997年推出的RISC單片機。與其他單片機相比,它具有高可靠性、高速度、低功耗、和低價位,在單片機市場中占據(jù)很大的地位。AVR單片機共分為三個系列:低檔:Attiny、中檔:TA90、高檔:Atmega2。本設(shè)計中采用的Atmega32是基于增強的AVR RSIC結(jié)構(gòu)的低功耗的8位AVR微處理器和非易失性程序和數(shù)據(jù)存儲器JTAG 接口( 與IEEE 1149.1 標(biāo)準(zhǔn)兼容)。由于其先進的指令集以及單時鐘周期指令執(zhí)行時間,Atmega32的數(shù)據(jù)吞吐率高達1MIPS

11、/MHZ, 只需兩個時鐘周期的硬件乘法器從而可以緩減系統(tǒng)在功耗和處理速度之間的矛盾3。數(shù)字式傳感器與模擬傳感器相比,由于采取高集成度的設(shè)計和數(shù)字化處理,在可靠性、干擾能力以及器件微小化方面都有明顯的優(yōu)點。DS18B20是美國DALLAS半導(dǎo)體公司生產(chǎn)的可組網(wǎng)數(shù)字式溫度傳感器,它使用1Wire(單線)接口,這種總線只需要一條I/O線進行數(shù)據(jù)傳輸,及近簡化之能事。這種集成化的智能溫度傳感器與模擬傳感器最大的區(qū)別在于將溫度信號直接由模擬信號轉(zhuǎn)化為數(shù)字信號,然后通過串行通信的方式輸出。DS18B20具有微型化、低功耗、高性能、抗干擾能力強、易于與處理器接口等優(yōu)點適合用于各種溫度測控系統(tǒng)。2.2 功能組

12、成框圖圖1 溫度監(jiān)測系統(tǒng)的組成框圖由圖1可知從功能上講多點溫度測量系統(tǒng)由四大主要部分組成:溫度檢測單元、溫度值顯示單元、報警單元、按鍵控制單元。當(dāng)溫度檢測單元的數(shù)字溫度傳感器DS18B20將檢測到的溫度送到AVR單片機控制部分,經(jīng)AVR單片機處理后將檢測到的溫度值在顯示單元用LCD顯示出來。若溫度超過所設(shè)定的的溫度值范圍則報警單元發(fā)出報警信號,并經(jīng)按鍵控制單元進行調(diào)整4。2.3 方案設(shè)計(1)方案一:該方案由AVR單片機、模擬溫度傳感器AD590、運算放大器AD轉(zhuǎn)換器、LCD顯示電路、集成功率放大器、報警器組成,其系統(tǒng)方案框圖如圖2所示。本方案采用模擬溫度傳感器AD590作為溫度檢測元件,傳感

13、器將測量的溫度轉(zhuǎn)換成電流的變化,再通過電路轉(zhuǎn)換成電壓的變化,使用運算放大器將信號進行適當(dāng)?shù)姆糯?,最后通過模數(shù)轉(zhuǎn)換器將模擬信號轉(zhuǎn)換成數(shù)字信號,傳送給AVR單片機,單片機將溫度值進行處理后用LCD顯示,當(dāng)溫度值超過設(shè)定的溫度范圍時,系統(tǒng)開始報警。AVR單片機LCD顯示顯示模塊集成功放報警器模擬溫度傳感器運算放大器AD轉(zhuǎn)換圖2 方案一多點溫度測量系統(tǒng)方案框圖(2)方案二:該方案使用ATMEGA32單片機作為控制核心,智能數(shù)字式溫度傳感器DS18B20為溫度測量元件,LCD顯示電路,采用多個溫度傳感器對各點溫度進行檢測,將檢測到符合要求的溫度值LCD顯示,超出設(shè)定范圍的報警器報警5。其系統(tǒng)方案方框圖如

14、圖3 所示。 圖3 方案二多點溫度測量系統(tǒng)方案框圖2.4 方案比較方案一采用模擬溫度傳感器,轉(zhuǎn)換結(jié)果需要經(jīng)過運算放大器和AD轉(zhuǎn)換器處理后送給單片機,它控制雖然簡單,但是電路復(fù)雜,不容易實現(xiàn)對多點溫度進行測量和控制。由于采用了多個分立的模數(shù)轉(zhuǎn)換器,容易出現(xiàn)差錯,測量結(jié)果不是很準(zhǔn)確,因此本方案并不可取。方案二采用數(shù)字式溫度傳感器DS18B20,它直接輸出數(shù)字量,精度高,電路簡單,只需要模擬DS18B20的讀寫時序,根據(jù)DS18B20的協(xié)議讀取轉(zhuǎn)換的溫度。此方案硬件電路簡單,程序設(shè)計復(fù)雜一些,但基于我們所學(xué)的編程基礎(chǔ),應(yīng)該可以完成這項任務(wù)。2.5本章小結(jié)本章在對溫度檢測系統(tǒng)的整體功能做了詳盡的分析,

15、以及對提出的兩種方案進行比較,確定本設(shè)計所要選用的方案。通過分析我們選用了AVR單片機系列中的高檔芯片ATMEGA32和數(shù)字式的溫度傳感器DS18B20作為核心元件,在加上一些外圍設(shè)備,從而實現(xiàn)本次設(shè)計的目的。3 硬件設(shè)計3.1 ATMEGA32單片機3.1.1 ATMEGA32單片機的介紹ATMEGA32單片機是ATMEL公司的基于增強的AVR-RISC結(jié)構(gòu)的低功耗8位COMS微控制器。由于其先進的指令集以及單時鐘周期指令執(zhí)行時間,ATMEGA32的數(shù)據(jù)吞吐率高達1MIPS/MHZ,從而可以緩解系統(tǒng)在功耗和處理速度之間的矛盾。ATMEGA32的片內(nèi)集成了32KB的系統(tǒng)片內(nèi)可編程Flash(具

16、有同時讀/寫的能力,即RWW)、1KB EEPROM、2KB SRAM、32個通用I/O口線、32個通用工作寄存器,具有用于邊界掃描的JTAG 接口,支持片內(nèi)調(diào)試與編程,3個具有比較模式的靈活的定時器/計數(shù)器(T/C),片內(nèi)/外中斷,可編程串行USART,面向字節(jié)的兩線串行接口,8路10位具有可選差分輸入級可編程增益(TQFP)的ADC,具有片內(nèi)振蕩器的可編程看門狗定時器以及1個SPI串行端口。ATMEGA32有6個可以通過軟件進行選擇的省電模式??臻e模式、ADC 噪聲抑制模式、省電模式、掉電模式、Standby 模式以及擴展的Standby 模式。ATMEGA32是以Atmel高密度非易失性

17、存儲技術(shù)產(chǎn)生的。片內(nèi)ISP Flash允許程序存儲器通過ISP串行接口或者通用編程器進行編程,也可以通過運行于AVR內(nèi)核之中的引導(dǎo)程序進行編程。引導(dǎo)程序可以使用任意接口將應(yīng)用程序下載到應(yīng)用Flash存儲區(qū),引導(dǎo)Flash區(qū)得程序繼續(xù)運行,實現(xiàn)了RWW操作6。3.1.2 ATMEGA32的外部引腳ATMEGA32單片機有三種形式的封裝:PDIP-40(雙列直插式)、MLF-44(貼片式)和TQFP-44(方形)。雙列直插式的封裝如圖4所示。VCC :數(shù)字電路的電源輸入引腳,使用時連接到電源正極。AVCC:為端口A和片內(nèi)ADC模擬電路電源輸入引腳。不使用ADC時,直接連接到電源正極;使用ADC時,

18、應(yīng)用一個低通電源濾波器與VCC連接。AREF:使用ADC時,可作為外部ADC參考源的輸入引腳。GND :芯片接地引腳,使用時接地。XTAL1:片內(nèi)反相振蕩放大器和內(nèi)部時鐘操作電路的輸入端。XTAL2:片內(nèi)反相振蕩放大器的輸出端。RESET:芯片復(fù)位輸入引腳。在該引腳上施加(拉低)一個最小脈沖寬度為1.5us的低電平,將引起芯片的硬件復(fù)位(外部復(fù)位)。圖4 ATMEGA32的引腳圖PA口(PA7.PA0): 端口A做為A/D 轉(zhuǎn)換器的模擬輸入端。端口A 為8 位雙向I/O 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對稱的驅(qū)動特性,可以輸出和吸收大電流。作為輸入使用時,若內(nèi)部上拉電阻使能,端口

19、被外部電路拉低時將輸出電流。在復(fù)位過程中,即使系統(tǒng)時鐘還未起振,端口A 處于高阻狀態(tài)。PB口(PB7.PB0) :端口B 為8 位雙向I/O 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對稱的驅(qū)動特性,可以輸出和吸收大電流。作為輸入使用時,若內(nèi)部上拉電阻使能,端口被外部電路拉低時將輸出電流。在復(fù)位過程中,即使系統(tǒng)時鐘還未起振,端口B 處于高阻狀態(tài)。端口B 也可以用做其他不同的特殊功能,請參見 P55。PC口(PC7.PC0): 端口C 為8 位雙向I/O 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對稱的驅(qū)動特性,可以輸出和吸收大電流。作為輸入使用時,若內(nèi)部上拉電阻使能,端口被外部電路拉低

20、時將輸出電流。在復(fù)位過程中,即使系統(tǒng)時鐘還未起振,端口C 處于高阻狀態(tài)。如果JTAG接口使能,即使復(fù)位出現(xiàn)引腳 PC5(TDI)、 PC3(TMS)與 PC2(TCK)的上拉電阻被激活。除去移出數(shù)據(jù)的TAP 態(tài)外, TD0 引腳為高阻態(tài)。端口C 也可以用做其他不同的特殊功能7。3.2 數(shù)字溫度傳感器DS18B203.2.1 DS18B20 的主要特性(1) 適應(yīng)電壓范圍更寬,電壓范圍:3.05.5V,在寄生電源方式下可由數(shù)據(jù)線供電。(2) 獨特的單線接口方式,DS18B20 在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20 的雙向通訊。(3) DS18B20 支持多點組網(wǎng)功能,

21、多個DS18B20 可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測溫。(4) DS18B20 在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。(5) 測溫范圍55125,在-10+85時精度為0.5。(6) 可編程的分辨率為912 位,對應(yīng)的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實現(xiàn)高精度測溫。(7) 在9 位分辨率時最多在93.75ms 內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12 位分辨率時最多在750ms 內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快。(8) 測量結(jié)果直接輸出數(shù)字溫度信號,以一線總線串行傳送給CPU,同時可傳送CRC 校驗碼,具有極強的抗干擾糾錯能力。(

22、9) 負(fù)壓特性:電源極性接反時,芯片不會因發(fā)熱而燒毀,但不能正常工作。3.2.2 DS18B20 的外形及引腳功能DS18B20 的外形及管腳排列如右圖5所示。其中各引腳功能描述如下:GND:地信號。DQ:數(shù)字輸入輸出引腳,開漏單總線引腳,當(dāng)使用寄生電源時,可向電源提供電源。VDD:可選擇的VDD引腳,當(dāng)工作于寄生電源時,該引腳必須接地。 圖5 DS18B20 的外形及管腳3.2.3 DS18B20測溫原理DS18B20測量溫度采用了特有的溫度測量技術(shù),其溫度測量電路如圖6所示。它是通過計數(shù)時鐘周期來實現(xiàn)的。低溫度系統(tǒng)振蕩器輸出的時鐘信號通過有高溫度系統(tǒng)振蕩器產(chǎn)生的門周期而被計數(shù),計數(shù)器被預(yù)置

23、在與-55相對應(yīng)的一個基權(quán)值。如果計數(shù)器在高溫度系數(shù)振蕩周期結(jié)束前計數(shù)到零,表示測量的溫度值高于-55,被預(yù)置在-55的溫度值就增加1,然后重復(fù)這一過程,直到溫度系統(tǒng)振蕩周期借宿為止。這時溫度寄存器中的數(shù)值就是被測溫度值,這個值以16位形式存放在便簽式存儲器中,此溫度值可由主機通過發(fā)存儲器讀命令而讀出,讀取是低位在前,高位在后8。斜率累加器用于補償溫度振蕩器的拋物線特性。預(yù)置斜率累加器預(yù)置比較計數(shù)器計數(shù)器=0=0溫度寄存器低溫度系數(shù)寄存器高溫度系數(shù)寄存器加1停止設(shè)置/清理LSB圖6 DS18B20測量電路DS18B20在使用時,一般都采用單片機來實現(xiàn)數(shù)據(jù)采集。只須將DS18B20信號線與單片機

24、1位I/O相連,且單片機的1位I/O線可以掛接多個DS18B20,就可以實現(xiàn)單點或多點溫度檢測。3.3 多點溫度測量系統(tǒng)電路模塊設(shè)計 3.3.1 多點溫度檢測電路在DS18B20接入系統(tǒng)之前,分別從元器件的ROM中讀出器序號,然后分別賦予在系統(tǒng)中的編號。系統(tǒng)使用AVR系列新型單片機ATMEGA32進行數(shù)據(jù)采集,ATMEGA32具有以下特點:32KB FLASH,1KB E2PROM,2KB SRAM。DS18B20以單總線協(xié)議工作,ATMEGA32首先發(fā)送復(fù)位脈沖,使信號上所有的DS18B20芯片都被復(fù)位,接著發(fā)送ROM操作命令,使序列號編碼匹配的DS18B20被激活進入接收內(nèi)存訪問命令狀態(tài)。

25、程序可以先跳過ROM,啟動所有DS18B20進行溫度變換,之后通過匹配ROM,在逐一的讀回每個DS18B20的溫度數(shù)據(jù)。通過串口發(fā)送程序?qū)囟葦?shù)據(jù)傳輸?shù)接嬎銠C。DS18B20可以通過兩種供電方式:外加電源,正負(fù)極分別接引腳Vcc和GND;后者不需要外加電源,當(dāng)總線(信號線)為高時穩(wěn)定電源的提供是通過單線上的上拉電阻實現(xiàn),總線信號為低時則由其內(nèi)部的電容供電,在此方式下Vcc接地8。在本電路設(shè)計中選者3引腳封裝的DS18B20,并采用外加電源的工作方式。采用此方式能增強DS18B20的抗干擾能力,保證工作的穩(wěn)定性,電路如圖7所示。圖7 多個DS18B20的接線方式在多點測溫系統(tǒng)中,需要多個DS18

26、B20。傳感器分布的拓?fù)浣Y(jié)構(gòu),從原理上來說,可以將多個傳感器掛接在一根總線上,但實際上一根總線上掛接的傳感器數(shù)目超過8個時就要計算總線的驅(qū)動能力。總之,在此系統(tǒng)設(shè)計時,每根總線上最好接8個DS18B20。3.3.2 按鍵控制電路按鍵模塊電路包括5個按鍵,其中包括數(shù)字溫度計進行操作的K1K4。按下K1鍵查看溫度報警值,按下K3鍵返回。按下K2鍵設(shè)定溫度報警值,再次按下K2鍵調(diào)整TH的設(shè)定值,按下K3鍵調(diào)整TH的設(shè)定值,設(shè)定過程中可以通過按鍵K1來決定是增還是減調(diào)整,按下K4鍵鍵設(shè)定的溫度報警值寫入DS18B209。設(shè)定完畢,將溫度報警值寫入DS18B20的E2ROM中保存,每次開機時自動從DS1

27、8B20中讀出溫度報器。還有單片機的復(fù)位按鍵K5,此按鍵是對AVR單片機進行外部復(fù)位。系統(tǒng)的按鍵控制電路如圖8所示。圖8 按鍵控制電路3.3.3 LCD顯示電路液晶顯示器LCD體積小,重量輕,功耗極低,因此在儀器儀表中應(yīng)用廣泛。本設(shè)計中采用的液晶顯示器是點陣字符液晶顯示器LM016L。ATMEGA32與LCD顯示屏之間的連接,其電路如圖10所示。LCD的數(shù)據(jù)線D0-D7和ATMEGA32的PA口相連。RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器,低電平時選擇指令寄存器。RW為讀/寫信號線,高電平時進行讀操作,低電平時進行寫操作。當(dāng)RS和RW共同為低電平時,可以寫入指令或者顯示地址;當(dāng)RS為低電平時

28、,RW為高電平時,可以讀忙信號;當(dāng)RS為高電平、RW為低電平時,可以寫入數(shù)據(jù)。E為使能端,當(dāng)E端有高電平跳變?yōu)榈碗娖綍r,液晶模塊執(zhí)行命令??刂凭€RS、R/W和使能端E分別于ATMEGA32的PA0、PA1、PA2引腳相連10。圖9 LCD顯示模塊電路3.4 多點溫度測量系統(tǒng)的硬件電路總體設(shè)計基于對ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計的總體把握、對以上各小節(jié)內(nèi)容中的模塊,包括多點溫度檢測模塊、按鍵模塊、ATMEGA32與PC機之間的通信模塊、LCD顯示模塊的了解以及各個模塊之間的聯(lián)系,將整個設(shè)計中的所有模塊進行整合,設(shè)計出多點溫度測量系統(tǒng)的整體電路圖,其整體電路圖見附錄。3.5 本章小結(jié)本章

29、在對溫度檢測系統(tǒng)中所要用到的芯片以及主要器件進行了簡要的介紹,并對多點溫度測量系統(tǒng)中各個模塊進行簡單的介紹。最后根據(jù)系統(tǒng)的需要將各個模塊進行整合得到基于ATMEGA32的多點溫度測量系統(tǒng)的整體電路。4 軟件設(shè)計4.1 Code Vision AVR介紹ATMEGA32系統(tǒng)開發(fā)的軟件平臺包括AVR Studio和Code Vision AVR。Code Vision AVR簡稱CVAVR。CVAVR是一款專為AVR單片機而設(shè)計的交互式編譯器,同時也是一個AVR單片機的集成開發(fā)環(huán)境。除了標(biāo)準(zhǔn)的C語言函數(shù)庫外,CVAVR還提供了許多的標(biāo)準(zhǔn)外部器件函數(shù),如標(biāo)準(zhǔn)字符LCD顯示器、I2C接口和SPI接口等

30、。同時,CVAVR還包含一個自動程序生成器,用戶可以很方便地完成對片內(nèi)資源及片外標(biāo)準(zhǔn)接口設(shè)備的初始化,大大節(jié)省了開發(fā)時間,提高了開發(fā)效率。本次設(shè)計中 就采用CVAVR對多點溫度測量系統(tǒng)的軟件部分進行編程。以下是對CVAVR的簡要介紹。4.1.1 CVAVR環(huán)境簡介在啟動CVAVR之后,會進入CVAVR的工作初始界面。其初始界面由菜單欄、工具欄、工作區(qū)和狀態(tài)欄等四大部分組成。(1)菜單欄的功能主要是進行各種命令操作、設(shè)置各種參數(shù)、進行各種開關(guān)的切換。其主要包括File、Edit、Search、Project、Setting、View、Tools、Help這8個菜單項。(2)工具欄放置的是菜單欄中

31、各菜單命令的快捷方式。工具欄的主要功能是方便操作。(3)工作區(qū)是用戶與IDE(CVAVR集成工作環(huán)境)交流信息的主要區(qū)域。此區(qū)域中包含文件編輯區(qū)、I/O端口寄存器觀察區(qū)、處理器狀態(tài)觀察區(qū)、通用寄存器組觀察區(qū)、存儲器觀察區(qū)以及信息顯示區(qū)等。(4)狀態(tài)區(qū)主要顯示編譯后的狀態(tài),如編譯有錯誤,則在狀態(tài)欄可以看到相關(guān)提示信息的話。在文件中查找字或詞時,相應(yīng)的結(jié)果信息也在狀態(tài)欄顯示。4.1.2 CVAVR中項目開發(fā)流程CVAVR集成開發(fā)環(huán)境是使用項目的方式而不是單一文件的方式來管理文件的。所有的文件,包括源程序、頭文件以及說明性的文檔等,都可以放在工程項目文件中統(tǒng)一管理。概括的說,CVAVR環(huán)境的軟件開發(fā)

32、主要步驟如下:(1)創(chuàng)建一個新的工程項目;(2)工程項目的配置,項目配置的對話框包括Files、C Complier、Before Build和After Build這4個選項卡;(3)新建源文件;(4)編輯源文件;(5)向工程項目中添加源文件;(6)編譯工程項目;(7)仿真調(diào)試。4.2 多點溫度測量系統(tǒng)的程序設(shè)計4.2.1 軟件設(shè)計總體思路及主要程序流程圖根據(jù)多點溫度測量系統(tǒng)的設(shè)計要求,對系統(tǒng)軟件部分進行分析,畫出系統(tǒng)的主程序流程圖11。如圖11所示:系統(tǒng)初始化溫度采集溫度處理按鍵控制數(shù)據(jù)顯示結(jié)束開始圖10 多點溫度測量系統(tǒng)的主程序流程圖本設(shè)計采用C語言編寫,有上圖可知主程序主要包括4部分,

33、上電后首先對系統(tǒng)進行初始化,相繼完成溫度采集,溫度處理,數(shù)據(jù)顯示,鍵盤控制等4項功能。溫度采集部分主要完成8個溫度測試點的溫度數(shù)據(jù)采集;溫度處理部分主要是將采集到的溫度數(shù)據(jù)與用戶設(shè)定的個點上下限溫度值進行比較處理,并判斷是否超出設(shè)定的上下限,如果超出則蜂鳴器報警;數(shù)據(jù)顯示部分主要實現(xiàn)溫度數(shù)據(jù)顯示,顯示方式根據(jù)設(shè)計要求支持1到8個溫度測試點的輪流循環(huán)顯示;按鍵控制部分主要實現(xiàn)用戶對系統(tǒng)參數(shù)的設(shè)定,結(jié)合顯示部分,實現(xiàn)用戶與系統(tǒng)之間的人機接口12。4.2.2 多點溫度的巡回測量流程圖由于已經(jīng)在上面獲取了多個DS18B20的ROM代碼并在AVR單片機內(nèi)部的E2PROM中建立了測量位置點和傳感器64位R

34、OM代碼之間的關(guān)系表,因此對多個溫度的巡回測量的步驟如下: (1)發(fā)跳過ROM命令。 (2)發(fā)啟動所有在線的DS18B20進行溫度轉(zhuǎn)換命令。 (3)延遲1s。 (4)發(fā)匹配ROM命令。 (5)按照E2PROM中建立的關(guān)系表的順序取出64位ROM代碼發(fā)送到單總線。 (6)發(fā)讀溫度值命令,讀取溫度值。 (7)進行CRC校驗和數(shù)據(jù)處理后送LCD顯示器顯示。 (8)重復(fù)第4步到第7步,直到所有的DS18B20測量處理完。 (9)再重復(fù)第1步到第8步,進行下一輪的巡回測量。由以上多點溫度巡回測量的步驟可畫出多點溫度測量部分的軟件流程圖,見圖12。跳過ROM等待1S設(shè)置DS18B20個數(shù)匹配ROM初始化讀

35、存儲器存在緩沖區(qū)指針增1檢測所有DS18B20?結(jié)束YN圖11 多點溫度測量部分軟件流程圖如果只對某一個DS18B20進行溫度測量,只要將第1步的跳過ROM命令,改為匹配ROM命令,將撥動開關(guān)撥到和要測量的DS18B20的編號相對應(yīng)的數(shù)值上,AVR單片機讀取撥動開關(guān)的數(shù)值(編號)n,到E 2PROM建立的關(guān)系表中從(n-1)8開始的單元取出ROM代碼發(fā)送到總線,去掉第8步,其余和上面步驟相似即可13。測試中,DS18B20選擇芯片出廠時默認(rèn)的12位轉(zhuǎn)換精度,轉(zhuǎn)換的結(jié)果用16位符號擴展的二進制補碼讀數(shù)形式提供。關(guān)于DS18B20可參考DALLAS公司的數(shù)據(jù)手冊。4.2.3 LCD顯示流程圖LCD

36、顯示程序的處理過程是AVR單片機對液晶顯示器進行掃描,顯示測量溫度值,設(shè)置溫度值的上下限,從而判斷其所測溫度值的大小。LCD顯示流程圖如圖12所示。讀字符碼初始化LCD開啟中斷調(diào)用延時取字符碼開始結(jié)束顯示圖12 LCD顯示流程圖4.3 本章小結(jié)本章主要對多點溫度測量系統(tǒng)的軟件設(shè)計部分進行分析,采用模塊化處理,根據(jù)多點溫度測量系統(tǒng)所要實現(xiàn)的功能及要求,畫出了系統(tǒng)的主程序流程圖,多點溫度巡回測量流程圖以及LCD顯示流程圖,并對各個部分的原理進行了簡要的論述。在各個模塊流程的的指導(dǎo)下編寫整個系統(tǒng)的程序。5 系統(tǒng)仿真電路設(shè)計和系統(tǒng)軟件部分設(shè)計完成后,通過仿真對多點溫度測量系統(tǒng)的各項指標(biāo)進行測試,分析系

37、統(tǒng)的不足和需要改進的地方。一般情況,根據(jù)方案設(shè)計要求,調(diào)試過程共分三大部分,硬件調(diào)試,軟件調(diào)試,軟件和硬件聯(lián)調(diào)。電路按模塊逐個調(diào)試,各模塊調(diào)試通過后在聯(lián)調(diào)。程序先在最小系統(tǒng)板調(diào)試,通過后在軟硬聯(lián)調(diào)。本次設(shè)計也包括了軟硬見設(shè)計,但是對于本設(shè)計的調(diào)試仿真部分主要采用PROTEUS對系統(tǒng)進行仿真,故而直接將電路原理圖與軟件部分程序在PROTEUS環(huán)境下仿真即可。5.1 系統(tǒng)仿真及結(jié)果分析5.1.1 系統(tǒng)仿真在PROTEUS電子設(shè)計平臺下,先繪制系統(tǒng)設(shè)計電路圖,然后對設(shè)計的程序進行編譯,生成HEX文件,然后加載到單片機中,點擊全速運行,得到如下的仿真結(jié)果14。其仿真結(jié)果如圖13所示。圖13 基于ATM

38、EGA32多點溫度測量系統(tǒng)仿真結(jié)果圖5.1.2 仿真結(jié)果分析由仿真結(jié)果可知,本設(shè)計實現(xiàn)了對多點溫度的測量、顯示以及在溫度值超過25-85時報警器報警。在報警單元發(fā)出報警信號后,可以用按鍵K1-k4對顯示溫度值以及溫度的范圍值進行調(diào)整。 其中K1鍵用于查看溫度報警值,K3鍵返回。K2鍵用于設(shè)定溫度報警值,按下K3鍵調(diào)整TH的設(shè)定值,設(shè)定過程中可以通過按鍵K1來決定是增還是減調(diào)整,按下K4鍵鍵設(shè)定的溫度報警值寫入DS18B20。在系統(tǒng)的設(shè)計和調(diào)試階段,也發(fā)現(xiàn)了系統(tǒng)中還可能改進和提高的一些方面,主要包括15:(1)由于本次設(shè)計是將軟硬件設(shè)計在PROTEUS中進行仿真,故而在硬件設(shè)計的過程中沒有考慮設(shè)

39、計在實際應(yīng)用中將軟件部分在下載到硬件電路時所需的下載接口部分。為了增強此系統(tǒng)的實用性,下載接口部分應(yīng)該加入到硬件設(shè)計中。(2)還可以在系統(tǒng)中增加一個報警器以便在按鍵控制失去作用時進行報警。5.2 本章小結(jié)本章對整個基于ATMEGA32的多點溫度測量系統(tǒng)的硬件和軟件進行仿真,得到對多點溫度測量系統(tǒng)的仿真結(jié)果。對得到的仿真結(jié)果以及設(shè)計和調(diào)試過程中可能進行改正和和提高的方面進行了進一步的分析。結(jié)束語伴隨計算機、信息技術(shù)以及單片機技術(shù)的迅速發(fā)展,帶有人工智能與自動控制能力的儀器與設(shè)備不斷被開發(fā)并應(yīng)用,在測量領(lǐng)域計算機應(yīng)用范圍不斷擴大。溫度測量在保證產(chǎn)品質(zhì)量,提高生產(chǎn)效率,節(jié)約能源,安全生產(chǎn),促進國民經(jīng)

40、濟發(fā)展等諸多方面起到了至關(guān)重要的作用。本文研制的基于ATMEGA32的多點溫度測量系統(tǒng)的設(shè)計,本設(shè)計中采用了Atmel公司生產(chǎn)的ATMEGA32單片機與數(shù)字式的溫度傳感器DS18B20,使得該溫度測量系統(tǒng)的硬件設(shè)計簡單。而在對系統(tǒng)進行軟件編程時,采用的是Code Vision AVR的庫函數(shù),省去編寫驅(qū)動程序的麻煩,相應(yīng)的縮短了系統(tǒng)的設(shè)計時間,并且設(shè)計出的系統(tǒng)抗干擾能力強,擴展方便。通過這次比較完整的基于ATMEGA32 多點溫度測量系統(tǒng)的設(shè)計,鍛煉了我理論和實踐相結(jié)合的綜合能力,鞏固了我所學(xué)的專業(yè)基礎(chǔ)知識,提高了我解決實際工程問題的能力,同時也提高我查閱文獻資料、設(shè)計手冊、設(shè)計規(guī)范的動手能力,通過對整體的掌控,對局部的取舍,以及對細節(jié)的斟酌處理,都使我的能力得到了鍛煉,經(jīng)驗得到了豐富,并且意志力,抗壓能力也都得到了不同程度的提升。這正是我們進行畢業(yè)設(shè)計的目的所在。雖然畢業(yè)設(shè)計內(nèi)容繁多,過程繁瑣但我的收獲卻更加豐富。各種系統(tǒng)的適用條件,各種電子元件的選用,程序的編寫,我都是隨著設(shè)計的不斷深入而不斷熟悉并學(xué)會應(yīng)用的。和老師的溝通交流更使我對設(shè)計有了新的認(rèn)識也對自己提出了新的要求。參考文獻1江志紅AVR單片機系統(tǒng)開發(fā)實用案例精選M北京:北京航空航天大學(xué)出版社,2010.4:272-28

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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

提交評論