版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、武漢理工大學(xué)畢業(yè)設(shè)計(論文)基于單片機的數(shù)碼管顯示的K型熱電偶溫度計的設(shè)計與仿真學(xué)院(系): 信息工程學(xué)院 專業(yè)班級: 信息工程xxxx班學(xué)生姓名: xx 指導(dǎo)教師: xx 學(xué)位論文原創(chuàng)性聲明 本人鄭重聲明:所呈交的論文是本人在導(dǎo)師的指導(dǎo)下獨立進行研究所取得的研究成果。除了文中特別加以標(biāo)注引用的內(nèi)容外,本論文不包括任何其他個人或集體已經(jīng)發(fā)表或撰寫的成果作品。本人完全意識到本聲明的法律后果由本人承擔(dān)。作者簽名: 年 月 日學(xué)位論文版權(quán)使用授權(quán)書本學(xué)位論文作者完全了解學(xué)校有關(guān)保障、使用學(xué)位論文的規(guī)定,同意學(xué)校保留并向有關(guān)學(xué)位論文管理部門或機構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)
2、省級優(yōu)秀學(xué)士論文評選機構(gòu)將本學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)進行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。本學(xué)位論文屬于1、保密囗,在 年解密后適用本授權(quán)書2、不保密囗 。作者簽名: 年 月 日導(dǎo)師簽名: 年 月 日摘要本文主要介紹了基于熱電偶溫度傳感器的測溫系統(tǒng)的設(shè)計。利用轉(zhuǎn)換芯片MAX6675和k型熱電偶,將溫度信號轉(zhuǎn)換成數(shù)字信號,通過模擬SPI的串行通信方式輸送數(shù)據(jù),在通過單片機處理數(shù)據(jù),最后由數(shù)碼管顯示數(shù)據(jù)。本文采用了帶有冷端補償?shù)臏囟绒D(zhuǎn)換芯片MAX6675、K型熱電偶、89C51單片機、數(shù)碼管等元器件設(shè)計了相應(yīng)溫度采集電路、溫度轉(zhuǎn)換電路、溫度數(shù)碼管顯示電路。結(jié)
3、合硬件電路給出了相應(yīng)的軟件設(shè)計,測溫精度可達到0.25。本系統(tǒng)的工作流程是:首先熱電偶采集溫度,數(shù)據(jù)經(jīng)過MAX6675內(nèi)部電路的處理后送給單片機進行算法處理,最后通過數(shù)碼管電路顯示出測量溫度。本設(shè)計最后對系統(tǒng)進行了proteus的調(diào)試和仿真,實現(xiàn)了設(shè)計的要求。關(guān)鍵詞溫度傳感器熱電偶熱時間常數(shù)冷端補償IABSTRACTThis design describes the thermocouple temperature sensor based on the rapid temperature measurement system. The temperature signal is conver
4、ted into digital signals by useing conversion chip max6675 and k-type thermocouple, conveying data via serial communication simulation spi in processing the data through the microcontroller, the final data from the digital tube displayThis design uses a temperature conversion chip MAX6675,K-type the
5、rmocouple, 89C51microcontroller, LED and other components, design corresponding temperature acquisition circuit, temperature converter circuit, the LED display circuit. With the hardware give out The corresponding software design, temperature measurement accuracy up to 0.25 The system works is: firs
6、t acquisition thermocouple temperature data through the Treatment of the of the MAX6675 internal circuit and be then sent to 89C51 Aim for rapid algorithm processing. Finally, the LED circuit shows the measurement temperature values. In the last, the design of the system was proteus debugging and si
7、mulation,achieve the design requirements.KEY WORDS Temperature sensor Thermocouple Thermal time constant Cold junction compensationII目 錄摘要IABSTRACTII第1章緒論1第2章系統(tǒng)原理概述22.1 熱電偶測溫基本原理22.2 熱電偶冷端補償方案22.2.1分立元氣件冷端補償方案22.2.2集成電路溫度補償方案32.2.3方案確定42.3硬件組成原理42.4軟件系統(tǒng)工作流程4第3章 元件和軟件介紹63.1單片機選擇及最小系統(tǒng)63.2 熱電偶介紹73.2.1K
8、型熱電偶概述73.3 數(shù)字溫度轉(zhuǎn)換芯片MAX6675簡介73.3.1冷端補償專用芯片MAX6675性能特點83.3.2冷端補償專用芯片MAX6675溫度變換93.4 KEIL軟件仿真軟件介紹93.5 PROTEUS硬件仿真軟件介紹10第4章 程序設(shè)計及硬件仿真114.1 數(shù)據(jù)的采集114.2 數(shù)據(jù)傳輸部分114.3 數(shù)據(jù)處理部分144.3.1 數(shù)據(jù)轉(zhuǎn)換154.3.2 進制轉(zhuǎn)換174.4 顯示部分程序及仿真19第5章 系統(tǒng)仿真23結(jié) 論25參考文獻26附錄27致謝34武漢理工大學(xué)畢業(yè)設(shè)計(論文)第1章緒論溫度是反映物體冷熱狀態(tài)的物理參數(shù),對溫度的測量在冶金工業(yè)、化工生產(chǎn)、電力工程、機械制造和食品
9、加工、國防、科研等領(lǐng)域中有廣泛地應(yīng)用。在某些特殊的場合對溫度的檢測速度有很高的要求,例如:在測量汽車發(fā)動機吸入空氣的溫度的時候,就要求熱響應(yīng)時間小于1s;航天飛機的主發(fā)動機的溫度測量要求0.4s 內(nèi)完成等。因此針對以上問題就有人提出溫度快速測量的思想。通常用來測量溫度的傳感器有熱電阻溫度傳感器、熱敏電阻、熱電偶、半導(dǎo)體溫度傳感器等幾種。這些常用溫度傳感器一般的溫度測量中可以滿足響應(yīng)速度的問題。但在特殊的場合就不能達到快速檢測的要求,例如在氣體溫度測量時候,由于溫度傳感器自身的熱滯特性,而氣體傳熱過程又比較緩慢,氣體溫度測量就有很大滯后。工業(yè)常用的精度較高的溫度傳感器有鉑熱電阻、半導(dǎo)體溫度傳感器
10、等。鉑熱電阻具有溫度測量范圍大、重復(fù)性好、精度高等特點,但是響應(yīng)不是很快,特別是在對氣體溫度測量時至少要幾秒鐘1。所以用溫度傳感器一般都存在著對氣體溫度變化響應(yīng)較慢的問題。在對溫度實時性測量要求比較高的系統(tǒng),運用常用溫度測量方法很難做到對溫度的快速測量,對系統(tǒng)的精度影響就很大。但是將熱電偶應(yīng)用在基于單片機的嵌入式系統(tǒng)領(lǐng)域時,卻存在著以下幾方面的問題2。非線性:熱電偶輸出熱電勢與溫度之間的關(guān)系為非線性關(guān)系,因此在應(yīng)用時必須進行線性化處理。冷端補償:熱電偶輸出的熱電勢為冷端保持為0時與測量端的電勢差值,而在實際應(yīng)用中冷端的溫度是隨著環(huán)境溫度而變化的,故需進行冷端補償。數(shù)字化輸出:與嵌入式系統(tǒng)接口必
11、然要采用數(shù)字化輸出及數(shù)字化接口,而作為模擬小信號測溫元件的熱電偶顯然無法直接滿足這個要求。在許多熱工實驗中,往往面臨熱電偶冷端溫度問題,不管是采用恒溫補償法(冰點補償法)還是電橋補償法,都會帶來實驗費用較高、實際的檢測系統(tǒng)較復(fù)雜.難以達到實時測量、接口轉(zhuǎn)換電路復(fù)雜等問題,而隨著計算機測控技術(shù)在工業(yè)生產(chǎn)制造領(lǐng)域的普遍應(yīng)用,溫度參數(shù)的微機化測量與控制已成為必然趨勢。因此我們必須解決對熱電偶測量信號的放大調(diào)理、非線性校正、冷端補償、模數(shù)轉(zhuǎn)換、數(shù)字輸出接口等一系列復(fù)雜的問題,以及解決模擬與數(shù)字電路硬件設(shè)計過程和建表、查表、插值運算等復(fù)雜的軟件編制過程,以達到使電路簡化,成本減少,增加系統(tǒng)可靠性的目的。
12、鑒于上面的分析,本論文主要任務(wù)是設(shè)計一種基于高精度K型熱電偶傳感器測溫系統(tǒng)。采用帶有冷端補償?shù)臏囟绒D(zhuǎn)換芯片MAX6675、K型熱電偶、89C51單片機、數(shù)碼管等元器件設(shè)計出相應(yīng)溫度采集電路、溫度轉(zhuǎn)換電路、數(shù)碼管顯示電路。系統(tǒng)用單片機對帶有冷端補償?shù)臏囟绒D(zhuǎn)換芯片MAX6675進行控制,要達到任務(wù)書中的技術(shù)指標(biāo),并對系統(tǒng)進行protues的調(diào)試和仿真試驗,使其具有良好的實用性能,能夠?qū)崿F(xiàn)對固體表面、液體和氣體溫度的高精度測量。35第2章系統(tǒng)原理概述2.1熱電偶測溫基本原理熱電偶測溫的基本原理是兩種不同成份的材質(zhì)導(dǎo)體組成閉合回路2,當(dāng)兩端存在溫度梯度時,回路中就會有電流通過,此時兩端之間就存在熱電動
13、勢,這就是所謂的塞貝克效應(yīng)。兩種不同成份的均質(zhì)導(dǎo)體為熱電極,溫度較高的一端為工作端(熱端),溫度較低的一端為自由端(冷端),自由端通常處于某個恒定的溫度下。根據(jù)熱電動勢與溫度的函數(shù)關(guān)系制成熱電偶分度表;分度表是自由端溫度在0時的條件下得到的,不同的熱電偶具有不同的分度表。在熱電偶回路中接入第三種金屬材料時,只要該材料兩個接點的溫度相同,熱電偶所產(chǎn)生的熱電勢將保持不變,即不受第三種金屬接入回路中的影響。因此,在熱電偶測溫時,可接入測量儀表,測得熱電動勢后即可知道被測介質(zhì)的溫度。熱電偶的熱電勢,應(yīng)注意如下幾個問題:、熱電偶的熱電勢是熱電偶兩端溫度函數(shù)的差,而不是熱電偶兩端溫度差的函數(shù);、熱電偶所產(chǎn)
14、生的熱電勢的大小當(dāng)熱電偶的材料是均勻時,與熱電偶的長度和直徑無關(guān),只與熱電偶材料的成份和兩端的溫差有關(guān);、當(dāng)熱電偶的兩個熱電偶絲材料成份確定后,熱電偶熱電勢的大小,只與熱電偶的溫度差有關(guān)。若熱電偶冷端的溫度保持一定,這時熱電偶的熱電勢僅是工作端溫度的單值函數(shù)。2.2熱電偶冷端補償方案熱電偶測量溫度時要求其冷端(測量端為熱端,通過引線與測量電路連接的端稱為冷端)的溫度保持不變,其熱電勢大小才與測量溫度呈一定的比例關(guān)系。若測量時,冷端的(環(huán)境)溫度變化,將影響嚴重測量的準確性。在冷端采取一定措施補償由于冷端溫度變化造成的影響稱為熱電偶的冷端補償。2.2.1分立元氣件冷端補償方案方案一的熱電偶冷端溫
15、度補償器件是由分立元件構(gòu)成的,其體積大,使用不夠方便,而且在改變橋路電源或熱電偶類型時需要重新調(diào)整電路的元件值。主要包括溫度采集電路、信號放大電路、A/D轉(zhuǎn)換電路、熱電偶冷端補償電路、數(shù)碼管顯示電路等。其系統(tǒng)框圖如圖2.1。信號放大熱電偶溫度信號采集系統(tǒng)單片機控制器AD轉(zhuǎn)換電路熱電偶冷端測量電路數(shù)碼管顯示電路報警電路圖2.1 分立元氣件冷端補償2.2.2集成電路溫度補償方案方案二采用熱電偶冷端補償專用芯MAX6675,MAX6675溫度轉(zhuǎn)換芯片具有冷端溫度補償及對溫度進行數(shù)字化測量這兩項功能5。一方面利用內(nèi)置溫度敏感二極管將環(huán)境溫度轉(zhuǎn)換成補償電壓,另一方面又通過模數(shù)轉(zhuǎn)換器將熱電勢和補償電壓轉(zhuǎn)換
16、為代表溫度的數(shù)字量, 將二者相加后從串行接口輸出的測量結(jié)果,即為實際溫度數(shù)據(jù)。主要包括溫度采集電路、MAX6675溫度轉(zhuǎn)換電路、數(shù)碼管顯示電路等。其系統(tǒng)框圖如圖2.2。熱電偶溫度信號采集系統(tǒng)MAX6675溫度信號轉(zhuǎn)換芯片單片機控制器數(shù)碼管顯示電路報警電路圖2.2 集成電路溫度補償2.2.3方案確定綜合對比以上兩種方案,方案一電路復(fù)雜,且測量不精確照成誤差較大,方案二采用集成溫度轉(zhuǎn)換芯片不僅能很好的解決冷端溫度補償及溫度數(shù)值化問題,并消除由熱電偶非線性而造成的測量誤差,且精確度高,可實現(xiàn)電路的優(yōu)化設(shè)計。故最后采用方案二。2.3硬件組成原理本系統(tǒng)硬件主要由熱電偶溫度采集電路、MAX6675溫度處理
17、電路、89C51單片機控制電路、超量程報警電路和數(shù)碼管顯示電路組成。熱電偶采用分度號為K的熱電偶,為了減少外界信號的干擾通過雙絞線跟MAX6675芯片直接相連接。MAX6675芯片通過模擬SPI串行接口傳輸數(shù)據(jù),采用的89C51單片機對帶有冷端補償?shù)臏囟绒D(zhuǎn)換芯片MAX6675進行控制。本系統(tǒng)設(shè)計還具有報警的特點,當(dāng)所測量的溫度低于零攝氏度或者高于400攝氏度時報警電路發(fā)出警報。顯示電路由89C51單片機通過74LS373對六位共陰數(shù)碼管控制,當(dāng)所測溫度在規(guī)定范圍內(nèi)時就可以通過數(shù)碼管快速顯示出來2.4軟件系統(tǒng)工作流程系統(tǒng)的軟件工作流程為:熱電偶采集的溫度數(shù)據(jù);溫度數(shù)據(jù)經(jīng)過MAX6675內(nèi)部電路的
18、AD轉(zhuǎn)換、冷端補償、內(nèi)部校正6;溫度轉(zhuǎn)換電路將處理后12位數(shù)字溫度量以串行方式送給單片機;單片機將數(shù)字量進行軟件算法處理;如果測量溫度在測量范圍內(nèi),最后通過數(shù)碼管顯示出測量溫度;如果超出測量范圍由單片機控制使報警電路報警。其軟件工作流程圖如圖2.3。系統(tǒng)軟件設(shè)計主要包含主程序,重新測量、超量程報警子程序、顯示子程序等功能模塊。開始讀取max6675數(shù)據(jù)數(shù)據(jù)是否穩(wěn)定 否是從16位數(shù)據(jù)中得到12位溫度數(shù)據(jù) 是否超出量程報警電路 是否將數(shù)據(jù)進行進制轉(zhuǎn)換調(diào)用顯示子程序 返回圖2.3 軟件設(shè)計總體流程圖其中,SPI串口通信,可以利用proteus硬件仿真來查看,而數(shù)據(jù)處理是由keil軟件仿真來查看結(jié)果,
19、最后還是由proteus來驗證整個設(shè)計是否成功。第3章 元件和軟件介紹3.1單片機選擇及最小系統(tǒng)MCU是整個系統(tǒng)的控制核心,由于溫度測量系統(tǒng)的接口方便,綜合考慮整個系統(tǒng),選用美國ATMEL公司生產(chǎn)的AT89C51型單片機3。AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓,高性能CMOS 8位微處理器。單片機的可擦除只讀存儲器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,其外觀引腳圖如下:圖3.7 AT89
20、C51外觀圖 AT89C51提供以下標(biāo)準功能4:4k字節(jié)的flash閃速存儲器,128字節(jié)內(nèi)部RAM,32個I/O口線,兩個16位定時/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C51可降至0hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式、空閑方式停止CPU工作,但允許RAM,定時/技術(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其他所有部件工作指導(dǎo)下一個硬件復(fù)位。AT89C51共有4個雙向的8位并行I/O端口,分別為P0P3,共有32根口線,端口的每一位均由鎖存器、輸出驅(qū)動器和輸入緩沖器所組成。P0
21、P3的端口寄存器屬于特殊功能寄存器系列。這四個端口除了可以按字節(jié)尋址外還可以位尋址。其中P0口為漏極開路作為輸出使用時應(yīng)外加上拉電阻,P3口既可以做為普通I/O口使用,還可以作為特定的功能引腳。雖然51單片機只有一個串口接口,但其I/O口既可以用字節(jié)尋址也可以位尋址,這樣在實際應(yīng)用中,我們就可以通過模擬不同總線的時序特征來實現(xiàn)各種數(shù)據(jù)的傳輸。AT89C51單片機內(nèi)部有一個功能強大的全雙工的一部通信串口。其串行口有四種工作方式:分別為同步通信方式、8位異步收發(fā)、9位異步收發(fā)(特定波特率)、9位異步收發(fā)(定時器控制波特率)。它有兩個物理上獨立接收發(fā)送緩沖器SBUF,可同時發(fā)送、接收數(shù)據(jù)。波特率可由
22、軟件設(shè)置片內(nèi)的定時器來控制,而且每當(dāng)串行口接收或發(fā)送1B完畢,均可發(fā)出中斷請求5。3.2 熱電偶介紹熱電偶是工程上應(yīng)用最廣泛的溫度傳感器。它是將溫度量轉(zhuǎn)換為電量變化的裝置。它構(gòu)造簡單,使用方便,具有較高的準確度、穩(wěn)定性及復(fù)現(xiàn)性,溫度測量范圍寬,在溫度測量中占有重要的地位。當(dāng)兩種不同材料的導(dǎo)體或半導(dǎo)體連成閉合回路時,將兩個接點分別置于溫度為T和T0的熱源中,該回路內(nèi)會產(chǎn)生熱電勢。熱電勢的大小反映兩個接點溫度差,保持T0不變,熱電勢隨著溫度T變化而變化。測得熱電勢的值,即可知道溫度T的大小。圖3.1熱電偶測溫原理圖產(chǎn)生的熱電勢由兩部分組成:溫差電勢和接觸電勢。3.2.1K型熱電偶概述K型熱電偶作為
23、一種溫度傳感器,K型熱電偶通常和顯示儀表,記錄儀表和電子調(diào)節(jié)器配套使用。K型熱電偶可以直接測量各種生產(chǎn)中從0到1300范圍的液體蒸汽和氣體介質(zhì)以及固體的表面溫度6。圖3.2熱電偶鎳鉻-偶(K)型熱電偶是目前用量最大的廉金屬熱電偶,其用量為其他熱電偶的總和。K型熱電偶絲直徑一般為1.24.0mm。正極(KP)的名義化學(xué)成分為:Ni:Cr=92:12,負極(KN)的名義化學(xué)成分為:Ni:Si=99:3,其使用溫度為-2001300。K型熱電偶具有線性度好,熱電動勢較大,靈敏度高,穩(wěn)定性和均勻性較好,抗氧化性能強,價格便宜等優(yōu)點,能用于氧化性惰性氣氛中廣泛為用戶所采用。K型熱電偶不能直接在高溫下用于
24、硫,還原性或還原,氧化交替的氣氛中和真空中,也不推薦用于弱氧化氣氛.3.3 數(shù)字溫度轉(zhuǎn)換芯片MAX6675簡介MAX6675是美國Maxin公司生產(chǎn)的基于SPI總線的專用芯片9,不僅能對K型熱電偶進行冷端補償,還能對熱電勢信號作數(shù)字處理,具有很高的可靠性和穩(wěn)定性,可廣泛應(yīng)用于工業(yè)、儀器儀表、自動化領(lǐng)域等。其內(nèi)部結(jié)構(gòu)框圖如圖3.3所示。圖3.3 MAX6675內(nèi)部結(jié)構(gòu)框圖3.3.1冷端補償專用芯片MAX6675性能特點MAX6675的主要特性如下:簡單的SPI串行口溫度值輸出。0+l024的測溫范圍。12位0.25的分辨率。片內(nèi)冷端補償。高阻抗差動輸入。熱電偶斷線檢測。單一+5V的電源電壓.低功
25、耗特性。工作溫度范圍-20+85。2000V的ESD保護。該器件采用8引腳50貼片封裝。引腳排列如圖3.4所示,引腳功能如表3-1。圖3.4腳功能圖表3-1引腳功能表引腳名稱功能1GND接地端2T-K型熱電偶負極3T+K型熱電偶正極4VCC正電源端5SCK串行時鐘輸入6CS片選端,CS為低時、啟動串行接口7SO串行數(shù)據(jù)輸出8N.C.空引腳3.3.2冷端補償專用芯片MAX6675溫度變換MAX6675內(nèi)部具有將熱電偶信號轉(zhuǎn)換為與ADC輸入通道兼容電壓的信號調(diào)節(jié)放大器,T+和T-輸入端連接到低噪聲放大器A1,以保證檢測輸入的高精度,同時使熱電偶連接導(dǎo)線與干擾源隔離。熱電偶輸出的熱電勢經(jīng)低噪聲放大器
26、A1放大,再經(jīng)過A2電壓跟隨器緩沖后,被送至ADC的輸入端。在將溫度電壓值轉(zhuǎn)換為相等價的溫度值之前,它需要對熱電偶的冷端溫度進行補償,冷端溫度即是MAX6675周圍溫度與0實際參考值之間的差值。對于K型熱電偶,電壓變化率為41V/,電壓可由線性公式Vout=(41V/)×(tR-tAMB)來近似熱電偶的特性。上式中,Vout為熱電偶輸出電壓(mV),tR是測量點溫度;tAMB是周圍溫度3.4 KEIL軟件仿真軟件介紹 keil c51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng)7,與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因
27、而易學(xué)易用。keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部分組合在一起。運行Keil軟件需要WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。如果你使用C語言編程,那么keil幾乎就是你的不二之選,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。 此次的畢業(yè)設(shè)計主要是利用KEIL來完成程序的編寫,主要用匯編語言來編寫程序,用計時器來完成數(shù)碼管動態(tài)顯示的。在16進制轉(zhuǎn)換成10進制時,利用keil來查寄存器從而看程序是否能達到轉(zhuǎn)換的目的。3.5
28、PROTEUS硬件仿真軟件介紹proteus軟件是英國Labcenter electronics公司出版的EDA工具軟件8。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機愛好者、從事單片機教學(xué)的教師、致力于單片機開發(fā)應(yīng)用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。迄今為止是世界上唯一將電路仿真軟件、PCB設(shè)計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器模型支持
29、8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MATLAB等多種編譯。此次設(shè)計中,利用proteus完成整個電路的硬件仿真,并且在開始的數(shù)據(jù)采集階段,利用proteus的示波器來查看數(shù)據(jù)是否傳輸。以及最后的階段,看數(shù)據(jù)是否正確顯示。第4章 程序設(shè)計及硬件仿真 在這個部分,是根據(jù)數(shù)據(jù)的采集,傳輸,處理,顯示來逐漸完成的。其中,有的部分可以用keil來查看結(jié)果,有的部分可以用proteus來查看程序結(jié)果。4.
30、1 數(shù)據(jù)的采集熱電偶作為一種主要的測溫元件,具有結(jié)構(gòu)簡單、制造容易、使用方便、測溫范圍寬、測溫精度高等特點14。但是,熱電偶的應(yīng)用卻存在著非線性、冷端補償、數(shù)字化輸出等幾方面的問題。設(shè)計中采用的MAX6675是一個集成了熱電偶放大器、冷端補償、A/D轉(zhuǎn)換器及SPI串口的熱電偶放大器與數(shù)字轉(zhuǎn)換器,其電路如圖3-14所示。K型熱電偶的兩端分別跟MAX6675芯片的T-跟T+相連,為了允許熱電偶斷路檢測,T-引腳必須接地。MAX6675的測量精度對電源耦合噪聲較敏感。為降低電源噪聲影響,在MAX6675的電源引腳附近接入1只0.1F陶瓷旁路電容。溫度由熱電偶采集,然后將數(shù)據(jù)直接送給冷端補償芯片MAX
31、6675芯片進行處理,處理后送給單片機控制電路,完成簡單的溫度采集過程9。圖4.1 溫度采集硬件圖4.2 數(shù)據(jù)傳輸部分數(shù)據(jù)傳輸,即用單片機讀取max6675的數(shù)字信號,其通信模式為SPI。 串行外圍設(shè)備接口SPI(serial peripheral interface)總線技術(shù)是Motorola公司推出的一種同步串行接口,Motorola公司生產(chǎn)的絕大多數(shù)MCU(微控制器)都配有SPI硬件接口10。SPI 用于CPU與各種外圍器件進行全雙工、同步串行通訊。SPI可以同時發(fā)出和接收串行數(shù)據(jù)。它只需四條線就可以完成MCU與各種外圍器件的通訊,這四條線是:串行時鐘線(CSK)、主機輸入/從機輸出數(shù)據(jù)
32、線(MISO)、主機輸出/從機輸入數(shù)據(jù)線(MOSI)、低電平有效從機選擇線CS。當(dāng)SPI工作時,在移位寄存器中的數(shù)據(jù)逐位從輸出引腳(MOSI)輸出(高位在前),同時從輸入引腳(MISO)接收的數(shù)據(jù)逐位移到移位寄存器(高位在前)。發(fā)送一個字節(jié)后,從另一個外圍器件接收的字節(jié)數(shù)據(jù)進入移位寄存器中。主SPI的時鐘信號(SCK)使傳輸同步。其時序圖如下: 圖4.2 SPI通信模式時序圖對于不帶SPI串行總線接口的AT89C51系列單片機來說,可以使用軟件來模擬 SPI的操作,包括串行時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出11。MAX6675從SPI串行接口輸出數(shù)據(jù)的過程如下:MCU使CS變低并提供時鐘信號給SCK,由
33、S0讀取測量結(jié)果。CS變低將停止任何轉(zhuǎn)換過程:CS變高將啟動一個新的轉(zhuǎn)換過程。一個完整串行接口讀操作需16個時鐘周期,在時鐘的下降沿讀16個輸出位,第l位和第15位是一偽標(biāo)志位,并總為0,第14位到第3位為以MSB到LSB順序排列的轉(zhuǎn)換溫度值;第2位平時為低,當(dāng)熱電偶輸入開放時為高,開放熱電偶檢測電路完全由MAX6675實現(xiàn),為開放熱電偶檢測器操作,T-必須接地,并使接地點盡可能接近GND腳;第1位為低以提供MAX6675器件身份碼,第0位為三態(tài)。對于在SCK的下降沿輸入數(shù)據(jù)和上升沿輸出數(shù)據(jù)的器件,則應(yīng)取串行時鐘輸出的初始狀態(tài)為0,即在接口芯片允許時,先置P11為0,以便外圍接口芯片輸出1位數(shù)
34、據(jù)(MCU接收1位數(shù)據(jù)),之后再置時鐘為1,使外圍接口芯片接收1位數(shù)據(jù)(MCU發(fā)送1位數(shù)據(jù)),從而完成1位數(shù)據(jù)的傳送。Max6675因為是傳輸16位數(shù)據(jù),所以要分為高8位和低8位的傳輸。MAX6675MC51 P1.0 SOP1.1SCKP1.2 CS.圖4.3 SPI總線接口電路其程序如下:CS BIT P1.2 ;從機 SCK BIT P1.1 ;時鐘 SO BIT P1.0 ;數(shù)據(jù)輸入 DATAH DATA 30H DATAL DATA 31H ORG 0000H REDAT: CLR CS ;CS低電平,停止數(shù)據(jù)轉(zhuǎn)換, CLR SCK ;時鐘置為低電平 MOV R2, #08H ;讀數(shù)
35、據(jù)高位字節(jié)D15-D8 RDH: MOV C,SO ;讀SO端數(shù)據(jù) RLC A ;累加器左移一位 SETB SCK NOP CLR SCK DJNZ R2,RDH MOV DATAH,A ;將數(shù)據(jù)高位移入緩沖區(qū) MOV R2,#08H RDL: MOV C,SO ;讀SO端數(shù)據(jù);讀數(shù)據(jù)低位字節(jié)D7-D0 RLC A ;累加器左移一位 SETB SCK NOP CLR SCK DJNZ R2,RDL MOV DATAL,A ;將數(shù)據(jù)低位移入緩沖區(qū) SETB CS 相應(yīng)的硬件仿真搭建如下:圖4.4 SPI硬件仿真接線 數(shù)據(jù)傳輸?shù)倪^程,可以用proutes自帶的示波器查看,如下圖:圖4.5 SPI通
36、信時序圖在上圖中,第一行是單片機讀取max6675的數(shù)據(jù),第二行是單片機模擬的,給max6675的始終信號,第三行是cs信號。4.3 數(shù)據(jù)處理部分 在此過程中,不好用protues來查看結(jié)果,不過可以利用keil來查看寄存器的結(jié)果,只要我們首先給個初始數(shù)據(jù),然后最后再印證下就可以。 MAX667多采用標(biāo)準的SPI串行外設(shè)總線與MCU接口,且MAX6675只能作為從設(shè)備。MAX6675S0端輸出溫度數(shù)據(jù)的格式如圖3.5所示12。圖4.6 MAX6675輸出溫度數(shù)據(jù)的格式 D14D3為12位數(shù)據(jù),其最小值為0,對應(yīng)的溫度值為0;最大值為4095,對應(yīng)的溫度值為1023.75;由于MAX6675內(nèi)部
37、經(jīng)過了激光修正,因此,其轉(zhuǎn)換結(jié)果與對應(yīng)溫度值具有較好的線性關(guān)系。溫度值與數(shù)字量的對應(yīng)關(guān)系為:溫度值= 1023.75×轉(zhuǎn)換后的數(shù)字量/4095=轉(zhuǎn)換后的數(shù)字量/4 所以第一步是得到數(shù)字量,第二步是得到溫度值,但可以簡化為,直接得到溫度值,然后再進制轉(zhuǎn)換。其程序流程圖如4.2示。主要先是將非數(shù)據(jù)位的數(shù)據(jù)清零,然后將16位數(shù)據(jù)全部右移3為,可以得到轉(zhuǎn)換后的數(shù)字量,然后再右移2位,得到溫度值。其中,右移最后的兩位會得到小數(shù)部分,這部分可以直接賦值。開 始 SPI得到的16位數(shù)據(jù) 將無關(guān)4位數(shù)據(jù)置零 將數(shù)據(jù)右移5位,得到真實的溫度值值 與設(shè)定的溫度值進行比較報警并結(jié)束是 否進制轉(zhuǎn)換返回圖4.
38、7 溫度轉(zhuǎn)換程序流程圖4.3.1 數(shù)據(jù)轉(zhuǎn)換 這部分主要進行的16位數(shù)據(jù)的整體右移和保存小數(shù)位。在整個程序中,DATAH保存高8位數(shù)據(jù),DATAL保存低8位數(shù)據(jù),DATAX保存小數(shù)數(shù)據(jù)。其程序流程圖如下:開始將無關(guān)數(shù)據(jù)位置零分別右移3位右移一位,得到小數(shù)百分位右移移位,得到小數(shù)十分位將數(shù)據(jù)存放在寄存器和內(nèi)存中結(jié)束圖4.8 數(shù)據(jù)處理流程圖其中,保存小數(shù)百分位是直接根據(jù)右移后的標(biāo)志位,然后直接置DATAX為25,同理,十分位是50。在這個部分,DATAH保存數(shù)據(jù)高2位,DATAL保存數(shù)據(jù)低8位,而小數(shù)部分由于不需要進制轉(zhuǎn)換,所以直接存放在DATAX中,直到最后顯示的時候調(diào)出來。對此,16位數(shù)據(jù)右移一
39、位的程序如下: MOV A,DATAH ;數(shù)據(jù)高位保存在A CLR C ;清除標(biāo)志位 RRC A ;A帶位右移 MOV DATAH,A ;A保存在DATAH MOV A,DATAL ;DATAL存儲在A RRC A ;帶位右移,此時CY是DATAH的最后一位 MOV DATAL,A;DATAL右移,并且高位是DATAH的末位 對于特殊要保存小數(shù)位的右移,其程序如下: MOV A,DATAH CLR C RRC A MOV DATAH,A ;16位數(shù)據(jù)右移一位, MOV A,DATAL ;并且若一出一個高位,則 RRC A ;使兩位小數(shù)+25. MOV DATAL,A JNC SW MOV A,
40、#25HMOV DATAX,ASW: MOV A,DATAH ;同上,不過這次若是高位,則+50 CLR C ;這兩步是為了得到溫度值的 RRC A ;小數(shù)部分 MOV DATAH,A MOV A,DATAL RRC A MOV DATAL,A MOV A,DATAX ADD A,#50H MOV DATAX,A在整個調(diào)試過程中,這部分程序由于簡單,也沒有出現(xiàn)問題,所以就沒有驗證過。4.3.2 進制轉(zhuǎn)換 用匯編實現(xiàn),可以用書中的程序。雙字節(jié)二進制整數(shù)轉(zhuǎn)換成3字節(jié)BCD碼整數(shù)的子程序13。其采用的算法是,依次將整數(shù)的每位左移至CY位,再把CY位左移至一個3字節(jié)隊列中,并進行十進制調(diào)整。通過16次
41、移位完成運算,結(jié)果為壓縮格式的3字節(jié)BCD編碼。其程序如下: ZH: MOV R6,DATAH;將要保存的數(shù)據(jù)存放 MOV R7,DATAL;高位存放在R6,低位R7 CLR A;將要保存數(shù)據(jù)的寄存器清零 MOV R3,A MOV R4,A MOV R5,A MOV R2,#10H;RLOOP: MOV A,R7; ;完成十六進制到10進制的轉(zhuǎn)換 RLC A MOV R7,AMOV A,R6RLC AMOV R6,AMOV A,R5ADDC A,R5DA AMOV R5,AMOV A,R4ADDC A,R4DA AMOV R4,AMOV A,R3ADDC A,R3MOV R3,ADJNZ R2
42、,RLOOP其運行結(jié)果如下圖: 圖 4.9 進制轉(zhuǎn)換結(jié)果,轉(zhuǎn)換前(坐),轉(zhuǎn)換后(右) 經(jīng)過運算,445H=1093,即完成了對數(shù)據(jù)的進制的轉(zhuǎn)換。4.4 顯示部分程序及仿真 這部分,根據(jù)論文題目要求是用數(shù)碼管來顯示。數(shù)碼管動態(tài)顯示,可以用延時子程序方法,或者用計時器中斷的方式來延時14。這部分最后選擇用計時器中斷的方式來完成數(shù)碼管動態(tài)顯示延時的需要。主要是開始用調(diào)用延時子程序的方法是,一直沒有找對延時時間的比較好的設(shè)置,從而是數(shù)碼管一直閃爍,不能正常的顯示。而通過計時器中斷的方式,最后得到了不錯的顯示效果。4.4.1 顯示部分硬件設(shè)計LED顯示器是單片機應(yīng)用系統(tǒng)中常用的輸出器件,是由若干個發(fā)光二
43、極管組成的,當(dāng)發(fā)光二極管導(dǎo)通時,相應(yīng)的一個或一個筆畫發(fā)光,控制不同組合的二極管導(dǎo)通,這就能顯示出不同字符。點亮顯示器有靜態(tài)和動態(tài)兩種方式。所謂靜態(tài)顯示就是顯示器在顯示某個字符時,相應(yīng)的發(fā)光二極管恒定的導(dǎo)通或截止。這種顯示方式每個顯示器都需要一個8位輸出口控制,需要硬件多,適用于顯示位數(shù)較少的場合。當(dāng)顯示位數(shù)較多時采用動態(tài)顯示。所謂動態(tài)顯示就是一位一位的輪流點亮各位顯示器,對于每位顯示器來說,每隔一段時間點亮一次。顯示器的點亮和點亮?xí)r的導(dǎo)通電流有關(guān),還與點亮?xí)r間和間隔時間有關(guān),調(diào)整電流和時間參數(shù),可實現(xiàn)亮度較高較穩(wěn)定的顯示。 如圖3,是用6個共陰極數(shù)碼管的動態(tài)顯示借口電路,用74LS373接成直
44、通的方式作為驅(qū)動電路,字型選擇P0口提供,位選擇由P3口提供。圖4.10 數(shù)碼管顯示電路74LS373三態(tài)輸出的8D透明鎖存器。鎖存器的最主要作用是緩存,其次完成高速的控制器與慢速的外設(shè)的不同步問題,再其次是解決驅(qū)動的問題,最后是解決一個 I/O 口既能輸出也能輸入的問題。自此利用74LS373既解決了P口驅(qū)動不足的問題,也解決了MCU和數(shù)碼管速率不同,從而產(chǎn)生的拖影的感覺。4.4.2 顯示部分程序設(shè)計先存放數(shù)據(jù),用來測試,這部分是用計時器中斷完成的。其程序流程圖如下:開 始利用除法,數(shù)據(jù)都分離成單個數(shù)字依次將數(shù)字保存在內(nèi)存中對計時器設(shè)置初值,并啟動等待中斷顯示下一位數(shù)字初始化計時器是否顯示完
45、6位初始化內(nèi)存是否圖4.11 顯示部分流程圖這部分軟件設(shè)計如下:MAIN: MOV SP,#70H ;初始化堆棧 MOV LEDBUF,#6 MOV LEDBUF+1,#6 MOV LEDBUF+2,#7 MOV LEDBUF+3,#5 MOV LEDBUF+4,#3 MOV LEDBUF+5,#1MOV R0,#LEDBUF ;將ledbuf的首地址給R0MOV DPTR,#TABLE;將TABLE的首是址給DPTRMOV R2,#06H ;R2作為循環(huán)次數(shù)寄存器MOV R1,#01H;R1中放片選信號MOV TMOD, #01H;定時器0工作在方式1MOV TH0, #0DFHMOV TL
46、0,#0B0H;初始代定時器0 SETB TR0;開定時器0 SETB EA;開總中斷 SETB ET0;開定時器0中斷 SJMP $;動態(tài)停機TIME0: DJNZ R2, LOOP1 ;建立一個循環(huán),并且能初始值再次循環(huán) MOV R2,#06H MOV R1,#01H MOV R0,#LEDBUF;初始化數(shù)據(jù)LOOP1: MOV TH0,#0DFH MOV TL0,#0B0H ;初始化定時器0 CJNE R2,#03,WXUD ;第4位有小數(shù)點,所以單獨顯示MOV P3,A RL AMOV R1,A ;片選信號輸入P1并且使其數(shù)據(jù)左移一位MOV A,R0MOVC A,A+DPTRMOV P
47、2,A ;通過查表,將字碼送給偏、p2口CLR P2.7;使小數(shù)點顯示出來INC R0 RETIWXUD: MOV A,R1 ;MOV P3,ARL AMOV R1,A;片選信號輸入P1并且使其數(shù)據(jù)左移一位 MOV A,R0MOVC A,A+DPTRMOV P2,A INC R0;通過查表將ledbuf中數(shù)據(jù)送往P2RETI其運行結(jié)果如下: 圖4.12 數(shù)碼管動態(tài)顯示硬件仿真結(jié)果其中小數(shù)點的位置是根據(jù)需要而對其中的一位,在輸出字形碼之后,再對DP位對應(yīng)的P2.7置零。從而是數(shù)據(jù)顯示比較正常。 第5章 系統(tǒng)仿真 經(jīng)過第4章的分部設(shè)計以及仿真,在第5章就匯總了各個部分,再利用proteus來測試其溫度誤差。由于只是硬件仿
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年金融服務(wù)兜底管理合同范本3篇
- 二零二五版智慧城市建設(shè)項目職業(yè)健康與環(huán)保協(xié)議2篇
- 2025年度食品加工廠蟲害防治與食品衛(wèi)生安全合同4篇
- 2025年度電子元器件專業(yè)存儲與配送服務(wù)合同4篇
- 二零二五年度金屬加工代加工保密協(xié)議模板3篇
- 二零二五版鋁礦廢料回收利用處理合同樣本4篇
- 二零二五年度核設(shè)施安全承包協(xié)議書4篇
- 2025版農(nóng)產(chǎn)品陸上運輸貨物保險合同4篇
- 2025年度臨時科研基地租賃合同4篇
- 2024金融服務(wù)外包與風(fēng)險管理承包合同
- 稱量與天平培訓(xùn)試題及答案
- 超全的超濾與納濾概述、基本理論和應(yīng)用
- 2020年醫(yī)師定期考核試題與答案(公衛(wèi)專業(yè))
- 2022年中國育齡女性生殖健康研究報告
- 各種靜脈置管固定方法
- 消防報審驗收程序及表格
- 教育金規(guī)劃ppt課件
- 呼吸機波形分析及臨床應(yīng)用
- 常用緊固件選用指南
- 私人借款協(xié)議書新編整理版示范文本
- 自薦書(彩色封面)
評論
0/150
提交評論