0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

牽手一起夢 ? 來源:ST MCU 信息交流 ? 作者:佚名 ? 2020-06-03 15:30 ? 次閱讀

有人使用STM32F303VC開發(fā)電源方面的產(chǎn)品,想使用4個ADC模塊進(jìn)行同時采樣轉(zhuǎn)換,感覺不知怎么實(shí)現(xiàn)。這里簡單介紹下實(shí)現(xiàn)過程,以供參考。

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

現(xiàn)在希望四個ADC模塊同時進(jìn)行AD轉(zhuǎn)換。我們使用雙ADC主從模式,ADC1與ADC2成為一組,構(gòu)成主從模式。同樣,ADC3與ADC4也成為一組構(gòu)成主從模式。其中,ADC1和ADC3分別為各組中的主,并讓兩組都工作在同時轉(zhuǎn)換模式,對規(guī)則通道進(jìn)行ADC轉(zhuǎn)換。

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

它們的轉(zhuǎn)換使用同一定時器事件來觸發(fā),這里選擇TIM4的更新事件來觸發(fā)所有ADC的轉(zhuǎn)換。如下圖所示,主ADC的CH1與從ADC的CH16同時進(jìn)行轉(zhuǎn)換,主ADC的CH2與從ADC的CH14同時進(jìn)行轉(zhuǎn)換,就這樣依次按照紅色箭頭方向進(jìn)行。

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

對于工作在主從模式的雙ADC的轉(zhuǎn)換結(jié)果,可以合并成一個字放在一個公共數(shù)據(jù)寄存器里ADCx_CDR( x=12 or 34),能被CPUDMA讀取訪問。其中高半字存放從ADC的轉(zhuǎn)換結(jié)果,低半字存放主ADC的轉(zhuǎn)換結(jié)果?!具@里各ADC的分辨率選用12位,轉(zhuǎn)換結(jié)果采用右對齊方式?!?/p>

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

大致原理就介紹到這里,更多細(xì)節(jié)還得看STM32參考手冊。

現(xiàn)在將4個ADC模塊用起來,同時進(jìn)行ADC轉(zhuǎn)換,通過DMA傳輸ADC結(jié)果。這里只用到規(guī)則轉(zhuǎn)換,其中,ADC1使用它的CH1/CH2,ADC2使用它的CH3/CH4, ADC3使用它的CH5/CH6, ADC4使用CH7/CH8。

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

各ADC模塊的采樣通道連接如下圖所示,ADC經(jīng)定時器事件觸發(fā)轉(zhuǎn)換。

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

現(xiàn)在基于STM32CubeMx進(jìn)行初始化配置。

先看TIM4的配置,它的更新事件作為所有ADC的轉(zhuǎn)換觸發(fā)事件。

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

然后根據(jù)上面的規(guī)劃,對4個ADC模塊進(jìn)行配置。

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

4個ADC的配置除了各自選擇的通道不一樣外,在上面頁面里的配置都相同。定時器觸發(fā),工作在雙模式同時轉(zhuǎn)換。

因?yàn)橐獙DC結(jié)果實(shí)行DMA傳輸,根據(jù)當(dāng)前所選擇的工作模式,這里只需對ADC1和ADC3兩個主ADC的轉(zhuǎn)換事件進(jìn)行DMA配置,如下圖所示:

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

我這里將DMA傳輸配置成循環(huán)模式,基于ADC3事件的DMA傳輸配置跟上面一樣,只是DMA通道不同而已。

時鐘等必要的配置完成后即可生成初始化代碼。在初始化代碼的基礎(chǔ)上添加用戶代碼。

我定義了2個數(shù)組pData12[4]、pData34[4]分別存放ADC1/2 與ADC3/4合并后的轉(zhuǎn)換結(jié)果。

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

基于STM32Cube HAL庫組織代碼,相關(guān)參考代碼如下:

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

代碼直觀明了,無須過多解釋。提醒一點(diǎn),使用雙ADC模式時,從ADC要先于主ADC啟動使能。

