Question
STM32G030K6T6 ADC_DMA
Hi,
I'm trying to configure the ADC DMA with STM32G030K6T6. But Analog value is not came.
below I given my code and i don't know where i made a mistake if any one know help me.
void ADC_Config(void)
{
RCC->APBENR2 |= RCC_APBENR2_ADCEN; // ADC clock enable
RCC->AHBENR |= RCC_AHBENR_DMA1EN; // DMA1 clock enable
ADC1->CR |= ADC_CR_ADEN; // ADC enable
ADC1->CFGR2 |= (1<<30); // 01: PCLK/2 (Synchronous clock mode)
ADC1->CFGR1 |= (ADC_CFGR1_CONT | ADC_CFGR1_DMAEN | ADC_CFGR1_CHSELRMOD | ADC_CFGR1_DMACFG); // 1: Continuous conversion mode & Direct memory access enable & Direct memory access configuration
ADC1->SMPR |= ADC_SMPR_SMP1_1; // Sampling time selection 1 (010: 7.5 ADC clock cycles)
ADC1->CHSELR |= (ADC_CHSELR_CHSEL0 | ADC_CHSELR_CHSEL1 | ADC_CHSELR_CHSEL2); // Channel-x selection (Channel-x selection)
ADC1->CR |= ADC_CR_ADEN; // ADC enable
DMA1_Channel1->CPAR = (uint32_t)&(ADC1->DR); // peripheral Address
DMA1_Channel1->CMAR = (uint32_t)Aout; // Memory Address
DMA1_Channel1->CNDTR = 3; // No Of Data
DMA1_Channel1->CCR |= (DMA_CCR_MINC | DMA_CCR_MSIZE_0 | DMA_CCR_PSIZE_0| DMA_CCR_CIRC | DMA_CCR_TEIE | DMA_CCR_TCIE); // Msize,Psize,CIRC,MINC
DMA1_Channel1->CCR |= DMA_CCR_EN; // DMA enable
NVIC_EnableIRQ(DMA1_Channel1_IRQn);
NVIC_SetPriority(DMA1_Channel1_IRQn,0);
ADC1->CR |= ADC_CR_ADEN; // ADC enable
}