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

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

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

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

牽手一起夢(mèng) ? 來(lái)源:ST MCU 信息交流 ? 作者:佚名 ? 2020-06-03 15:30 ? 次閱讀

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    關(guān)注

    184

    文章

    17718

    瀏覽量

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

    關(guān)注

    98

    文章

    6498

    瀏覽量

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

    關(guān)注

    0

    文章

    87

    瀏覽量

    23338
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    TPS62873雙通道降壓轉(zhuǎn)換器評(píng)估模塊

    電子發(fā)燒友網(wǎng)站提供《TPS62873雙通道降壓轉(zhuǎn)換器評(píng)估模塊.pdf》資料免費(fèi)下載
    發(fā)表于 11-16 14:41 ?0次下載
    TPS62873<b class='flag-5'>雙通道</b>降壓<b class='flag-5'>轉(zhuǎn)換</b>器評(píng)估<b class='flag-5'>模塊</b>

    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采集需要在一個(gè)通道采集并且轉(zhuǎn)換完成后才會(huì)進(jìn)行下一個(gè)通道的采集。而雙重ADC的機(jī)制就是使用兩個(gè)
    的頭像 發(fā)表于 07-22 09:19 ?490次閱讀
    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)英文手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《AD9208雙通道、14位、3 GSPS模數(shù)轉(zhuǎn)換器(ADC)英文手冊(cè).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紅楓派開(kāi)發(fā)板使用手冊(cè)】第十二講 ADC-軸按鍵搖桿多通道循環(huán)采樣實(shí)驗(yàn)

    本實(shí)驗(yàn)是通過(guò)ADC規(guī)則組多通道循環(huán)采樣方式實(shí)現(xiàn)軸按鍵搖桿傳感器x和y軸電壓值的讀取,通過(guò)本實(shí)驗(yàn)主要學(xué)習(xí)以下內(nèi)容: ?軸按鍵搖桿傳感器工作
    的頭像 發(fā)表于 06-11 09:40 ?645次閱讀
    【GD32F303紅楓派開(kāi)發(fā)板使用手冊(cè)】第十二講   <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 個(gè) 10 位的逐次逼近型的模擬數(shù)字
    發(fā)表于 05-17 13:44

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

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

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

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