基于上面的規(guī)劃與代碼,測試結(jié)果如下:

雙ADC模塊規(guī)則通道同時轉(zhuǎn)換的應(yīng)用介紹

結(jié)果跟實(shí)際硬件連接情況完全吻合。

上面只是基于雙ADC模塊規(guī)則通道的同時轉(zhuǎn)換模式做了簡單應(yīng)用介紹。其實(shí)對于雙ADC模式,還有其它更多轉(zhuǎn)換模式,在STM32開發(fā)應(yīng)用中可以靈活選擇使用。
責(zé)任編輯:pj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 電源
    +關(guān)注

    關(guān)注

    184

    文章

    17488

    瀏覽量

    249172
  • adc
    adc
    +關(guān)注

    關(guān)注

    98

    文章

    6396

    瀏覽量

    543807
  • 產(chǎn)品
    +關(guān)注

    關(guān)注

    0

    文章

    87

    瀏覽量

    23302
收藏 人收藏

    評論

    相關(guān)推薦

    ADS8363雙通道、16位、1 MSPS模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADS8363雙通道、16位、1 MSPS模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-30 09:46 ?0次下載
    ADS8363<b class='flag-5'>雙通道</b>、16位、1 MSPS模數(shù)<b class='flag-5'>轉(zhuǎn)換</b>器(<b class='flag-5'>ADC</b>)數(shù)據(jù)表

    ADC12DS080雙通道、12位、80 MSPS模數(shù)轉(zhuǎn)換器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADC12DS080雙通道、12位、80 MSPS模數(shù)轉(zhuǎn)換器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-25 10:31 ?0次下載
    <b class='flag-5'>ADC</b>12DS080<b class='flag-5'>雙通道</b>、12位、80 MSPS模數(shù)<b class='flag-5'>轉(zhuǎn)換</b>器數(shù)據(jù)表

    ADC12DS105雙通道、12位、105 MSPS模數(shù)轉(zhuǎn)換器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADC12DS105雙通道、12位、105 MSPS模數(shù)轉(zhuǎn)換器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-25 10:29 ?0次下載
    <b class='flag-5'>ADC</b>12DS105<b class='flag-5'>雙通道</b>、12位、105 MSPS模數(shù)<b class='flag-5'>轉(zhuǎn)換</b>器數(shù)據(jù)表

    ADC122S706雙通道同步采樣模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADC122S706雙通道同步采樣模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-25 10:17 ?0次下載
    <b class='flag-5'>ADC</b>122S706<b class='flag-5'>雙通道</b>同步采樣模數(shù)<b class='flag-5'>轉(zhuǎn)換</b>器(<b class='flag-5'>ADC</b>)數(shù)據(jù)表

    ADC122S655雙通道12位、200 kSPS至500kSPS同步采樣模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADC122S655雙通道12位、200 kSPS至500kSPS同步采樣模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-25 10:10 ?0次下載
    <b class='flag-5'>ADC</b>122S655<b class='flag-5'>雙通道</b>12位、200 kSPS至500kSPS同步采樣模數(shù)<b class='flag-5'>轉(zhuǎn)換</b>器(<b class='flag-5'>ADC</b>)數(shù)據(jù)表

    ADC32RF42雙通道14位1.5GSPS模數(shù)轉(zhuǎn)換器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADC32RF42雙通道14位1.5GSPS模數(shù)轉(zhuǎn)換器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-22 11:14 ?0次下載
    <b class='flag-5'>ADC</b>32RF42<b class='flag-5'>雙通道</b>14位1.5GSPS模數(shù)<b class='flag-5'>轉(zhuǎn)換</b>器數(shù)據(jù)表

    CKS32F107xx系列MCU的雙重ADC模式

    獨(dú)立模式的ADC采集需要在一個通道采集并且轉(zhuǎn)換完成后才會進(jìn)行下一個通道的采集。而雙重ADC的機(jī)制就是使用兩個
    的頭像 發(fā)表于 07-22 09:19 ?382次閱讀
    CKS32F107xx系列MCU的雙重<b class='flag-5'>ADC</b>模式

    ADC32RF44雙通道14位2.6GSPS模數(shù)轉(zhuǎn)換器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADC32RF44雙通道14位2.6GSPS模數(shù)轉(zhuǎn)換器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-18 10:38 ?0次下載
    <b class='flag-5'>ADC</b>32RF44<b class='flag-5'>雙通道</b>14位2.6GSPS模數(shù)<b class='flag-5'>轉(zhuǎn)換</b>器數(shù)據(jù)表

    AD9208雙通道、14位、3 GSPS模數(shù)轉(zhuǎn)換器(ADC)英文手冊

    電子發(fā)燒友網(wǎng)站提供《AD9208雙通道、14位、3 GSPS模數(shù)轉(zhuǎn)換器(ADC)英文手冊.pdf》資料免費(fèi)下載
    發(fā)表于 07-17 12:56 ?0次下載

    ADS58C28雙通道、11位模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADS58C28雙通道、11位模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-17 09:59 ?0次下載
    ADS58C28<b class='flag-5'>雙通道</b>、11位模數(shù)<b class='flag-5'>轉(zhuǎn)換</b>器(<b class='flag-5'>ADC</b>)數(shù)據(jù)表

    【GD32F303紅楓派開發(fā)板使用手冊】第十二講 ADC-軸按鍵搖桿多通道循環(huán)采樣實(shí)驗(yàn)

    本實(shí)驗(yàn)是通過ADC規(guī)則組多通道循環(huán)采樣方式實(shí)現(xiàn)軸按鍵搖桿傳感器x和y軸電壓值的讀取,通過本實(shí)驗(yàn)主要學(xué)習(xí)以下內(nèi)容: ?軸按鍵搖桿傳感器工作
    的頭像 發(fā)表于 06-11 09:40 ?550次閱讀
    【GD32F303紅楓派開發(fā)板使用手冊】第十二講   <b class='flag-5'>ADC</b>-<b class='flag-5'>雙</b>軸按鍵搖桿多<b class='flag-5'>通道</b>循環(huán)采樣實(shí)驗(yàn)

    CH32V003教程--模擬/數(shù)字轉(zhuǎn)換ADC

    CH32V003模擬/數(shù)字轉(zhuǎn)換ADC介紹   ADC 模塊包含 1 個 10 位的逐次逼近型的模擬數(shù)字
    發(fā)表于 05-17 13:44

    stm32f103ADC同步規(guī)則模式兩個ADC轉(zhuǎn)換通道數(shù)量能不一樣嗎?

    stm32f103rct6,配置成雙ADC同步規(guī)則模式時,主ADC1、從ADC2,因?yàn)樾枰偣膊杉?路通道,便配置成
    發(fā)表于 04-10 06:21

    GD32 ADC規(guī)則組多通道采樣,數(shù)據(jù)發(fā)生錯位?

    我們知道,使用ADC規(guī)則組(常規(guī)組)多通道采樣時,必須要配合DMA使用,但有的小伙伴遇到這種應(yīng)用下數(shù)據(jù)錯位的情況,比如預(yù)設(shè)的轉(zhuǎn)換順序是通道0
    的頭像 發(fā)表于 03-14 09:58 ?1959次閱讀
    GD32 <b class='flag-5'>ADC</b><b class='flag-5'>規(guī)則</b>組多<b class='flag-5'>通道</b>采樣,數(shù)據(jù)發(fā)生錯位?

    國產(chǎn)16位ADC AD7616推薦

    內(nèi)置路16位SAR模數(shù)轉(zhuǎn)換器 (ADC),支持對16個通道進(jìn)行路同步采樣,每個通道均集成模擬
    的頭像 發(fā)表于 01-16 09:11 ?1807次閱讀