找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 6386|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

基于STM32單片機(jī)的內(nèi)置溫度采集系統(tǒng)設(shè)計(jì)文檔

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:544367 發(fā)表于 2019-12-18 16:55 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
1.1功能分析
1.1.1功能分析

當(dāng)小車溫度降在警報(bào)溫度以下,LCD屏顯示“zheng chang”小車正常轉(zhuǎn)動(dòng)。

  當(dāng)芯片達(dá)到一定溫度時(shí)候發(fā)出報(bào)警,Led燈亮,LCD屏顯示“wen du gao !”小車停止轉(zhuǎn)動(dòng);

  1.1.2工作原理

STM32單片機(jī)內(nèi)置了一個(gè)溫度傳感器,這個(gè)溫度傳感器產(chǎn)生一個(gè)隨溫度性變化的電壓,測(cè)量范圍為-40 - +125攝氏度。在內(nèi)部被鏈接到輸出通道ADC_IN16上,用于將傳感器的輸出轉(zhuǎn)換成數(shù)字量。


第二章 硬件設(shè)計(jì)
2.1設(shè)計(jì)原理

圖2.1溫度傳感器結(jié)構(gòu)圖

STM32單片機(jī)內(nèi)置了一個(gè)溫度傳感器,這個(gè)溫度傳感器產(chǎn)生一個(gè)隨溫度性變化的電壓,測(cè)量范圍為-40 - +125攝氏度。在內(nèi)部被鏈接到輸出通道ADC_IN16上,用于將傳感器的輸出轉(zhuǎn)換成數(shù)字量。溫度傳感器模擬輸入的采樣時(shí)間需大于2.2us。在STM32單片機(jī)教學(xué)開(kāi)發(fā)板上,模擬部分的供電電源VDDA接3.3V,模擬地與系統(tǒng)GND相連。

若要使用STM32自帶的溫度傳感器,需設(shè)置ADC控制器2(ADC_CR2)中的TSVREFE控制位,以使能溫度傳感器Vsense輸入通道ADC_IN16和內(nèi)部參考電壓Vrefint輸入通道ADC_IN17。通過(guò)固件庫(kù)函數(shù)來(lái)完成這兩個(gè)通道的使能。

當(dāng)fADC = 14MHz,采樣時(shí)間設(shè)為239.5個(gè)周期時(shí),則采樣時(shí)間位39.5/17.1us,這是推薦的采樣時(shí)間。實(shí)際系統(tǒng)時(shí)鐘往往為72MHz,fADC = 12MHz,可設(shè)采樣時(shí)間位71.5個(gè)周期。

ADC_IN16通道上讀出溫度傳感器電壓與實(shí)際溫度的對(duì)應(yīng)關(guān)系如下:

Temperature = ((V25 - Vsense) / Avg_Slope)+25

Temoerature = (14.3 – 14.0)*1000/4.3 + 25 = 31.9

由于STM32單片機(jī)的ADC是12位的,模擬部分電路的供應(yīng)電源VDDA接3.3V,所以溫度傳感器的電壓值與轉(zhuǎn)換后數(shù)字量關(guān)系為:

V = AD_value*3.3 / 4095

2.2設(shè)計(jì)的結(jié)構(gòu)圖

圖2.2 結(jié)構(gòu)框圖

圖2.3。保叮埃睱CD與STM32單片機(jī)連接圖

              按照原進(jìn)行連線得到下圖實(shí)物圖:

圖2.4 實(shí)物圖

第三章 軟件設(shè)計(jì)
3.1
軟件設(shè)計(jì)原理

