版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第七章 STM32 的 A/D 轉(zhuǎn)換模塊,7.1A/D 模塊主要技術(shù)指標(biāo)及選型,A/D 轉(zhuǎn)換是將輸入模擬信號(hào)轉(zhuǎn)換成相對(duì)應(yīng)的數(shù)字信號(hào)輸出。常用的 A/D 轉(zhuǎn)換芯片根據(jù)其轉(zhuǎn)換原理分為如下幾種類型:,?積分型,?逐次比較型,?并行比較型/串并行比較型,???? 調(diào)制型,7.1A/D 模塊主要技術(shù)指標(biāo)及選型,A/D 轉(zhuǎn)換器主要技術(shù)指標(biāo)分析,1.轉(zhuǎn)換范圍UFSR 2.分辨率3.絕對(duì)精度4.轉(zhuǎn)換時(shí)間和轉(zhuǎn)換率5.量化誤差6.偏移誤差7.
2、滿刻度誤差8.線性度,不同類型的 ADC 轉(zhuǎn)換器的結(jié)構(gòu)、轉(zhuǎn)換原理和性能指標(biāo)方面的差異非常大。表 7.1 列出了常用類型的 ADC 的主要特點(diǎn)和應(yīng)用范圍。,7.1A/D 模塊主要技術(shù)指標(biāo)及選型,A/D 轉(zhuǎn)換器選型技巧及注意事項(xiàng),7.1A/D 模塊主要技術(shù)指標(biāo)及選型,1.ADC 選用依據(jù)ADC 的選用原則主要考慮如下幾點(diǎn):① ADC 用于什么系統(tǒng)② 輸入的模擬信號(hào)類型③ 后續(xù)電路對(duì) ADC 輸出數(shù)字邏輯電平的要求
3、④ 系統(tǒng)工作在動(dòng)態(tài)條件還是靜態(tài)條件、帶寬要求、要求 ADC 的轉(zhuǎn)換時(shí)間、采樣速率⑤ 基準(zhǔn)電壓源的來源。⑥ 成本及芯片來源等因數(shù),,2.與 ADC 配套使用其他芯片的選用依據(jù)為了配合 ADC 的使用,一般在 ADC 的外圍還需要添加一些其他芯片,常見的有多路模擬開關(guān)電路、采樣/保持器和運(yùn)算放大器等。,7.1A/D 模塊主要技術(shù)指標(biāo)及選型,7.1A/D 模塊主要技術(shù)指標(biāo)及選型,3.ADC 選型ADC 芯片選型(DAC 芯
4、片選型)可以通過訪問下面幾大公司的網(wǎng)站選擇所需要的 ADC。ADI 公司(美國模擬器件公司),http://www.analog.comTI 公司(德州儀器),http://focus.ti.com.cnLinear Technology 公司(凌特),http://www.linear.com.cnMaxim 公司(美信),http://maxim-ic.com.cnNational Semiconductor 公司(國家半
5、導(dǎo)體),http://www.national.com,4. 基準(zhǔn)電壓源的選擇基準(zhǔn)電壓源提供穩(wěn)定的基準(zhǔn)電壓,要求什么樣的基準(zhǔn)電壓源指標(biāo)取決于具體應(yīng)用。作為電路設(shè)計(jì)的一個(gè)關(guān)鍵因素,基準(zhǔn)電壓源的選擇需要考慮多方面的問題并做出折。兩種常見的基準(zhǔn)源是齊納和帶隙基準(zhǔn)源。齊納基準(zhǔn)源通常采用兩端并聯(lián)拓?fù)洌粠痘鶞?zhǔn)源通常采用三端串聯(lián)拓?fù)洹?7.1A/D 模塊主要技術(shù)指標(biāo)及選型,7.1A/D 模塊主要技術(shù)指標(biāo)及選型,5. 基準(zhǔn)電壓源的選擇需要注意
6、的一些問題,(1)功耗(2)輸出和吸入電流(3)溫漂(4)噪聲(5)輸出電壓溫度遲滯(6)長期穩(wěn)定性,7.2 STM32A/D 轉(zhuǎn)換模塊,STM32芯片內(nèi)部集成的12位ADC:是一種逐次逼近型模擬數(shù)字轉(zhuǎn)換器。具有18個(gè)通道可測量16個(gè)外部和2個(gè)內(nèi)部信號(hào)源。 ADC系統(tǒng)各通道的A/D轉(zhuǎn)換可以單次、連續(xù)、掃描或間斷模式執(zhí)行。ADC 的結(jié)果可以左對(duì)齊或右對(duì)齊方式存儲(chǔ)在 16 位數(shù)據(jù)寄存器中。模擬看門狗特性允許應(yīng)用程序檢測輸入
7、電壓是否超出用戶定義的高/低閥值。 ADC 的輸入時(shí)鐘不得超過14MHz,它是由PCLK2 經(jīng)分頻產(chǎn)生。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC 主要特征● 12 位分辨率● 轉(zhuǎn)換結(jié)束、注入轉(zhuǎn)換結(jié)束和發(fā)生模擬看門狗事件時(shí)產(chǎn)生中斷● 單次和連續(xù)轉(zhuǎn)換模式● 從通道 0 到通道 n 的自動(dòng)掃描模式● 自校準(zhǔn)● 帶內(nèi)嵌數(shù)據(jù)一致性的數(shù)據(jù)對(duì)齊● 采樣間隔可以按通道分別編程● 規(guī)則轉(zhuǎn)換和注入轉(zhuǎn)換均有外部觸發(fā)選項(xiàng)
8、● 間斷模式● 雙重模式(帶 2 個(gè)或以上 ADC 的器件)● ADC 供電要求:2.4V 到 3.6V● ADC 輸入范圍:VREF- ≤ VIN ≤ VREF+● 規(guī)則通道轉(zhuǎn)換期間有 DMA 請(qǐng)求產(chǎn)生,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC 功能描述,圖為一個(gè) ADC 模塊的框圖,下表 為 ADC 引腳的說明,ADC 引腳,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC 開關(guān)控制,通過設(shè)置 ADC_CR2 寄
9、存器的 ADON 位可給 ADC 上電。當(dāng)?shù)谝淮卧O(shè)置 ADON 位時(shí),它將 ADC 從斷電狀態(tài)下喚醒。 ADC 上電延遲一段時(shí)間后(tSTAB),再次設(shè)置 ADON 位時(shí)開始進(jìn)行轉(zhuǎn)換。 通過清除 ADON 位可以停止轉(zhuǎn)換,并將 ADC 置于斷電模式。在這個(gè)模式中,ADC 幾乎不耗電(僅幾個(gè) μA)。,ADC 時(shí)鐘,由時(shí)鐘控制器提供的 ADCCLK 時(shí)鐘和 PCLK2(APB2 時(shí)鐘)同步。RCC 控制器為 ADC時(shí)鐘提供一個(gè)專用的可編
10、程預(yù)分頻器,詳見小容量、中容量和大容量產(chǎn)品的復(fù)位和時(shí)鐘控制(RCC)。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC通道選擇,有 16 個(gè)多路通道??梢园艳D(zhuǎn)換組織成兩組:規(guī)則組和注入組。在任意多個(gè)通道上以任意順序進(jìn)行的一系列轉(zhuǎn)換構(gòu)成成組轉(zhuǎn)換。● 規(guī)則組由多達(dá)16個(gè)轉(zhuǎn)換組成?!?注入組由多達(dá) 4 個(gè)轉(zhuǎn)換組成。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC轉(zhuǎn)換模式,單次轉(zhuǎn)換模式,單次轉(zhuǎn)換模式下,ADC 只執(zhí)行一次轉(zhuǎn)換。該模式既可通
11、過設(shè)置 ADC_CR2 寄存器的ADON 位(只適用于規(guī)則通道)啟動(dòng)也可通過外部觸發(fā)啟動(dòng)(適用于規(guī)則通道或注入通道),這時(shí) CONT 位為 0。,7.2 STM32A/D 轉(zhuǎn)換模塊,連續(xù)轉(zhuǎn)換模式,在連續(xù)轉(zhuǎn)換模式中,當(dāng)前面 ADC 轉(zhuǎn)換一結(jié)束馬上就啟動(dòng)另一次轉(zhuǎn)換。此模式可通過外部觸發(fā)啟動(dòng)或通過設(shè)置 ADC_CR2 寄存器上的 ADON 位啟動(dòng),此時(shí) CONT 位是 1。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC掃描模式,此模式用來掃
12、描一組模擬通道。掃描模式可通過設(shè)置 ADC_CR1 寄存器的 SCAN 位來選擇。一旦這個(gè)位被設(shè)置,ADC 掃描所有被 ADC_SQRX 寄存器(對(duì)規(guī)則通道)或ADC_JSQR(對(duì)注入通道)選中的所有通道。在每個(gè)組的每個(gè)通道上執(zhí)行單次轉(zhuǎn)換。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC校準(zhǔn),ADC 有一個(gè)內(nèi)置自校準(zhǔn)模式。校準(zhǔn)可大幅減小因內(nèi)部電容器組的變化而造成的準(zhǔn)精度誤差。通過設(shè)置ADC_CR2寄存器的CAL位啟動(dòng)校準(zhǔn)。一旦
13、校準(zhǔn)結(jié)束, CAL 位被硬件復(fù)位,可以開始正常轉(zhuǎn)換。建議在上電時(shí)執(zhí)行一次 ADC 校準(zhǔn)。校準(zhǔn)階段結(jié)束后,校準(zhǔn)碼儲(chǔ)存在 ADC_DR 中。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC轉(zhuǎn)換時(shí)序圖,如下圖所示,ADC 在開始精確轉(zhuǎn)換前需要一個(gè)穩(wěn)定時(shí)間 tSTAB。在開始 ADC 轉(zhuǎn)換和14 個(gè)時(shí)鐘周期后,EOC 標(biāo)志被設(shè)置,16 位 ADC 數(shù)據(jù)寄存器包含轉(zhuǎn)換的結(jié)果。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC使用若干個(gè)ADC_CLK周期對(duì)輸
14、入電壓采樣,采樣周期數(shù)目可以通過ADC_SMPR1和 ADC_SMPR2 寄存器中的 SMP[2:0]位更改。每個(gè)通道可以分別用不同的時(shí)間采樣。 總轉(zhuǎn)時(shí)間如下計(jì)算:TCONV= 采樣時(shí)間+ 12.5 個(gè)周期。例如: 當(dāng) ADCCLK=14MHz,采樣時(shí)間為 1.5 周期 TCONV= 1.5 + 12.5 = 14 周期 = 1μs。,可編程的通道采樣時(shí)間,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC 寄存器描述,STM32的A
15、DC可以進(jìn)行很多種不同的轉(zhuǎn)換模式,這些模式在《STM32參考手冊(cè)》都有詳細(xì)介紹,這里就不在一一列舉了。本節(jié)僅介紹如何使用規(guī)則通道的單次轉(zhuǎn)換模式。,7.2 STM32A/D 轉(zhuǎn)換模塊,接下來介紹一下本書執(zhí)行規(guī)則通道的單次轉(zhuǎn)換,需要用到的 ADC 寄存器。第一個(gè)要介紹的是 ADC 控制寄存器(ADC_CR1 和 ADC_CR2)。 ADC_CR1 的各位描述如下圖所示:,寄存ADC_CR1 各位描述,ADC_CR1的SCAN位,該位用于設(shè)置
16、掃描模式,由軟件設(shè)置和清除,如果設(shè)置為1,則使用掃描模式,如果為0,則關(guān)閉掃描模式。在掃描模式下,由ADC_SQRxADC_JSQRx寄存器選中的通道被轉(zhuǎn)換。如果設(shè)置了EOCIE或JEOCIE,只在最后一個(gè)通道轉(zhuǎn)換完畢后才會(huì)產(chǎn)生EOC或JEOC中斷。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC_CR1[19:16]用于設(shè)置 ADC 的操作模式,詳細(xì)的對(duì)應(yīng)關(guān)系如下圖所示:,該處要使用的是獨(dú)立模式,所以設(shè)置這幾位為 0 就可以了。接著本書介
17、紹 ADC_CR2,7.2 STM32A/D 轉(zhuǎn)換模塊,該寄存器的各位描述如下:,寄存器 ADC_CR2 操作模式,ADCON位用于開關(guān)AD轉(zhuǎn)換器。而CONT位用于設(shè)置是否進(jìn)行連續(xù)轉(zhuǎn)換,本書使用單次轉(zhuǎn)換,所以CONT位必須為0。CAL和RSTCAL用于AD校準(zhǔn)。ALIGN用于設(shè)置數(shù)據(jù)對(duì)齊,本書使用右對(duì)齊,該位設(shè)置為0。,7.2 STM32A/D 轉(zhuǎn)換模塊,EXTSEL[2:0]用于選擇啟動(dòng)規(guī)則轉(zhuǎn)換組轉(zhuǎn)換的外部事件,詳細(xì)的設(shè)置關(guān)系如下:,
18、這里使用的是軟件觸發(fā)(SWSTART),所以設(shè)置這3個(gè)位為111。ADC_CR2的SWSTART位用于開始規(guī)則通道的轉(zhuǎn)換,每次轉(zhuǎn)換(單次轉(zhuǎn)換模式下)都需要向該位寫1。AWDEN為用于使能溫度傳感器和Vrefint。STM32內(nèi)部的溫度傳感器本書將在隨后章節(jié)介紹。,7.2 STM32A/D 轉(zhuǎn)換模塊,7.2 STM32A/D 轉(zhuǎn)換模塊,第二個(gè)要介紹的是 ADC 采樣事件寄存器(ADC_SMPR1 和 ADC_SMPR2),這兩個(gè)寄存器用于
19、設(shè)置通道 0~17 的采樣時(shí)間,每個(gè)通道占用 3 個(gè)位。 ADC_SMPR1 的各位描述如下:,寄存器 ADC_SMPR1 各位描述,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC_SMPR2 的各位描述如下圖所示:,對(duì)于每個(gè)要轉(zhuǎn)換的通道,采樣時(shí)間建議盡量長一點(diǎn),以獲得較高的準(zhǔn)確度,但是這樣會(huì)降低ADC的轉(zhuǎn)換速率。ADC的轉(zhuǎn)換時(shí)間可以由下式計(jì)算:Tcovn=采樣時(shí)間+12.5個(gè)周期其中:Tcovn為總轉(zhuǎn)換時(shí)間,采樣時(shí)間是根據(jù)每個(gè)通道的S
20、MP位的設(shè)置來決定的。例如,當(dāng)ADCCLK=14Mhz的時(shí)候,并設(shè)置1.5個(gè)周期的采樣時(shí)間,則得到:Tcovn=1.5+12.5=14個(gè)周期=1us。,7.2 STM32A/D 轉(zhuǎn)換模塊,第三個(gè)要介紹的是 ADC 規(guī)則序列寄存器(ADC_SQR1~3),該寄存器總共有 3 個(gè),這幾個(gè)寄存器的功能都差不多,這里本書僅介紹一下 ADC_SQR1,該寄存器的各位描述如下:,7.2 STM32A/D 轉(zhuǎn)換模塊,7.2 STM32A/D 轉(zhuǎn)換模
21、塊,L[3:0]用于存儲(chǔ)規(guī)則序列的長度,本書這里只用了 1 個(gè),所以設(shè)置這幾個(gè)位的值為 0。其他的 SQ13~16 則存儲(chǔ)了規(guī)則序列中第 13~16 個(gè)通道的編號(hào)(0~17)。另外兩個(gè)規(guī)則序列寄存器同 ADC_SQR1 大同小異,本書這里就不再介紹了,要說明一點(diǎn)的是:本書選擇的是單次轉(zhuǎn)換,所以只有一個(gè)通道在規(guī)則序列里面,這個(gè)序列就是 SQ0,通過 ADC_SQR3 的最低5 位設(shè)置。,7.2 STM32A/D 轉(zhuǎn)換模塊,第四個(gè)要介紹的是
22、 ADC 規(guī)則數(shù)據(jù)寄存器(ADC_DR)。規(guī)則序列中的 AD 轉(zhuǎn)化結(jié)果都將被存在這個(gè)寄存器里面,而注入通道的轉(zhuǎn)換結(jié)果被保存在 ADC_JDRx 里面。ADC_DR 的各位描述如下:,7.2 STM32A/D 轉(zhuǎn)換模塊,最后一個(gè)要介紹的 ADC 寄存器為 ADC 狀態(tài)寄存器(ADC_SR),該寄存器保存了 ADC轉(zhuǎn)換時(shí)的各種狀態(tài)。該寄存器的各位描述如下:,這里本書要用到的是EOC位,本書通過判斷該位來決定是否此次規(guī)則通道的AD轉(zhuǎn)換已經(jīng)完成
23、,如果完成本書就從ADC_DR中讀取轉(zhuǎn)換結(jié)果,否則等待轉(zhuǎn)換完成。,7.2 STM32A/D 轉(zhuǎn)換模塊,7.2 STM32A/D 轉(zhuǎn)換模塊,通過以上介紹,讀者了解了 STM32 的單次轉(zhuǎn)換模式下的相關(guān)設(shè)置,這一節(jié)使用ADC1 的通道 0 來進(jìn)行 AD 轉(zhuǎn)換,其詳細(xì)設(shè)置步驟如下:,1)開啟PA口時(shí)鐘,設(shè)置PA0為模擬輸入。,2)使能ADC1時(shí)鐘,并設(shè)置分頻因子。,3)設(shè)置ADC1的工作模式。,4)設(shè)置ADC1規(guī)則序列的相關(guān)信息。,5)開
24、啟 AD 轉(zhuǎn)換器,并校準(zhǔn)。,6)讀取ADC值。,7.2 STM32A/D 轉(zhuǎn)換模塊,在上面的校準(zhǔn)完成之后,ADC就算準(zhǔn)備好了。接下來我們要做的就是設(shè)置規(guī)則序列0里面的通道,然后啟動(dòng)ADC轉(zhuǎn)換。在轉(zhuǎn)換結(jié)束后,讀取ADC1_DR里面的值就是了。通過以上幾個(gè)步驟的設(shè)置,我們就可以正常的使用 STM32 的 ADC1 來執(zhí)行 AD 轉(zhuǎn)換操作了。,7.2 STM32A/D 轉(zhuǎn)換模塊,ADC 中斷,規(guī)則和注入組轉(zhuǎn)換結(jié)束時(shí)能產(chǎn)生中斷,當(dāng)模擬看門狗狀
25、態(tài)位被設(shè)置時(shí)也能產(chǎn)生中斷。它們都有獨(dú)立的中斷使能位。,表 ADC 中斷,7.3STM32 內(nèi)部溫度傳感器,溫度傳感器用于測量設(shè)備的環(huán)境溫度(TA)。溫度傳感器內(nèi)部連接到 ADC_IN16 輸入通道,這個(gè)通道用于把傳感器輸出電壓轉(zhuǎn)換為一個(gè)數(shù)字值。溫度傳感器模擬輸入的采樣時(shí)間必須大于 2.2us。,7.3STM32 內(nèi)部溫度傳感器,STM32 內(nèi)部溫度傳感器簡介,STM32有一個(gè)內(nèi)部的溫度傳感器,可以用來測量CPU及周圍的溫度(TA)
26、。該溫度傳感器在內(nèi)部和ADCx_IN16輸入通道相連接,此通道把傳感器輸出的電壓轉(zhuǎn)換成數(shù)字值。溫度傳感器模擬輸入推薦采樣時(shí)間是17.1μs。 溫度傳感器的結(jié)構(gòu)圖下圖 所示。溫度傳感器在不使用的時(shí)候處于掉電模式。,溫度傳感器和VREFINT 通道模塊圖,7.3STM32 內(nèi)部溫度傳感器,我們要使用STM32的內(nèi)部溫度傳感器,必須先激活A(yù)DC的內(nèi)部通道,這里通過ADC_CR2的AWDEN位(bit23)設(shè)置。設(shè)置該位為1則啟用內(nèi)部溫度傳
27、感器。,STM32 的內(nèi)部溫度傳感器固定的連接在 ADC 的通道 16 上,所以,我們?cè)谠O(shè)置好 ADC 之后只要讀取通道 16 的值,就是溫度傳感器返回來的電壓值了。根據(jù)這個(gè)值,我們就可以計(jì)算出當(dāng)前溫度。計(jì)算公式如下:T(℃)={(V25-Vsense)/Avg_Slope }+25該式中:V25=Vsense在25度時(shí)的數(shù)值(典型值為:1.43。Avg_Slope=溫度與Vsense曲線的平均斜率(單位為mv/℃或uv/℃)
28、(典型值為4.3Mv/℃)。利用以上公式,我們就可以方便的計(jì)算出當(dāng)前溫度傳感器的溫度了。,7.3STM32 內(nèi)部溫度傳感器,7.3STM32 內(nèi)部溫度傳感器,現(xiàn)在,我們就可以總結(jié)一下 STM32 內(nèi)部溫度傳感器使用的步驟了,如下:,1、設(shè)置ADC,并開啟ADC_CR2的AWDEN位。,2、讀取通道16的AD值,計(jì)算結(jié)果。,在設(shè)置完之后,我們就可以讀取溫度傳感器的電壓值了,得到該值就可以用上面的公式計(jì)算溫度值了。,7.3 STM32內(nèi)部
29、溫度傳感器,,STM32實(shí)驗(yàn)板用的是STM32F103VET6,屬于增強(qiáng)型的CPU。STM32內(nèi)部的溫度傳感器和ADCx_IN16輸入通道相連接,此通道把傳感器輸出的電壓值轉(zhuǎn)換成數(shù)字值。,硬件設(shè)計(jì),7.3 STM32 內(nèi)部溫度傳感器,,STM32內(nèi)部溫度傳感器的使用很簡單,只需設(shè)置內(nèi)部ADC。下來介紹溫度傳感器設(shè)置相關(guān)的兩個(gè)部分。第一個(gè)部分,要使用STM32的內(nèi)部溫度傳感器,必須先激活A(yù)DC的內(nèi)部通道,這里通過ADC_CR2的AW
30、DEN位(bit23)設(shè)置。設(shè)置該位為1則啟用內(nèi)部溫度傳感器。第二個(gè)部分,STM32的內(nèi)部溫度傳感器固定的連接在ADC的通道16上,所以,在設(shè)置好ADC之后只要讀取通道16的值,就是溫度傳感器返回來的電壓值了。,7.3 STM32 內(nèi)部溫度傳感器,根據(jù)電壓值,我們就可以計(jì)算出當(dāng)前溫度。計(jì)算公式如下:T(℃)={(V25-Vsense)/Avg_Slope}+25,該式中:V25=Vsense在25度時(shí)的數(shù)值(典型值為:1.4
31、3)。Avg_Slope=溫度與Vsense曲線的平均斜率(單位為mv/℃或uv/℃)(典型值為4.3Mv/℃)。利用以上公式,我們就可以方便的計(jì)算出當(dāng)前溫度傳感器的溫度了。,7.3STM32 內(nèi)部溫度傳感器,STM32內(nèi)部溫度傳感器編程流程如下圖所示:,,打開MDK 開發(fā)壞境,建立工程,取名TEST_LED。步驟一:初始化串口,使用函數(shù)為USART1_Config()。步驟二:使能ADC1,并使ADC1 工作于DMA 方式,使
32、用函數(shù)為static void ADC1_Mode_Config();該函數(shù)的實(shí)現(xiàn)如下:,7.3STM32 內(nèi)部溫度傳感器,7.3STM32 內(nèi)部溫度傳感器,,7.3STM32 內(nèi)部溫度傳感器,7.3STM32 內(nèi)部溫度傳感器,步驟三:main.c 中,在主函數(shù)中,根據(jù)ADC 得到的溫度值A(chǔ)DC_ConvertedValue 計(jì)算當(dāng)前溫度Current_Temp 并通過串口顯示出來、添加如下程序:,7.3STM32 內(nèi)部溫度傳感器,w
33、hile (1){Delay(0xffffee); // 延時(shí)Current_Temp=(V25-ADC_ConvertedValue)/AVG_SLOPE+25; // 計(jì)算當(dāng)前溫度printf("\r\n The current temperature= %3d ℃\r\n", Current_Temp); //10 進(jìn)制顯示},7.4STM32 ADC 實(shí)驗(yàn),軟件設(shè)計(jì),1)開啟PC口時(shí)鐘,設(shè)置PC
34、1為模擬輸入。2)使能ADC1時(shí)鐘,并設(shè)置分頻因子。3)設(shè)置ADC1的工作模式。4)設(shè)置ADC1規(guī)則序列的相關(guān)信息。5)開啟AD轉(zhuǎn)換器,并校準(zhǔn)。6)讀取ADC值。,7.4STM32 ADC 實(shí)驗(yàn),硬件設(shè)計(jì)這里我們要用到的是EOC位,我們通過判斷該位來決定是否此次規(guī)則通道的AD轉(zhuǎn)換已經(jīng)完成,如果完成我們就從ADC_DR中讀取轉(zhuǎn)換結(jié)果,否則等待轉(zhuǎn)換完成。我們通過ADC1的通道11(對(duì)應(yīng)到GPIO中的PC1)來讀取外部電壓值,實(shí)
35、驗(yàn)板上有一個(gè)電位器(R26)調(diào)節(jié)輸入電壓值在0V~3.3V之間變化。如下圖所示:,7.4STM32 ADC 實(shí)驗(yàn),通過以上幾個(gè)步驟的設(shè)置,我們就可以正常的使用STM32的ADC1來執(zhí)行AD轉(zhuǎn)換操作了。實(shí)驗(yàn)結(jié)果如下圖所示。,小結(jié),本章主要介紹了 AD 轉(zhuǎn)換器的基本概念,以及在工程實(shí)踐中選取 AD 轉(zhuǎn)換器的一些基本原則。針對(duì) STM32 系列單片機(jī)本章重點(diǎn)介紹了片內(nèi) AD 轉(zhuǎn)換器的使用方法以及集成溫度傳感器的使用技巧。最后給出了工程實(shí)例。,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第七章AVR單片機(jī)的應(yīng)用.PDF
- 第七章AVR單片機(jī)的應(yīng)用.PDF
- 基于STM32單片機(jī)的BMS數(shù)據(jù)記錄裝置設(shè)計(jì).pdf
- 基于STM32單片機(jī)的氣體分析儀設(shè)計(jì).pdf
- 基于STM32單片機(jī)的通信值班智能輔助系統(tǒng).pdf
- 基于stm32單片機(jī)的動(dòng)力鋰電池管理系統(tǒng)
- 最新基于stm32單片機(jī)的智能交通燈的設(shè)計(jì)
- 基于STM32單片機(jī)音頻系統(tǒng)設(shè)計(jì)與研究.pdf
- 基于STM32單片機(jī)的溫室大棚監(jiān)控系統(tǒng)開發(fā).pdf
- 基于STM32單片機(jī)的動(dòng)力鋰電池管理系統(tǒng).pdf
- 基于stm32單片機(jī)的智能家居系統(tǒng)設(shè)計(jì)(論文原稿)
- 基于stm32單片機(jī)的空氣凈化器畢業(yè)設(shè)計(jì)
- 基于stm32單片機(jī)的空氣凈化器畢業(yè)設(shè)計(jì)
- 基于stm32單片機(jī)的c37.94光口單盤設(shè)計(jì)
- 基于stm32的免驅(qū)單片機(jī)下載器設(shè)計(jì)-畢業(yè)論文
- 基于stm32單片機(jī)系統(tǒng)語音遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)
- 基于STM32單片機(jī)的光譜儀數(shù)據(jù)采集及處理系統(tǒng).pdf
- 基于STM32單片機(jī)DTU檢測儀的研究與設(shè)計(jì).pdf
- 基于stm32單片機(jī)的太陽能電池測試系統(tǒng)研究
- 一種基于單片機(jī)STM32的加油機(jī)系統(tǒng)設(shè)計(jì).pdf
評(píng)論
0/150
提交評(píng)論