Stm32 ADC在DMA中切換不同的採集源

2021-09-28 13:35:23 字數 408 閱讀 7531

應用背景:

乙個雙通道do輸出晶元,能反饋兩個通道的電流,但是只有乙個反饋引腳,不同的通道需要用微控制器控制切換 。把反饋引腳接到微控制器的adc,然後在程式中進行切換。**如下:

void adc2_init(void)

void dma2_stream2_irqhandler(void)

if(dma_getitstatus(dma2_stream2,dma_it_tcif2))

}

實際應用中一共用了4個通道的adc,對4個do晶元的8通道反饋電流進行採集。在dma半傳輸中斷和傳輸完成中斷中切換do晶元的不同通道進行採集。需要注意的是adc的取樣週期需要設定的長一點,這裡設定的是adc_sampletime_480cycles,取樣周期短的話在dma裡切換通道的時候會有延遲。

STM32 ADC轉換時間

stm32f103xx的adc的取樣時鐘最快14mhz,最快取樣率1mhz。adc時鐘 這個adc時鐘是從哪來的呢。我們看下面這個stm32的時鐘結構圖 我們大多使用stm32的最快pclk2系統時鐘72mhz。adcclk的時鐘由72mhz的6分頻能瞞住14mhz以下的要求 為12mhz。rcc ...

STM32 ADC電路 連線

原文 樓主的原理圖有錯誤 電容應該放到引腳處。要使用stm32f407的adc來採集外部電池電壓,電壓最大為8.4v,使用電阻分壓到2.5v由adc採集,但是現在有乙個問題是 兩個分壓的電阻選取多大的合適?如果分壓電阻太小,功耗會比較大,電阻太大的話則會分壓不準確,adc的輸入阻抗會與電阻併聯。所以...

STM32 ADC轉換時間

stm32f103xx的adc的取樣時鐘最快14mhz,最快取樣率為1mhz。adc時鐘 這個adc時鐘是從哪來的呢。我們看下面這個stm32的時鐘結構圖 我們大多使用stm32的最快pclk2系統時鐘72mhz。adcclk的時鐘由72mhz的6分頻能瞞住14mhz以下的要求 為12mhz。rcc...