利用STM32單片機(jī)內(nèi)置溫度傳感器檢測(cè)環(huán)境溫度的步驟如下:

  • 初始化ADC:選擇ADC_IN16輸入通道,設(shè)置采樣時(shí)間等參數(shù)。
  • 設(shè)置控制寄存器2(ADC_CR2)中的TSVREFE位,開(kāi)啟內(nèi)置溫度傳感器和內(nèi)部參考電壓通道。
  • 設(shè)置控制寄存器2(ADC_CR2)中的ADNO位,軟件啟動(dòng)ADC轉(zhuǎn)換,也可以用外部觸發(fā)。
  • 讀取寄存器(ADC_DR)中的結(jié)果,如果有必要,可進(jìn)行數(shù)字濾波。
  • 計(jì)算溫度值。
  • 判斷測(cè)量溫度與設(shè)定值的大小關(guān)系。若測(cè)量值小于設(shè)定值,則小車正常運(yùn)行且PE4輸出高電平LCD顯示zheng chang;若測(cè)量值大于設(shè)定值,則只有PE3輸出低電平,LCD顯示wen du gao !。
3.2軟件設(shè)計(jì)程圖
圖3.2設(shè)計(jì)流程圖
3.3主要代碼

 調(diào)試運(yùn)行結(jié)果

經(jīng)過(guò)一次次的調(diào)試與改進(jìn),我們將程序編譯下載操作,最終結(jié)果如下顯示:

4.1串口顯示出當(dāng)前芯片的溫度為40.73

圖4.1 串口顯示圖

4.2當(dāng)我們?cè)O(shè)定溫度為50時(shí),這是我們的溫度是不超過(guò)我們?cè)O(shè)定的警戒值,所以LCD顯示“zhang chang”電機(jī)正常轉(zhuǎn)動(dòng)。

圖4.2溫度未達(dá)到警戒值時(shí)狀態(tài)圖
4.3當(dāng)我們?cè)O(shè)定溫度為20時(shí),這是我們的溫度是超過(guò)我們?cè)O(shè)定的警戒值,所以LCD顯示“wen。洌酢。纾幔铩。 边@時(shí)我們LED警示燈常亮,電機(jī)不轉(zhuǎn)。

圖4.3溫度達(dá)到警戒值時(shí)狀態(tài)圖

 實(shí)驗(yàn)總結(jié)

利用STM32單片機(jī)內(nèi)部溫度傳感器監(jiān)測(cè)溫度的程序運(yùn)行結(jié)果如圖,實(shí)際從測(cè)量出來(lái)的溫度值超過(guò)正常值太多,找到以下原因:

              1、ADC的參考電壓不穩(wěn)定,這是測(cè)控問(wèn)題常見(jiàn)問(wèn)題;

              2、使能ADC前未做校準(zhǔn),校準(zhǔn)可以防止內(nèi)部電容器的不一致性問(wèn)題;

              3、ADC采樣轉(zhuǎn)換過(guò)程中受到干擾

圖5.1 串口顯示圖


心得體會(huì)

在本次ARM課設(shè)—-基于ARM的溫度采集系統(tǒng)中學(xué)到了一些很重要的東西,那就是如何從理論到實(shí)踐的轉(zhuǎn)化,怎樣將我們所學(xué)到的知識(shí)運(yùn)用到實(shí)踐中去。在大學(xué)課堂的學(xué)習(xí)只是給我們灌輸專業(yè)知識(shí),而我們應(yīng)把所學(xué)的知識(shí)應(yīng)用到我們現(xiàn)實(shí)的生活中去。通過(guò)此次設(shè)計(jì),充分認(rèn)識(shí)到動(dòng)手實(shí)踐的重要性,在幾基本的實(shí)驗(yàn)課以及本次課設(shè)中都會(huì)出現(xiàn)一些問(wèn)題,而我們正是要發(fā)現(xiàn)這些問(wèn)題,去解決他們。也同時(shí)讓我感受到ARM在生活中的作用以及一些應(yīng)用拓展。讓我學(xué)到很多,不僅僅來(lái)自課本中的知識(shí)。



以上的Word格式文檔51黑下載地址:

文檔.doc (10.03 MB, 下載次數(shù): 20)


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表