版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
./中國礦業(yè)大學(xué)計算機學(xué)院2013級本科生課程報告課程名稱信科專業(yè)綜合實踐報告時間2016.09.20學(xué)生誼坤學(xué)號08133367專業(yè)電子信息科學(xué)與技術(shù)任課教師王凱任課教師評語任課教師評語〔①對課程基礎(chǔ)理論的掌握;②對課程知識應(yīng)用能力的評價;③對課程報告相關(guān)實驗、作品、軟件等成果的評價;④課程學(xué)習(xí)態(tài)度和上課紀(jì)律;⑤課程成果和報告工作量;⑥總體評價和成績;⑦存在問題等:成績:任課教師簽字:年月日摘要針對目前溫度控制在生產(chǎn)生活中被廣泛應(yīng)用,而傳統(tǒng)的溫度控制系統(tǒng)是由功能繁雜的大量分離器件構(gòu)成,為了節(jié)約成本、提高系統(tǒng)的可靠性,本文設(shè)計了一種基于STM32F103T6的溫度控制系統(tǒng)。本設(shè)計是基于DS18B20的溫度控制系統(tǒng),以STM32F103ZET6為控制系統(tǒng)核心,通過嵌入式系統(tǒng)設(shè)計實現(xiàn)對溫度的顯示和控制功能。在該系統(tǒng)中,為了減小干擾的影響,用均值濾波算法對采樣數(shù)據(jù)進行處理之后再進行溫度判定等一系列操作的依據(jù)。設(shè)計中,基本上實現(xiàn)了該系統(tǒng)的功能,通過DS18B20采集溫度數(shù)據(jù),使用LCD屏幕來顯示相關(guān)的信息,能夠通過加熱和降溫將溫度控制在恒定的圍,并可以手動設(shè)置恒溫圍,溫度超出限制后會有聲光報警。關(guān)鍵詞:STM32F103,均值濾波,恒溫控制,DS18B20目錄1緒論11.1選題的背景及意義11.2設(shè)計思想11.3實現(xiàn)的功能22硬件設(shè)計22.1硬件平臺22.2硬件設(shè)計模塊圖32.3溫度傳感器DS18B2032.4LCD屏幕62.5DC5V散熱風(fēng)扇82.6加熱片83軟件設(shè)計93.1軟件平臺93.2軟件設(shè)計模塊圖93.3主程序流程圖103.4子程序流程圖113.4.1恒溫控制子程序流程圖113.4.2flag標(biāo)志設(shè)置子程序流程圖12溫度設(shè)置子程序流程圖13溫度讀取函數(shù)流程圖14均值濾波程序流程圖15顯示函數(shù)程序流程圖164調(diào)試分析164.1硬件調(diào)試164.2軟件測試174.3功能實現(xiàn)分析175實驗總結(jié)17參考文獻19.1緒論1.1選題的背景及意義21世紀(jì)是科學(xué)技術(shù)高速發(fā)展的信息時代,電子技術(shù)、嵌入式技術(shù)的應(yīng)用已經(jīng)是非常廣泛,伴隨著科學(xué)技術(shù)和生產(chǎn)的不斷發(fā)展,在生產(chǎn)生活中需要對各種參數(shù)進行溫度測量。因此溫度一詞在生產(chǎn)生活之中出現(xiàn)的頻率日益增多,與之相對應(yīng)的,溫度控制和測量也成為了生活生產(chǎn)中頻繁使用技術(shù),同時它們在各行各業(yè)中也發(fā)揮著非常重要的作用。如在日趨發(fā)達(dá)的工業(yè)領(lǐng)域之中,利用測量與控制溫度來保證生產(chǎn)的正常運行;在農(nóng)業(yè)生產(chǎn)中,用于保證蔬菜大棚的恒溫保產(chǎn)等;在科學(xué)研究中,往往也需要一個恒溫的環(huán)境作為實驗的保障。溫度值是表征物體冷熱程度的一個物理量,溫度的測量則是工農(nóng)和業(yè)生產(chǎn)過程中一個很重要也普遍的參數(shù)。溫度的測量及控制對保證產(chǎn)品的質(zhì)量、提高生產(chǎn)的效率、節(jié)約能源、安全生產(chǎn)、促進經(jīng)濟的發(fā)展起到非常重要的作用。因為溫度測量的普遍性,使得溫度傳感器的數(shù)量在各種傳感器中居首。并且隨著科學(xué)技術(shù)與生產(chǎn)的不斷發(fā)展,溫度傳感器的種類仍然在不斷增加和豐富以來滿足生產(chǎn)生活中的各種需要。在嵌入式溫度控制系統(tǒng)中的關(guān)鍵是溫度的測量、溫度的控制和溫度的保持,溫度是工業(yè)控制對象中主要的被控參數(shù)之一。因此,嵌入式要對溫度的測量則是對溫度進行有效及準(zhǔn)確的測量,并且能夠在工業(yè)生產(chǎn)中得廣泛的應(yīng)用,尤其在機械制造、電力工程化工生產(chǎn)、冶金工業(yè)等重要工業(yè)領(lǐng)域中,擔(dān)負(fù)著重要的測量任務(wù)。在日常工作和生活中,也被廣泛應(yīng)用于空調(diào)器、電加熱器等各種室溫測量及工業(yè)設(shè)備的溫度測量。但溫度是一個模擬量,需要采用適當(dāng)?shù)募夹g(shù)和元件,將模擬的溫度量轉(zhuǎn)化為數(shù)字量,才生使用計算機進行相應(yīng)的處理。1.2設(shè)計思想恒溫系統(tǒng)應(yīng)用于各種工業(yè)或者民用領(lǐng)域,如何精確地控制溫度成為一個非常重要的研究問題。本系統(tǒng)需要利用STM32來控制各器件的工作情況,使傳感器維持在一個固定的溫度上。本文所研究的課題是基于嵌入式的恒溫控制系統(tǒng)設(shè)計,實現(xiàn)了溫度的實時監(jiān)測與控制。溫度控制部分,提出了用DS18B20、STM32F103ZET6和LCD的硬件電路完成對室溫的實時檢測及顯示,利用DS18B20與嵌入式系統(tǒng)連接由軟件與硬件電路配合來實現(xiàn)對加熱片和散熱風(fēng)扇的實時控制。從DS18B20讀出或?qū)懭隓S18S20信息僅需要一根口線,其讀寫及其溫度變換功率來源于數(shù)據(jù)線,該總線本身也可以向所掛接的DS18B20提供電源,不需要額外電源。同時DS18S20能提供九位溫度精度,它無需任何外圍硬件便可方便地構(gòu)成溫度檢測系統(tǒng)。加熱片通過帶有繼電器的電路驅(qū)動,由嵌入式開發(fā)板的一根口線控制并供電,繼電器需要嵌入式開發(fā)板提供額外的電源。DC5V散熱風(fēng)扇的實時控制也僅僅需要一根口線,由開發(fā)板供電,不需要外加電源。而且本次的設(shè)計主要實現(xiàn)溫度監(jiān)測,超溫報警,溫度控制,超過設(shè)定的門限值時自動啟動加熱和散熱裝置等功能。而且還要以STM32開發(fā)板為主機,使溫度傳感器通過一根口線與嵌入式開發(fā)板相連接,再加上溫度控制部分和人機交互部分來共同實現(xiàn)溫度的監(jiān)測與控制。1.3實現(xiàn)的功能〔1能夠連續(xù)測量環(huán)境的溫度值,用LCD屏幕來顯示環(huán)境的實際溫度?!?能夠設(shè)定恒溫的溫度圍,初始圍是30℃~33℃?!?能夠?qū)崿F(xiàn)溫度自動控制,如果設(shè)定溫度在30℃~33℃,則能使溫度保持恒定在30℃~33℃。〔4使用嵌入式STM32F103ZET6控制,通過輸入按鍵來控制恒溫圍的設(shè)定值,數(shù)值采用LCD屏幕顯示。〔5溫度超出圍時能夠?qū)崿F(xiàn)聲光報警:LED燈和數(shù)碼管閃爍,蜂鳴器報警。2硬件設(shè)計2.1硬件平臺本次設(shè)計的硬件平臺選用的是STM32系列的F103ZET6嵌入式開發(fā)板。STM芯片根據(jù)容量分為三大類:LD<小于64K>,MD〔小于256K,HD〔大于256K,STM32F103ZET6類屬第三類。具有如下特點:1.基于ARMCortex-M3核心的32位微控制器,LQFP-144封裝. 2.512K片F(xiàn)LASH〔相當(dāng)于硬盤,64K片RAM〔相當(dāng)于存,片F(xiàn)LASH支持在線編程<IAP>.3.高達(dá)72M的頻率,數(shù)據(jù),指令分別走不同的流水線,以確保CPU運行速度達(dá)到最大化.4.通過片BOOT區(qū),可實現(xiàn)串口下載程序<ISP>.5.片雙RC晶振,提供8M和32K的頻率.6.支持片外高速晶振<8M>,和片外低速晶振<32K>.其中片外低速晶振可用于CPU的實時時鐘,帶后備電源引腳,用于掉電后的時鐘行走.7.42個16位的后備寄存器<可以理解為電池保存的RAM>,利用外置的紐扣電池,和實現(xiàn)掉電數(shù)據(jù)保存功能.8.支持JTAG,SWD調(diào)試.配合廉價的J-LINK,實現(xiàn)高速低成本的開發(fā)調(diào)試方案.9.多達(dá)80個IO<大部分兼容5V邏輯>,4個通用定時器,2個高級定時器,2個基本定時器,3路SPI接口,2路I2S接口,2路I2C接口,5路USART,一個USB從設(shè)備接口,一個CAN接口,SDIO接口,可兼容SRAM,NOR和NANDFlash接口的16位總線-FSMC.10.3路共16通道的12位AD輸入,2路共2通道的12位DA輸出.支持片外獨立電壓基準(zhǔn).11.CPU操作電壓圍:2.0-3.6V.2.2硬件設(shè)計模塊圖設(shè)計整體模塊如圖2-1所示:STMSTM32CPUDS18B20溫度傳感器模塊鍵盤模塊LCD模塊溫度控制模塊警報模塊風(fēng)扇加熱片LED燈蜂鳴器圖2-1設(shè)計模塊圖如圖所示,本次設(shè)計共有五大模塊:DS18B20溫度傳感器模塊、鍵盤模塊、LCD顯示模塊、溫度控制模塊以及警報模塊構(gòu)成;其中溫度控制模塊又有小風(fēng)扇和加熱片兩個小模塊,警報模塊有LED燈和蜂鳴器兩個小模塊。各個模塊的功能如下:DS18B20溫度傳感器模塊:DS18B20為溫度傳感器,主要作用是溫度采集。鍵盤模塊:鍵盤模塊共包含三個按鍵:K_LEFT、K_UP和K_DOWN,其中,K_LEFT主要是實現(xiàn)Flag標(biāo)志的更新,實現(xiàn)程序中不同模塊的轉(zhuǎn)換,詳見下面的程序流圖,K_UP和K_DOWN兩按鍵主要是實現(xiàn)最低溫度和最高溫度的設(shè)置。 LCD顯示模塊:實現(xiàn)溫度的顯示。溫度控制模塊:實現(xiàn)恒溫控制,允許溫度在設(shè)定的一定圍變化,溫度過低時加熱片啟動升溫,溫度過高時小風(fēng)扇啟動降溫。警報模塊:警報模塊主要是在溫度超出正常圍時發(fā)出警報信息,實現(xiàn)聲光報警,主要為LED和數(shù)碼管閃爍和蜂鳴器發(fā)聲。2.3溫度傳感器DS18B20DS18B20是常用的溫度傳感器,具有體積小,硬件開銷低,抗干擾能力強,精度高的特點。工作原理:DS18B20的讀寫時序和測溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時的延時時間由2s減為750ms。DS18B20測溫原理如圖2-2所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計數(shù)器2的脈沖輸入。計數(shù)器1和溫度寄存器被預(yù)置在-55℃所對應(yīng)的一個基數(shù)值。計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當(dāng)計數(shù)器1的預(yù)置值減到0時,溫度寄存器的值將加1,計數(shù)器1的預(yù)置將重新被裝入,計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正計數(shù)器1的預(yù)置值。低溫系數(shù)低溫系數(shù)晶振斜率累加器溫度寄存器比較預(yù)置=0計數(shù)器1=0計數(shù)器2預(yù)置高溫系數(shù)晶振加1停止LSB置位/清除圖2-2DS18B20測溫原理圖DS18B20的主要特性:〔1適應(yīng)電壓圍更寬,電壓圍:3.0~5.5V,在寄生電源方式下可由數(shù)據(jù)線供電〔2獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊〔3DS18B20支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測溫〔4DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路〔5溫圍-55℃~+125℃,在-10~+85℃時精度為±0.5℃〔6可編程的分辨率為9~12位,對應(yīng)的可分辨溫度分別為0.5℃、0.25℃、0.125℃和0.0625℃,可實現(xiàn)高精度測溫〔7在9位分辨率時最多在93.75ms把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時最多在750ms把溫度值轉(zhuǎn)換為數(shù)字,速度更快〔8測量結(jié)果直接輸出數(shù)字溫度信號,以"一線總線"串行傳送給CPU,同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力〔9負(fù)壓特性:電源極性接反時,芯片不會因發(fā)熱而燒毀,但不能正常工作。接線方法:面對著扁平的那一面,左負(fù)右正,一旦接反就會立刻發(fā)熱,有可能燒毀!同時,接反也是導(dǎo)致該傳感器總是顯示85℃的原因。實際操作中將正負(fù)反接,傳感器立即發(fā)熱,液晶屏不能顯示讀數(shù),正負(fù)接好后顯示85℃。特點獨特的一線接口,只需要一條口線通信多點能力,簡化了分布式溫度傳感應(yīng)用無需外部元件可用數(shù)據(jù)總線供電,電壓圍為3.0V至5.5V無需備用電源測量溫度圍為-55℃至+125℃。華氏相當(dāng)于是-67華氏度到257華氏度-10℃至+85℃圍精度為±0.5℃溫度傳感器可編程的分辨率為9~12位,溫度轉(zhuǎn)換為12位數(shù)字格式最大值為750毫秒,用戶可定義的非易失性溫度報警設(shè)置,應(yīng)用圍包括恒溫控制、工業(yè)系統(tǒng)、消費電子產(chǎn)品溫度計、或任何熱敏感系統(tǒng)描述該DS18B20的數(shù)字溫度計提供9至12位〔可編程設(shè)備溫度讀數(shù)>。由于DS18B20是一條口線通信,所以中央微處理器與DS18B20只有一個一條口線連接。為讀寫以及溫度轉(zhuǎn)換可以從數(shù)據(jù)線本身獲得能量,不需要外接電源。因為每一個DS18B20的包含一個獨特的序號,多個ds18b20s可以同時存在于一條總線。這使得溫度傳感器放置在許多不同的地方。它的用途很多,包括空調(diào)環(huán)境控制,感測建筑物溫設(shè)備或機器,并進行過程監(jiān)測和控制。DS18B20采用一線通信接口。因為一線通信接口,必須在先完成ROM設(shè)定,否則記憶和控制功能將無法使用。主要首先提供以下功能命令之一:1讀ROM,2ROM匹配,3搜索ROM,4跳過ROM,5報警檢查。這些指令操作作用在沒有一個器件的64位光刻ROM序列號,可以在掛在一線上多個器件選定某一個器件,同時,總線也可以知道總線上掛有有多少,什么樣的設(shè)備。若指令成功地使DS18B20完成溫度測量,數(shù)據(jù)存儲在DS18B20的存儲器。一個控制功能指揮指示DS18B20的演出測溫。測量結(jié)果將被放置在DS18B20存中,并可以讓閱讀發(fā)出記憶功能的指揮,閱讀容的片上存儲器。溫度報警觸發(fā)器TH和TL都有一字節(jié)EEPROM的數(shù)據(jù)。如果DS18B20不使用報警檢查指令,這些寄存器可作為一般的用戶記憶用途。在片上還載有配置字節(jié)以理想的解決溫度數(shù)字轉(zhuǎn)換。寫TH,TL指令以及配置字節(jié)利用一個記憶功能的指令完成。通過緩存器讀寄存器。所有數(shù)據(jù)的讀,寫都是從最低位開始。2.4LCD屏幕圖2-3LCD管腳圖TFT-LCD又叫做薄膜晶體管液晶顯示器,其管腳圖如上,其管腳在STM32F103中有相應(yīng)的管腳對應(yīng)。常用的液晶屏接口很多種,8位、9位、16位、18位都有。而常用的通信模式呢,主要有6800模式和8080模式兩種,今天呢,我們來講的是8080模式。如果大家接觸過LCD1602或者LCD12864等,那么就會發(fā)現(xiàn)8080模式的時序呢,其實跟LCD1602或者LCD12864的讀寫時序是差不多的。8080接口有5條基本的控制線和多條數(shù)據(jù)線,數(shù)據(jù)線的數(shù)量主要看液晶屏使用的是幾位模式,有8根、9根、16根、18根四種類型。具體如下表:表2-1TFT-LCD各位功能可以知道,LCD液晶屏的信號線主要有:1>CS:用于片選的選擇。2>RS:用于選擇命令或者數(shù)據(jù)。3>WR:寫使能。4>RD:讀使能。5>RESET:復(fù)位端。其時序如下圖:圖2-4LCD時序圖〔1在WR跳變?yōu)榈碗娖街?液晶屏開始讀取總線上面的數(shù)據(jù)。如果使用IO口模擬寫入的時候,可以先在總線上面寫入數(shù)據(jù),然后在跳變WR,以保證當(dāng)讀取的時候,總線上面的數(shù)據(jù)是穩(wěn)定的。〔2在RD跳變?yōu)榈碗娖街?液晶屏放置數(shù)據(jù)到總線上面。液晶屏的讀寫時序了,大家操作的時候,可以使用單片機IO口模擬它的時序進行操作。2.5DC5V散熱風(fēng)扇散熱風(fēng)扇的驅(qū)動電路如圖2-5所示:I/OI/O口圖2-5散熱風(fēng)扇驅(qū)動電路風(fēng)扇僅需要的一根口線驅(qū)動,當(dāng)I/O輸出為低電平時,三極管導(dǎo)通,風(fēng)扇啟動;當(dāng)I/O輸出為高電平時,風(fēng)扇停止。2.6加熱片 加熱片驅(qū)動電路如圖2-6所示:I/OI/O口圖2-6加熱片驅(qū)動電路 加熱片也僅僅需要一根口線控制,I/O口為高電平時,繼電器L與N_O端連通,加熱片工作;I/O口為低電平時,繼電器L與N_O端斷開,加熱片工作。3軟件設(shè)計3.1軟件平臺本設(shè)計的軟件平臺為keiluvision4,目前使用KeiluVision4的產(chǎn)品有KeilMDK-ARM,KeilC51,KeilC166和KeilC251。 KeiluVision4具有以下特點:發(fā)展:20XX2月發(fā)布KeiluVision4,KeiluVision4引入靈活的窗口管理系統(tǒng),使開發(fā)人員能夠使用多臺監(jiān)視器,并提供了視覺上的表面對窗口位置的完全控制的任何地方。新的用戶界面可以更好地利用屏幕空間和更有效地組織多個窗口,提供一個整潔,高效的環(huán)境來開發(fā)應(yīng)用程序。新版本支持更多最新的ARM芯片,還添加了一些其他新功能。20XX3月ARM公司發(fā)布最新集成開發(fā)環(huán)境RealViewMDK開發(fā)工具中集成了最新版本的KeiluVision4,其編譯器、調(diào)試工具實現(xiàn)與ARM器件的最完美匹配。新特征:1.最新的KeiluVision4IDE,旨在提高開發(fā)人員的生產(chǎn)力,實現(xiàn)更快,更有效的程序開發(fā)。 2.uVision4引入了靈活的窗口管理系統(tǒng),能夠拖放到視圖的任何地方,包括支持多顯示器窗口。 3.uVision4在μVision3IDE的基礎(chǔ)上,增加了更多大眾化的功能。4.多顯示器和靈活的窗口管理系統(tǒng)5.系統(tǒng)瀏覽器窗口的顯示設(shè)備外設(shè)寄存器信息6.調(diào)試還原視圖創(chuàng)建并保存多個調(diào)試窗口布局7.多項目工作區(qū)簡化與眾多的項目3.2軟件設(shè)計模塊圖恒溫系統(tǒng)恒溫系統(tǒng)溫度檢測模塊報警模塊恒溫控制模塊控制算法鍵盤模塊顯示模塊 圖3-1軟件設(shè)計模塊軟件設(shè)計中共分為六大部分,溫度檢測模塊、顯示模塊、報警模塊、鍵盤模塊、恒溫控制模塊和控制算法。 溫度檢測模塊主要是溫度傳感器DS18B20相關(guān)的程序,實現(xiàn)溫度的采集和轉(zhuǎn)換,最終為我們常用的攝氏溫度值的形式;顯示模塊以LCD屏幕相關(guān)程序為主,實現(xiàn)必要信息的顯示;警報模塊實現(xiàn)溫度超限報警,恒溫控制實現(xiàn)對溫度的恒定控制,在程序里,這兩部分在一個函數(shù)里;鍵盤模塊主要是實現(xiàn)溫度值得設(shè)定;控制算法是對采集溫度所做的一個均值濾波,以排除采集的錯誤數(shù)據(jù)。3.3主程序流程圖主程序流程圖3-2如下所示:開始開始Flag=1?最低溫設(shè)置與恒溫控制圖3-2主程序流程框圖YFlag=2?最高溫設(shè)置與恒溫控制
Flag=0?實時溫度顯示與恒溫控制
結(jié)束YYNNN根據(jù)按鍵狀態(tài)更新flag值進行初始化之后,進入一個while〔1的死循環(huán)里,不斷的根據(jù)flag的值來更新工作的狀態(tài)。當(dāng)Flag=0時,進入溫度實時顯示部分,在顯示的同時還會進行恒溫狀態(tài)的控制;當(dāng)Flag=1時,進入恒溫圍下限的設(shè)置的界面,利用按鍵設(shè)置目標(biāo)值,并同時實現(xiàn)恒溫控制;當(dāng)Flag=2時,進入恒溫圍上限的設(shè)置的界面,利用按鍵設(shè)置目標(biāo)值,并同時實現(xiàn)恒溫控制。Flag標(biāo)志通過按鍵更新,0—2循環(huán),到3自動變?yōu)?。3.4子程序流程圖3.4.1恒溫控制子程序流程圖開始開始溫度是否過高?執(zhí)行溫度過高時相關(guān)動作圖3-3恒溫控制子程序流程框圖Y溫度是否過低?執(zhí)行溫度過低時相關(guān)動作
溫度是否正常?執(zhí)行溫度正常時相關(guān)動作
結(jié)束YYNNN在恒溫控制子程序中,通過對當(dāng)前溫度值的判斷來決定要執(zhí)行的動作:溫度過高時,執(zhí)行高溫時所對應(yīng)的相關(guān)動作,即最左邊4位數(shù)碼管顯示"H"字樣,紅色報警指示燈亮,同時風(fēng)扇啟動散熱,加熱片不工作;溫度過低時,執(zhí)行低溫時所對應(yīng)的相關(guān)動作,即最左邊4位數(shù)碼管顯示"L"字樣,藍(lán)色報警指示燈亮,同時加熱片啟動加熱,散熱風(fēng)扇不工作;在溫度正常顯示時,數(shù)碼管左4位沒有顯示,綠色警報指示燈亮,加熱片和風(fēng)扇都不工作。3.4.2flag標(biāo)志設(shè)置子程序流程圖開始開始K_LEFT仍按下?圖3-4flag標(biāo)志設(shè)置子程序流程框圖K_LEFT按下?消抖延時10msNFlag++Flag=3?Flag=0YYY結(jié)束NNflag標(biāo)志作為溫度顯示和溫度設(shè)置之間的轉(zhuǎn)換標(biāo)志,其設(shè)置的過程必須清晰且正確:flag初始值為0,即初始狀態(tài)為溫度顯示與恒溫控制狀態(tài);當(dāng)K_LEFT按鍵按下時,延時10ms以消除抖動,防止誤觸,然后flag標(biāo)志自加1;當(dāng)flag=1時,進入恒溫圍下限的設(shè)置的界面,并同時實現(xiàn)恒溫控制;當(dāng)flag=2時,進入恒溫圍上限的設(shè)置的界面,并同時實現(xiàn)恒溫控制;flag自加到3時,會自動重置為0。溫度設(shè)置子程序流程圖溫度設(shè)置子程序流程圖如下所示:開始開始K_UP仍按下?下?圖3-5溫度設(shè)置子程序流程框圖K_UP按下?延時消抖動溫度+0.1℃K_DOWN按下?Y延時消抖動K_DOWN仍按下?下?溫度-0.1℃結(jié)束YYYNNNN恒溫圍的設(shè)置主要由K_UP、K_DOWN兩個按鍵完成:K_UP按下,延時10ms消除抖動,防止誤觸,然后相應(yīng)的溫度圍+0.1℃;K_DOWN按下,延時10ms消除抖動,防止誤觸,然后相應(yīng)的溫度圍-0.1℃;3.4.4溫度讀取函數(shù)流程圖 溫度讀取函數(shù)流程圖如下所示:開始開始初始化發(fā)送0xCC,設(shè)置單片工作方式發(fā)送0x44,啟動溫度轉(zhuǎn)換延時,等待溫度轉(zhuǎn)換完畢發(fā)送0xBE,讀取轉(zhuǎn)換的溫度低字節(jié)存入a高字節(jié)存入b溫度原碼temp=〔〔b<<8+a溫度為負(fù)?溫度值value=temp*<-0.0625>溫度值value=temp*<-0.0625>返回value結(jié)束YN圖3-6溫度讀取函數(shù)流程圖本次設(shè)計中僅使用了一個DS18B20溫度傳感器,根據(jù)其指令表需要先發(fā)送一個0xCC設(shè)定工作的方式;然后發(fā)送0x44啟動溫度裝換,轉(zhuǎn)換的數(shù)據(jù)存入9位的RAM中;延時一段時間,等待溫度轉(zhuǎn)換完畢;發(fā)送0xBE,讀取RAM中儲存的數(shù)據(jù),高字節(jié)為b,低字節(jié)為a,溫度轉(zhuǎn)換的原碼temp=高字節(jié)左移8位+低字節(jié),注意此時的temp并不是我們常用的攝氏溫度值,后面還需要轉(zhuǎn)換;根據(jù)溫度值的符號不同返回不同的值,溫度為正value=temp*<0.0625>,溫度為負(fù)value=temp*<-0.0625>,此時的value才為我們生活中常用的攝氏溫度值。3.4.5均值濾波程序流程圖開始開始初始化ch=readtemp<>max=min=final=chi<=9?ch<min?ch=readtemp<>final+=chch>max?min=chmax=chi++final=<final-max-min>/8返回finalNNNYYY圖3-7均值濾波流程圖這里只是對連續(xù)采集的10次數(shù)據(jù)進行了一次均值濾波,將10次采集的溫度總值減去10次中的最大值和最小值后取平均數(shù)便得到了濾波后的相對穩(wěn)定的溫度值。均值濾波的數(shù)據(jù)可以在程序中改變參數(shù)的值來調(diào)整,完成不同次數(shù)的濾波。3.4.6顯示函數(shù)程序流程圖開始開始溫度值*100將顯示的信息"xx.xx℃"存入數(shù)組dat[]調(diào)用GUI_Show12ASCII<>函數(shù)顯示結(jié)束圖3-8顯示函數(shù)流程圖本設(shè)計的顯示功能比較簡單,對要顯示的溫度做了一個簡單處理,調(diào)用GUI_Show12ASCII<>函數(shù)顯示,其他的一些信息的顯示也是通過此函數(shù)實現(xiàn)的。這也是本次設(shè)計中的不足之處,顯示功能過于簡單。4調(diào)試分析該設(shè)計硬件電路連接組裝好以后,便可進入系統(tǒng)調(diào)試,其主要任務(wù)是排除存在硬件故障,并完善其硬件的結(jié)構(gòu),運行所設(shè)計的程序,排除程序存在錯誤,并優(yōu)化程序結(jié)構(gòu),使系統(tǒng)達(dá)到期望的性能。4.1硬件調(diào)試嵌入式系統(tǒng)的硬件和軟件調(diào)試應(yīng)是相互進行的,但通常是先排除明顯的硬件故障:開路、短路:由于焊接技術(shù)導(dǎo)致的開路、短路等故障。解決方法:對照原理圖用萬用表檢測,補焊即可。2.元器的件損壞:由于對所使用的元器件不熟悉及制焊接過程中操作不當(dāng)致使器件損壞。解決方法:仔細(xì)閱讀元器件的應(yīng)用環(huán)境,仔細(xì)焊接。3.電源故障:上電后造成元器件損壞、無常的供電,電路不能正的常工作。電源故障包括:電壓值不符合設(shè)計要求,電源引出線與插座不對應(yīng),各檔電源之間短路等。解決方法:電源必須單獨的調(diào)試好以后才能加到系統(tǒng)各個部件中。4.2軟件測試設(shè)計軟件部分出問題的現(xiàn)象:1.以斷點或連續(xù)方式運行時,目標(biāo)沒有按規(guī)定的功能進行操作或什么結(jié)果也沒有,是由于程序轉(zhuǎn)移到
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度洗浴中心員工福利保障與激勵合同4篇
- 2024秀嶼區(qū)文印中心綜合性承包經(jīng)營管理合同3篇
- 2024聘用駕駛員安全保障及應(yīng)急處理服務(wù)合同3篇
- 2025年度智能穿戴設(shè)備打膠密封服務(wù)合同4篇
- 2025年度智能船舶租賃合作協(xié)議模板4篇
- 2025年度玻璃纖維復(fù)合材料研發(fā)與市場拓展承包合同3篇
- 2024年租賃合同:設(shè)備租賃與維護條款
- 2025年度文化傳播公司員工辭退合同范本4篇
- 2025年度幼兒園食堂承包運營管理合同范本3篇
- 2025年度智慧城市建設(shè)戰(zhàn)略合作框架協(xié)議范本4篇
- 急診與災(zāi)難醫(yī)學(xué)課件 03 呼吸困難大課何琳zhenshi
- 急性腹瀉與慢性腹瀉修改版
- 先天性肌性斜頸的康復(fù)
- 《國際市場營銷》案例
- GB/T 37518-2019代理報關(guān)服務(wù)規(guī)范
- GB/T 156-2017標(biāo)準(zhǔn)電壓
- PPT溝通的藝術(shù)課件
- 內(nèi)科學(xué):巨幼細(xì)胞性貧血課件
- 暑假家校聯(lián)系情況記錄表
- 周計劃工作安排日程表Excel模板
- Q∕GDW 12155-2021 國家電網(wǎng)有限公司應(yīng)急指揮信息系統(tǒng)技術(shù)規(guī)范
評論
0/150
提交評論