• 資料介紹
    • 問題描述
    • 問題分析
    • 結(jié)果驗證
    • 問題拓展
    • 問題小結(jié)
  • 資料預(yù)覽
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

LAT1362 利用STM32 TIMER觸發(fā)ADC實現(xiàn)分組轉(zhuǎn)換

03/22 14:25
426
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

LAT1362 利用STM32 TIMER觸發(fā)ADC實現(xiàn)分組轉(zhuǎn)換

631.18 KB

問題描述

有客戶使用 STM32G4 系列芯片開發(fā)產(chǎn)品,用到其中一個 ADC 模塊的多個通道,他希望使用 TIMER 來定時觸發(fā)這幾個通道的轉(zhuǎn)換。不過他有兩點疑惑。第一,他期望定時器觸發(fā)這幾個通道是每觸發(fā)一次則只轉(zhuǎn)換一個通道,這樣依次觸發(fā)轉(zhuǎn)換,而不是觸發(fā)一次就把幾個通道都轉(zhuǎn)換完結(jié)。他不知這樣是否可行?第二,既然是 TIMER 每觸發(fā)一次就轉(zhuǎn)換一次,如果說某個通道正在轉(zhuǎn)換時來了觸發(fā),這個觸發(fā)事件是否會丟失?是否會導(dǎo)致最終轉(zhuǎn)換的數(shù)據(jù)混亂。

問題分析

先說他的第一問題。多個通道進行轉(zhuǎn)換,定時器每觸發(fā) 1 次則轉(zhuǎn)換 1 個通道,這是可以做到的。我們可以采用 ADC 模塊的間斷分組轉(zhuǎn)換模式,我們可以指定每次啟動 ADC 所需要轉(zhuǎn)換的通道數(shù)。比方現(xiàn)在用到 6 個 ADC 通道需要做轉(zhuǎn)換,我們可以指定每次觸發(fā)啟動時轉(zhuǎn)換 2 個通道,這樣 3 次觸發(fā)后 6 個通道即告完成 1 輪轉(zhuǎn)換。

結(jié)果驗證

我們不妨使用 STM32G474 芯片做下相關(guān)驗證,看看當 TIMER 觸發(fā)事件的速率快到一定程度時是否會出現(xiàn)觸發(fā)事件被無視、轉(zhuǎn)換結(jié)果是否混亂。這里使用片內(nèi)兩個 ADC 專用通道,一個是測試????????信號的,另一個是測試內(nèi)部??????????????信號的。這兩個信號的轉(zhuǎn)換結(jié)果相對穩(wěn)定、數(shù)據(jù)相差有明顯,便于觀察。ADC 轉(zhuǎn)換結(jié)果使用 DMA 進行傳輸。

問題拓展

既然談到 ADC 的觸發(fā)事件,我們也該知道基于外部事件對 ADC 進行觸發(fā)時,其觸發(fā)頻率也是有限制的,這點在各個芯片的 ADC 特性參數(shù)那里都有介紹。我這里做部分截圖過來,拋磚引玉。在具體應(yīng)用時我們可以 針對性地閱讀查看。

問題小結(jié)

本文著重針對客戶的疑問作了相關(guān)解釋,并做了相關(guān)驗證確認。在涉及多通道 ADC 轉(zhuǎn)換,同時又不期望一次觸發(fā)就將整個序列轉(zhuǎn)換完成時,考慮使用 ADC 的間斷分組轉(zhuǎn)換模式或許是個不錯的方案。

資料預(yù)覽

相關(guān)推薦