有人使用STM32U5系列MCU開(kāi)發(fā)產(chǎn)品,在用到ADC結(jié)合DMA傳輸時(shí)遇到點(diǎn)障礙,這里針對(duì)片內(nèi)ADC1和ADC4基于DMA標(biāo)準(zhǔn)請(qǐng)求模式和鏈表模式演示下實(shí)現(xiàn)過(guò)程,以供參考。
先對(duì)ADC1基于DMA標(biāo)準(zhǔn)請(qǐng)求模式做演示。
隨意選擇ADC1的4個(gè)通道,掃描模式,連續(xù)轉(zhuǎn)換,DMA傳輸轉(zhuǎn)換結(jié)果并令DMA工作在外設(shè)字到內(nèi)存字的循環(huán)傳輸模式。使用CubeMx進(jìn)行配置。其中DMA通道使用Channel 1。
相關(guān)代碼:
#define ADC_BUFFRER_SIZE ((uint32_t) 8)
uint32_t ADC1_Result[ADC_BUFFRER_SIZE];
ADC_HandleTypeDef hadc1;
DMA_HandleTypeDef handle_GPDMA1_Channel1; //For ADC1
/* USER CODE BEGIN 2 */
HAL_PWREx_EnableVddA(); //add it manually with lower cubeMx version
__HAL_LINKDMA(&hadc1, DMA_Handle, handle_GPDMA1_Channel1);
if (HAL_ADC_Start_DMA(&hadc1, (uint32_t *)ADC1_Result,
(ADC_BUFFRER_SIZE)
) != HAL_OK)
{
Error_Handler();
}
/* USER CODE END 2 */
運(yùn)行結(jié)果如下圖所示:【目前4個(gè)通道我是懸空的】
-
mcu
+關(guān)注
關(guān)注
146文章
16899瀏覽量
349937 -
adc
+關(guān)注
關(guān)注
98文章
6396瀏覽量
543800 -
STM32
+關(guān)注
關(guān)注
2264文章
10854瀏覽量
354311
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論