在STM32芯片的ADC應(yīng)用中,我們往往會(huì)利用定時(shí)器來(lái)觸發(fā)ADC的啟動(dòng)轉(zhuǎn)換,而能夠觸發(fā)ADC轉(zhuǎn)換的定時(shí)器事件往往有多個(gè),有時(shí)我們可能很關(guān)注這些定時(shí)器事件在觸發(fā)ADC時(shí)有哪些時(shí)序上的差別。下面以STM32G4芯片為例,來(lái)大致聊聊該話題。
這里選擇TIM1來(lái)觸發(fā)ADC。我們從手冊(cè)或CubeMx配置界面不難看到可用來(lái)觸發(fā)ADC的定時(shí)器事件可以是定時(shí)器TRGO信號(hào)和通道CC事件/信號(hào),而TRGO可能來(lái)自定時(shí)器的使能動(dòng)作、定時(shí)器的更新事件、通道輸出比較事件、通道比較輸出參考信號(hào)以及編碼時(shí)鐘。
這里先重點(diǎn)就Update事件、通道OCx信號(hào)和OCxREF信號(hào)作為TRGO來(lái)觸發(fā)ADC,看看相應(yīng)的觸發(fā)時(shí)間點(diǎn)在哪里。
另外,作為ADC的外部觸發(fā)事件還有個(gè)觸發(fā)極性選擇的配置。這點(diǎn)我們可用從CubeMx配置界面直觀看到,如下圖所示,可以選擇上沿觸發(fā)、下沿觸發(fā)或雙沿觸發(fā)。
我這里將TIM1配置為向上計(jì)數(shù)模式,基于PWM1模式,極性選擇為0的條件下,讓CH1輸出PWM信號(hào),以便觀察不同定時(shí)器事件及配置對(duì)ADC觸發(fā)時(shí)序的影響。
1、當(dāng)選擇Update Event做為TIM1的TRGO,同時(shí)TRGO作為ADC的外部觸發(fā)事件時(shí),不論ADC的觸發(fā)極性如何選擇,都確定在定時(shí)器發(fā)生更新事件時(shí)觸發(fā)ADC,即下圖紅色箭頭所指位置。
2、當(dāng)選擇OC1做為TIM1的TRGO,同時(shí)TRGO作為ADC的外部觸發(fā)事件時(shí),不論ADC的觸發(fā)極性如何選擇,都確定在定時(shí)器發(fā)生比較事件時(shí)觸發(fā)ADC,即上圖綠色箭頭所指位置。
3、當(dāng)選擇OC1REF做為TIM1的TRGO,同時(shí)TRGO作為ADC的外部觸發(fā)事件時(shí),此時(shí)ADC的觸發(fā)時(shí)間點(diǎn)還跟ADC的觸發(fā)極性選擇有關(guān),如果選擇上升沿觸發(fā),ADC觸發(fā)則發(fā)生在上圖中的紅色箭頭處,反之則發(fā)生在綠色箭頭處,如果選擇雙沿觸發(fā),則上圖中紅色箭頭、綠色箭頭處都會(huì)觸發(fā)ADC轉(zhuǎn)換。
上面主要介紹的是ADC觸發(fā)信號(hào)源于定時(shí)器的TRGO,如果說(shuō)ADC的觸發(fā)信號(hào)不是來(lái)自TRGO而是來(lái)自開篇提到的通道CC事件呢。定時(shí)器CC事件包括IC事件【input Capture】和OC事件【output compare】。這里IC事件是不能作為ADC觸發(fā)源的,那我們看看OC事件作為ADC的觸發(fā)源的情況,即像下面的配置。
經(jīng)驗(yàn)證測(cè)試,這里選擇OC1作為ADC觸發(fā)源時(shí)的情形跟前面選擇OC1ref作為TRGO去觸發(fā)ADC的情形是一樣的,具體觸發(fā)點(diǎn)跟ADC配置的觸發(fā)極性選擇有關(guān),即上面的第三種情形。
看到這里,有人或許會(huì)問(wèn),既然這兩組情形的結(jié)果是一樣的,為什么配置里面不拿掉一項(xiàng)呢?不過(guò),我們要知道,OCx與OCxref可能一樣也可能不一樣,具體取決于OC輸出時(shí)的極性配置。上面我們測(cè)得兩組情形是一樣,剛好是因?yàn)镺Cx與OCxref完全同相,如果調(diào)整極性選擇,觸發(fā)時(shí)間點(diǎn)就會(huì)不一樣了,結(jié)果就會(huì)剛好反過(guò)來(lái)。畢竟實(shí)際應(yīng)用是千變?nèi)f化的,說(shuō)不定哪里就能派上用場(chǎng)。
誠(chéng)然,STM32系列眾多,相應(yīng)技術(shù)手冊(cè)內(nèi)容豐富而龐大,細(xì)節(jié)也多,個(gè)別細(xì)節(jié)可能描述未必很詳盡,此時(shí)我們實(shí)際驗(yàn)證下或許更清晰。OK,關(guān)于定時(shí)器觸發(fā)ADC的時(shí)序話題就聊到這里。時(shí)間真快,祝福2021!一起加油!
原文標(biāo)題:STM32定時(shí)器觸發(fā)ADC的時(shí)序話題
文章出處:【微信公眾號(hào):ST MCU 信息交流】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
adc
+關(guān)注
關(guān)注
98文章
6498瀏覽量
544661 -
STM32
+關(guān)注
關(guān)注
2270文章
10900瀏覽量
356050 -
定時(shí)器
+關(guān)注
關(guān)注
23文章
3248瀏覽量
114821
原文標(biāo)題:STM32定時(shí)器觸發(fā)ADC的時(shí)序話題
文章出處:【微信號(hào):stmcu832,微信公眾號(hào):茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
關(guān)于定時(shí)器觸發(fā)ADC連續(xù)采樣dma傳輸?shù)囊蓡?wèn)求解?
CW32使用DMA單通道、定時(shí)器觸發(fā)ADC實(shí)現(xiàn)了多路AD采集
![CW32使用DMA單通道、<b class='flag-5'>定時(shí)器</b><b class='flag-5'>觸發(fā)</b><b class='flag-5'>ADC</b>實(shí)現(xiàn)了多路AD采集](https://file1.elecfans.com//web2/M00/E8/61/wKgZomZPHkyAQbPeAAAlyNbwQ3428.webp)
STM32L151定時(shí)器上升沿觸發(fā)ADC采樣,為什么每個(gè)PWM周期內(nèi)會(huì)觸發(fā)第二次采樣?
求助,關(guān)于ADC和觸發(fā)器的基本問(wèn)題求解
stm32定時(shí)器的如何外部啟動(dòng)?
STM32L0使用定時(shí)器上升沿觸發(fā)ADC采樣時(shí),采樣頻率如何確定?
STM32L0采用tim6上升沿觸發(fā)使ADC采樣,把定時(shí)器頻率配為4K后,采樣周期不對(duì),為什么?
STM32L431RCT6進(jìn)入STOP模式后,ADC注入通道不再觸發(fā)是為什么?
使用555定時(shí)器的可調(diào)雙定時(shí)器電路
![使用555<b class='flag-5'>定時(shí)器</b>的可調(diào)雙<b class='flag-5'>定時(shí)器</b>電路](https://file1.elecfans.com/web2/M00/C1/D8/wKgaomXa6PqABqXTAABhX_zgqZw100.png)
使用555定時(shí)器的報(bào)警器電路圖
![使用555<b class='flag-5'>定時(shí)器</b>的報(bào)警<b class='flag-5'>器</b>電路圖](https://file1.elecfans.com/web2/M00/C0/34/wKgaomW8W8-AVEkNAAC9dxM0ZOI833.png)
定時(shí)器原理能控制馬達(dá)嗎為什么
555定時(shí)器可以構(gòu)成哪三種電路 555定時(shí)器屬于時(shí)序邏輯電路嗎
555定時(shí)器的基本功能 555定時(shí)器的工作原理及其應(yīng)用
AWTK 開源串口屏開發(fā)(6) - 定時(shí)器的用法
![AWTK 開源串口屏開發(fā)(6) - <b class='flag-5'>定時(shí)器</b>的用法](https://file.elecfans.com/web2/M00/50/DA/pYYBAGLH6TyAB71EAAAPQ7KgtYA038.png)
評(píng)論