版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 單片機(jī)課程設(shè)計報告</b></p><p> 題 目 熱敏電阻溫度采集系統(tǒng)設(shè)計 </p><p> 院 系 電子工程學(xué)院 </p><p> 專 業(yè) 自動化 </p><p> 姓 名
2、 xxxx </p><p> xxxx </p><p> 班級學(xué)號 xxxx </p><p> 指導(dǎo)教師 xxxx </p><p> 日 期 2012-2-23
3、 </p><p><b> 目 錄</b></p><p> 第一部分:設(shè)計背景………………………………………3</p><p> 第二部分:系統(tǒng)主要功能…………………………………5</p><p> 第三部分:電路設(shè)計與參數(shù)選擇…………………………5</p><p> 第
4、四部分:系統(tǒng)軟件設(shè)計…………………………………11</p><p> 第五部分:系統(tǒng)調(diào)試與儀器使用…………………………21</p><p> 第六部分:測試數(shù)據(jù)與結(jié)果分析…………………………23</p><p> 第七部分:使用說明書……………………………………23</p><p> 第八部分:總結(jié)…………………………………………
5、24</p><p> 熱敏電阻溫度采集系統(tǒng)設(shè)計</p><p><b> 摘要</b></p><p> 溫度在人類的生活中扮演著極其重要的角色,在冶金、鋼鐵、石化、水泥、玻璃、醫(yī)藥等行業(yè)溫度的測量及為重要。本次課程設(shè)計采用單片機(jī)了STC12C5A60S2和10K NTC熱敏電阻為核心器件來設(shè)計熱敏電阻測溫系統(tǒng)。通過NTC熱敏電阻對外界
6、溫度信號進(jìn)行采集,由于熱敏電阻的阻值隨外界溫度變化而變化,再通過測量電路把阻值的變化轉(zhuǎn)換為電壓的變化,利用STC12C5A60S2單片機(jī)的集成AD把采集到的模擬電壓信號轉(zhuǎn)換為數(shù)字信號,利用單片機(jī)對數(shù)字信號進(jìn)行處理后就可以得到相應(yīng)的溫度值,從而完成了對溫度的測量。</p><p> 該系統(tǒng)采用了STC12C5A60S2單片機(jī)、NTC熱敏電阻、共陰極數(shù)碼管顯示、電容、排阻、晶振、電阻等元器件。</p>
7、<p> 關(guān)鍵字:STC12C5A60S2單片機(jī)、熱敏電阻、測溫系統(tǒng)</p><p><b> 第一部分</b></p><p><b> 設(shè)計背景</b></p><p> 在人類的生活環(huán)境中,溫度扮演著極其重要的角色。無論你生活在哪里,從事什么工作,無時無刻不在與溫度打著交道。自18世紀(jì)工業(yè)革命以來
8、,工業(yè)發(fā)展對是否能掌握溫度有著絕對的聯(lián)系。在冶金、鋼鐵、石化、水泥、玻璃、醫(yī)藥等等行業(yè),可以說幾乎80%的工業(yè)部門都不得不考慮著溫度的因素。溫度對于工業(yè)如此重要,由此推進(jìn)了溫度傳感器的發(fā)展。進(jìn)入21世紀(jì)后,溫度傳感器正朝著高精度、多功能、總線標(biāo)準(zhǔn)化、高可靠性及安全性、開發(fā)虛擬傳感器和網(wǎng)絡(luò)傳感器、研制單片測溫系統(tǒng)等高科技的方向迅速發(fā)展。</p><p> 在工農(nóng)業(yè)生產(chǎn)中,溫度檢測及其控制占有舉足輕重的地位,隨著現(xiàn)
9、代信息技術(shù)的飛速發(fā)展和傳統(tǒng)工業(yè)改造的逐步實現(xiàn) ,能夠獨立工作的溫度檢測和顯示系統(tǒng)已經(jīng)應(yīng)用于諸多領(lǐng)域。要達(dá)到較高的測量精度需要很好的解決引線誤差補(bǔ)償問題、多點測量切換誤差問題和放大電路零點漂移誤差等問題,使溫度檢測復(fù)雜化。模擬信號在長距離傳輸過程中,抗電磁干擾時令設(shè)計者傷腦筋的問題,對于多點溫度檢測的場合,各被檢測點到監(jiān)測裝置之間引線距離往往不同,此外,各敏感元件參數(shù)的不一致,這些都是造成誤差的原因,并且難以完全清除。</p>
10、<p> 單片機(jī)以其功能強(qiáng)、體積小、可靠性高、造價低和開發(fā)周期短等優(yōu)點,成為自動化和各個測控領(lǐng)域中必不可少且廣泛應(yīng)用的器件,尤其在日常生活中也發(fā)揮越來越大的作用。采用單片機(jī)對溫度采集進(jìn)行控制,不僅具有控制方便、組態(tài)簡單和靈活性大等優(yōu)點,而且可以大幅度提高被控數(shù)據(jù)的技術(shù)指標(biāo),從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量。</p><p><b> 第二部分</b></p>
11、<p><b> 系統(tǒng)主要功能</b></p><p> 本系統(tǒng)測量的溫度范圍為2-42攝氏度,可以通過數(shù)碼管直觀地顯示出當(dāng)前溫度值。</p><p><b> 第三部分</b></p><p><b> 電路設(shè)計與參數(shù)選擇</b></p><p><b
12、> 設(shè)計原理</b></p><p><b> 圖1</b></p><p> 如圖1所示,當(dāng)外界溫度變化時,熱敏電阻的阻值隨著發(fā)生變化,熱敏電阻上分得的電壓發(fā)生變化,通過單片機(jī)的IO口和集成AD可以獲得熱敏電阻的電壓值為V,通過計算得出熱敏電阻的阻值變化規(guī)律R=V*R1/(5-V)。由于熱敏電阻的阻值與溫度有表1的對應(yīng)關(guān)系,將各對應(yīng)值用數(shù)組形
13、式寫入程序,通過查表便可以得到此時外界的溫度值。</p><p><b> 表1</b></p><p><b> 硬件電路</b></p><p><b> 圖2</b></p><p><b> 元器件選用及連接</b></p>
14、<p><b> 表2</b></p><p> 系統(tǒng)所用的元器件及說明如表2所示。引腳連接安排為:P1.1引腳接熱敏電阻,RST引腳接復(fù)位電路,X1、X2連接用來起振,P2.7-P2.4 引腳接數(shù)碼管的1、2、3、4,P0.0-P0.7引腳接數(shù)碼管的a b c d e f g h和10K的排阻。</p><p><b> 4、硬件選用&l
15、t;/b></p><p><b> ?、?熱敏電阻的選用</b></p><p> 熱敏電阻器的熱敏電阻有電阻值隨溫度升高而升高的正溫度系數(shù)(簡稱PTC)熱敏電阻和電阻值隨溫度升高而降低的負(fù)溫度系數(shù)(簡稱NTC)熱敏電阻。 </p><p> NTC熱敏電阻器,是一種以過渡金屬氧化物為主要原材料,采用電子陶瓷工藝制成的熱敏半導(dǎo)體陶瓷
16、組件。這種組件的電阻值隨溫度升高而降低,利用這一特性可制成測溫、溫度補(bǔ)償和控溫組件,又可以制成功率型組件,抑制電路的浪涌電流。 </p><p> 電阻溫度特性可以近似地用下式來表示: R= R*EXP[B*(1/T-1/T)] 式中:RT、RN分別表示NTC在溫度T(K)和額定額定溫度TN (K)下的電阻值,單位Ω,T、TN 為溫度,單位K(TN(k)=273.15+TN(℃))。B,稱作B值,NTC熱敏電阻
17、特定的材料常數(shù)(Beta)。由于B值同樣是隨溫度而變化的,因此NTC熱敏電阻的實際特性,只能粗略地用指數(shù)關(guān)系來描述,所以這種方法只能以一定的精度來描述額定溫度或電阻值附近的有限的范圍。 </p><p> 電阻-溫度關(guān)系: NTC熱敏電阻器CWF2-502F3950各溫度點的電阻值,即電阻-溫度關(guān)系表。NTC熱敏電阻器CWF2-502F3950的測溫范圍為[-55℃,125℃],其電阻值的變化范圍為[25006
18、2Ω,242.64Ω]。如表1所示,列舉了2-42攝氏度的電阻-溫度關(guān)系。</p><p> ?、?STC12C5A60S2單片機(jī)的選用及單片機(jī)資源安排</p><p> 2.1 STC12C5A60S2概述</p><p> 本次課程設(shè)計核心元件是單片機(jī)STC12C5A60S2,下面對STC12C5A60S2做簡單的概述。</p><p&g
19、t; 2.1.1 基本構(gòu)造</p><p> STC12C5A60S2單片機(jī)中包含中央處理器(CPU)、程序存儲器(Flash)、數(shù)據(jù)存儲區(qū)(SRAM)、定時/計數(shù)器、UART串口、串口2、I/O接口、高速A/D轉(zhuǎn)換、SPI接口、PCA、看門狗及片內(nèi)R/C振動器和外部晶振等模塊。STC12C5A60S2系列單片機(jī)幾乎包含了數(shù)據(jù)采集和控制中所需的所有單元模塊,可稱得上一個片內(nèi)系統(tǒng)。</p><
20、;p> 單片機(jī)STC12C5A60S2的基本構(gòu)造如圖3所示:</p><p><b> 圖3</b></p><p> 2.1.2 性能特點</p><p> 60KB的Flash片內(nèi)程序存儲器、256字節(jié)的內(nèi)部隨機(jī)存取數(shù)據(jù)存儲器(RAM)、1024字節(jié)的外部存儲器、1K字節(jié)的數(shù)據(jù)Flash存儲(EEPROM)、ISP(在系統(tǒng)可編
21、程)/IAP(在應(yīng)用可編程)、 看門狗、內(nèi)部集成MAX810專用復(fù)位電路、外部掉電檢測電路、時鐘源:外部精度晶體/時鐘,內(nèi)部R/C振蕩器、4個16位定時器、3個時鐘輸出口、7個外部中斷I/O口、PWM(2路)/PCA(可編程計數(shù)器陣列,2路)、A/D轉(zhuǎn)換,10位精度ADC,共8路.</p><p> 2.1.3 STC12C5A60S2單片機(jī)資源利用</p><p> 本次課程設(shè)計,主
22、要應(yīng)用了STC12C5A60S2單片機(jī)中中央處理器(CPU)、高速A/D轉(zhuǎn)換、外部晶振等模塊。</p><p><b> 第四部分</b></p><p> C語言程序流程圖及代碼 </p><p><b> 主函數(shù)流程圖:</b></p><p><b
23、> AD中斷流程圖:</b></p><p><b> 圖</b></p><p><b> 數(shù)碼管顯示 </b></p><p><b> 系統(tǒng)C程序代碼:</b></p><p> Config.h代碼:</p><p>
24、 #ifndef _CONFIG_H_</p><p> #define _CONFIG_H_</p><p> #include <STC.h></p><p> #define FOSC 12000000L</p><p> #define ADC_POWER 0x80</p><p>
25、 #define ADC_FLAG0x10</p><p> #define ADC_START0x08</p><p> #define ADC_SPEEDLL0x00</p><p> #define ADC_SPEEDL0x20</p><p> #define ADC_SPEEDH0x40</p>&
26、lt;p> #define ADC_SPEEDHH0x60</p><p> #define ADC_POSITION 1//AD通道位置0-7</p><p> #define NUX_DATA P0//數(shù)碼管段選</p><p> #define NUX_SEGP2//數(shù)碼管位選</p><p>
27、 void Delay_ms(unsigned int ms);//延時函數(shù)</p><p> void InitADC(); //初始化AD功能</p><p><b> #endif</b></p><p><b> Main.c代碼:</b></p><p> #in
28、clude "config.h"</p><p> unsigned int code Ttable[42][2]={2,257, 3,246, 4,236, 5,225, 6,216, 7,207 8,198 9,190 10,182 11,174 12,167 13,160 14,154 15,148 16,142 17,136 18,131 19,126 20,121 21,116 2
29、2,112 23,107 24,103 25,100 26,96 27,92 28,89 29,86 30,82 31,80 32,77 33,74 34,71 35,69 36,66 37,64 38,62 39,60 40,58 41,56 42,54 43,52 }; // 此數(shù)組保存熱敏電阻的溫度值(從2-43攝氏度),超出無效</p><p> unsigned char code TableDA
30、TA[13]={0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D,0x7D, 0x07, 0x7F, 0x6F/*0-9*/, 0x00/*無*/, 0x02, 0x39,}</p><p> //數(shù)碼管數(shù)字0-9</p><p> unsigned char code TableSEG [ 4] = {0xEF,0xDF,0xBF,0x7F};</p>
31、<p> //數(shù)碼管位置0-3</p><p> unsigned char show[4];</p><p><b> //定義溫度全局 </b></p><p> /********************************************</p><p> ** 函數(shù)名稱:
32、void Delay_ms(unsigned int ms)</p><p> ** 功能描述: 延時函數(shù)</p><p> ** 輸 入: unsigned int ms 延時時間</p><p> ** 輸 出: 無</p><p> ** 全局變量: 無</p><p> ** 調(diào)用模塊: 無
33、</p><p> **********************************************/</p><p> void Delay_ms(unsigned int ms)</p><p><b> {</b></p><p> for(;ms>0;ms--);</p>
34、<p><b> }</b></p><p> /*****************************************************</p><p> ** 函數(shù)名稱: void adc_isr() interrupt 5</p><p> ** 功能描述: AD中斷,獲取AD數(shù)據(jù)</p>
35、<p> ** 輸 入: 無</p><p> ** 輸 出: show</p><p> ** 全局變量: show</p><p> ** 調(diào)用模塊: Delay_ms</p><p> ********************************************************/<
36、/p><p> void Adc_isr() interrupt 5</p><p><b> {</b></p><p> unsigned char i;</p><p> unsigned int m;</p><p> m = ADC_RES;</p><p>
37、; //計算此時熱敏電阻阻值</p><p> m = (100*m)/(255-m);</p><p> //計算此時的溫度值</p><p> for(i=41;i<42;i--)</p><p><b> {</b></p><p> if(m >= Ttable[i
38、][1] && m < Ttable[i-1][1])</p><p><b> {</b></p><p> show[0] = (Ttable[i][0]+1)/10;</p><p> show[1] = (Ttable[i][0]+1)%10;</p><p> show[2] =
39、11;</p><p> show[3] = 12;</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p> ADC_CONTR = ADC_POWER
40、|ADC_SPEEDLL|ADC_START|ADC_POSITION;//重新使能AD轉(zhuǎn)換</p><p><b> }</b></p><p> /******************************************************</p><p> ** 函數(shù)名稱: void InitADC()</
41、p><p> ** 功能描述: 初始化AD功能</p><p> ** 輸 入: 無</p><p> ** 輸 出: 無</p><p> ** 全局變量: 無</p><p> ** 調(diào)用模塊: Delay_ms</p><p> **********************
42、***********************************/</p><p> void InitADC()</p><p><b> {</b></p><p> P1ASF = 0xff;</p><p> ADC_RES = 0;</p><p> ADC_CONTR
43、= ADC_POWER|ADC_SPEEDLL|ADC_START|1;//使能P11為AD輸入</p><p> IE = 0xa0; </p><p> Delay_ms(20);</p><p><b> }</b></p><p><b> main()</b></p
44、><p><b> {</b></p><p> unsigned char i,j;</p><p> InitADC();</p><p><b> while(1)</b></p><p><b> {</b></p><
45、p> for(j=255;j>0;j--)</p><p><b> {</b></p><p> for(i=0;i<4;i++)</p><p><b> //數(shù)碼管掃描</b></p><p><b> {</b></p>&l
46、t;p> NUX_SEG = TableSEG[3-i];</p><p> NUX_DATA = TableDATA[show[i]];</p><p> Delay_ms(100);</p><p> NUX_DATA = 0x00;</p><p><b> }</b></p>
47、<p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> 第五部分</b></p><p><b> 系統(tǒng)調(diào)試與儀器使用</b></p
48、><p> 1、系統(tǒng)調(diào)試的儀器選用及其使用</p><p><b> 如表3所示</b></p><p><b> 表3</b></p><p> 2、系統(tǒng)調(diào)試及調(diào)試故障的檢測與分析</p><p> 第一步 用下載程序的電路板和電腦給單片機(jī)下載編寫好的程序</p
49、><p> 第二步 將下載好的單片機(jī)安裝在設(shè)計的電路板上,給電路板接上5V的電源(接上電源后,數(shù)碼管沒有顯示。分析:電路出現(xiàn)短路或者斷路或者連線有誤 ;檢測:用萬用表測量單片機(jī)正負(fù)引腳有電壓,測量各引腳之間的電阻,核對電路圖及其電路板上的連線,一切正常。分析:電路板焊接無誤,程序出現(xiàn)問題)</p><p> 第三步 在電腦上修改原有的程序,并且將程序下載到下載電路板上,用下載電路板上的熱敏
50、電阻測溫系統(tǒng)進(jìn)行檢測(修改程序后,數(shù)碼管有顯示,但是沒有規(guī)律 分析:程序出現(xiàn)錯誤)</p><p> 第四步 在電腦上繼續(xù)修改原有的程序,并且將程序下載到下載電路板上,用下載電路板上的熱敏電阻測溫系統(tǒng)進(jìn)行檢測(修改程序后,數(shù)碼管有顯示,且運行正常)</p><p> 第五步 將修改好的程序用下載程序的電路板和電腦下載到單片機(jī)(數(shù)碼管顯示正常,但是與下載電路板上的熱敏電阻測溫系統(tǒng)有1攝氏
51、度的溫度差距,并且顯示的溫度數(shù)字不停地左右跳動 分析:實際電路使用的電阻和程序里給定的電阻有差距,A/D轉(zhuǎn)換掃描的頻率太快;檢測:修改程序,將溫度計算公式加1,減小A/D轉(zhuǎn)換掃描的頻率)</p><p> 第六步 將修改好的程序用下載程序的電路板和電腦下載到單片機(jī)(成功正確顯示)</p><p><b> 第六部分</b></p><p>
52、<b> 測試數(shù)據(jù)與結(jié)果分析</b></p><p><b> 1、測試數(shù)據(jù)</b></p><p> ?、僮屧摕崦綦娮铚y溫系統(tǒng)處于空氣中時,溫度顯示為12攝氏度左右</p><p> ?、诋?dāng)在該熱敏電阻上用吹風(fēng)機(jī)吹冷風(fēng)時,溫度顯示9攝氏度左右</p><p> ?、郛?dāng)在該熱敏電阻上用吹風(fēng)機(jī)吹熱
53、風(fēng)時,溫度顯示25攝氏度左右</p><p> ?、苡檬钟|摸該熱敏電阻時,溫度顯示17攝氏度左右</p><p><b> 2、結(jié)果分析</b></p><p> 該熱敏電阻測溫系統(tǒng)能夠正常工作,且靈敏度比較高,但是顯示溫度不太穩(wěn)定,會有數(shù)據(jù)的稍微跳動,總體來說是合格的。</p><p><b> 第七部
54、分</b></p><p><b> 使用說明書</b></p><p><b> 1、使用說明</b></p><p> 該熱敏電阻測溫系統(tǒng)測量溫度在2-42攝氏度范圍內(nèi),超出范圍則無效,主要用于室內(nèi)測溫。該熱敏電阻測溫系統(tǒng)能顯示溫度數(shù)據(jù)和溫度單位符號,但是只能顯示溫度數(shù)據(jù)的整數(shù)部分,所以不能用于高精度
55、的溫度測量。該熱敏電阻測溫系統(tǒng)所接電源為5V,切記不可接12V等電源,以免燒壞單片機(jī)。</p><p> 2、系統(tǒng)軟件和應(yīng)用軟件列表</p><p> 主要用到的軟件有ISPLAY,PROTEUS,KEIL4</p><p><b> 3、參考資料</b></p><p> [1] 楊路明.C語言程序設(shè)計教程.北
56、京郵電大學(xué)出版社</p><p> [2] 童詩白.模擬電子技術(shù)基礎(chǔ).高等教育出版社</p><p> [3] 閻石.數(shù)字技術(shù)基礎(chǔ)第五版.高等教育出版社</p><p> 4、小組成員及所做的工作</p><p> xxx:負(fù)責(zé)電路焊接及電路調(diào)試與檢測</p><p> xxx:負(fù)責(zé)程序編寫及電路調(diào)試與檢測&
57、lt;/p><p> xxx:負(fù)責(zé)報告編寫及電路調(diào)試與檢測</p><p><b> 第八部分</b></p><p><b> 總結(jié)</b></p><p> 這次課程設(shè)計將單片機(jī)與傳感器進(jìn)行了結(jié)合跟進(jìn)一步想我展示了單片機(jī)得強(qiáng)大功能此外還接觸了模數(shù)轉(zhuǎn)換器件,了解了有關(guān)AD轉(zhuǎn)換的知識,同時也溫習(xí)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計--熱敏電阻測溫顯示系統(tǒng)
- 熱敏電阻測溫顯示系統(tǒng)課程設(shè)計
- 熱敏電阻及測溫系統(tǒng)課程設(shè)計
- 熱敏電阻測溫課程設(shè)計課案
- 熱敏電阻測溫課程設(shè)計課案
- 基于單片機(jī)熱敏電阻溫度采集
- 單片機(jī)課程設(shè)計論文 基于熱敏電阻的數(shù)字溫度計設(shè)計
- 單片機(jī)課程設(shè)計-- 簡易測溫系統(tǒng)
- 基于熱敏電阻的數(shù)字溫度計課程設(shè)計
- 單片機(jī)課程設(shè)計--電容、電阻參數(shù)單片機(jī)測試系統(tǒng)的設(shè)計
- ntc熱敏電阻
- 傳感器課程設(shè)計--基于熱敏電阻的溫度測量
- 熱敏電阻傳感器溫度檢測電路設(shè)計-課程設(shè)計
- 熱敏電阻傳感器溫度檢測電路設(shè)計 課程設(shè)計
- 基于單片機(jī)的電阻爐課程設(shè)計
- 基于熱敏電阻的數(shù)字溫度計課程設(shè)計說明
- 單片機(jī)課程設(shè)計-單片機(jī)課程設(shè)計---電子時鐘
- 熱敏電阻檢驗標(biāo)準(zhǔn)
- 單片機(jī)課程設(shè)計
- 單片機(jī)課程設(shè)計
評論
0/150
提交評論