1.1功能分析
1.1.1功能分析當(dāng)小車溫度降在警報溫度以下,LCD屏顯示“zheng chang”小車正常轉(zhuǎn)動。 當(dāng)芯片達到一定溫度時候發(fā)出報警,Led燈亮,LCD屏顯示“wen du gao !”小車停止轉(zhuǎn)動; 1.1.2工作原理STM32單片機內(nèi)置了一個溫度傳感器,這個溫度傳感器產(chǎn)生一個隨溫度性變化的電壓,測量范圍為-40 - +125攝氏度。在內(nèi)部被鏈接到輸出通道ADC_IN16上,用于將傳感器的輸出轉(zhuǎn)換成數(shù)字量。
第二章 硬件設(shè)計
2.1設(shè)計原理
圖2.1溫度傳感器結(jié)構(gòu)圖 STM32單片機內(nèi)置了一個溫度傳感器,這個溫度傳感器產(chǎn)生一個隨溫度性變化的電壓,測量范圍為-40 - +125攝氏度。在內(nèi)部被鏈接到輸出通道ADC_IN16上,用于將傳感器的輸出轉(zhuǎn)換成數(shù)字量。溫度傳感器模擬輸入的采樣時間需大于2.2us。在STM32單片機教學(xué)開發(fā)板上,模擬部分的供電電源VDDA接3.3V,模擬地與系統(tǒng)GND相連。 若要使用STM32自帶的溫度傳感器,需設(shè)置ADC控制器2(ADC_CR2)中的TSVREFE控制位,以使能溫度傳感器Vsense輸入通道ADC_IN16和內(nèi)部參考電壓Vrefint輸入通道ADC_IN17。通過固件庫函數(shù)來完成這兩個通道的使能。 當(dāng)fADC = 14MHz,采樣時間設(shè)為239.5個周期時,則采樣時間位39.5/17.1us,這是推薦的采樣時間。實際系統(tǒng)時鐘往往為72MHz,fADC = 12MHz,可設(shè)采樣時間位71.5個周期。 ADC_IN16通道上讀出溫度傳感器電壓與實際溫度的對應(yīng)關(guān)系如下: Temperature = ((V25 - Vsense) / Avg_Slope)+25 Temoerature = (14.3 – 14.0)*1000/4.3 + 25 = 31.9 由于STM32單片機的ADC是12位的,模擬部分電路的供應(yīng)電源VDDA接3.3V,所以溫度傳感器的電壓值與轉(zhuǎn)換后數(shù)字量關(guān)系為: V = AD_value*3.3 / 4095 2.2設(shè)計的結(jié)構(gòu)圖
圖2.2 結(jié)構(gòu)框圖 
圖2.3 1602LCD與STM32單片機連接圖 最終按照原理進行連線得到下圖實物圖:
圖2.4 實物圖 第三章 軟件設(shè)計
3.1軟件設(shè)計原理利用STM32單片機內(nèi)置溫度傳感器檢測環(huán)境溫度的步驟如下: - 初始化ADC:選擇ADC_IN16輸入通道,設(shè)置采樣時間等參數(shù)。
- 設(shè)置控制寄存器2(ADC_CR2)中的TSVREFE位,開啟內(nèi)置溫度傳感器和內(nèi)部參考電壓通道。
- 設(shè)置控制寄存器2(ADC_CR2)中的ADNO位,軟件啟動ADC轉(zhuǎn)換,也可以用外部觸發(fā)。
- 讀取寄存器(ADC_DR)中的結(jié)果,如果有必要,可進行數(shù)字濾波。
- 計算溫度值。
- 判斷測量溫度與設(shè)定值的大小關(guān)系。若測量值小于設(shè)定值,則小車正常運行且PE4輸出高電平,LCD顯示”zheng chang”;若測量值大于設(shè)定值,則只有PE3輸出低電平,LCD顯示”wen du gao !”。
3.2軟件設(shè)計流程圖圖3.2設(shè)計流程圖 3.3主要代碼
第四章 調(diào)試與運行結(jié)果經(jīng)過一次次的調(diào)試與改進,我們將程序編譯下載操作,最終結(jié)果如下顯示: 4.1串口顯示出當(dāng)前芯片的溫度為40.73 圖4.1 串口顯示圖 4.2當(dāng)我們設(shè)定溫度為50時,這是我們的溫度是不超過我們設(shè)定的警戒值,所以LCD顯示“zhang chang”電機正常轉(zhuǎn)動。
IMG_20191217_110710.jpg (2.59 MB, 下載次數(shù): 60)
下載附件
2019-12-18 16:53 上傳
圖4.2溫度未達到警戒值時狀態(tài)圖 4.3當(dāng)我們設(shè)定溫度為20時,這是我們的溫度是超過我們設(shè)定的警戒值,所以LCD顯示“wen du gao !”這時我們LED警示燈常亮,電機不轉(zhuǎn)。

圖4.3溫度達到警戒值時狀態(tài)圖
第五章 實驗總結(jié)利用STM32單片機內(nèi)部溫度傳感器監(jiān)測溫度的程序運行結(jié)果如圖,實際從測量出來的溫度值超過正常值太多,找到以下原因: 1、ADC的參考電壓不穩(wěn)定,這是測控問題常見問題; 2、使能ADC前未做校準(zhǔn),校準(zhǔn)可以防止內(nèi)部電容器的不一致性問題; 3、ADC采樣轉(zhuǎn)換過程中受到干擾 圖5.1 串口顯示圖
第六章 心得體會在本次ARM課設(shè)—-基于ARM的溫度采集系統(tǒng)中學(xué)到了一些很重要的東西,那就是如何從理論到實踐的轉(zhuǎn)化,怎樣將我們所學(xué)到的知識運用到實踐中去。在大學(xué)課堂的學(xué)習(xí)只是給我們灌輸專業(yè)知識,而我們應(yīng)把所學(xué)的知識應(yīng)用到我們現(xiàn)實的生活中去。通過此次設(shè)計,充分認(rèn)識到動手實踐的重要性,在幾基本的實驗課以及本次課設(shè)中都會出現(xiàn)一些問題,而我們正是要發(fā)現(xiàn)這些問題,去解決他們。也同時讓我感受到ARM在生活中的作用以及一些應(yīng)用拓展。讓我學(xué)到很多,不僅僅來自課本中的知識。
IMG_20191217_110549.jpg (1.19 MB, 下載次數(shù): 59)
下載附件
2019-12-18 16:53 上傳
IMG_20191217_110430.jpg (1.12 MB, 下載次數(shù): 57)
下載附件
2019-12-18 16:53 上傳
以上的Word格式文檔51黑下載地址:
文檔.doc
(10.03 MB, 下載次數(shù): 20)
2019-12-20 02:23 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|