AnsweredAssumed Answered

STM32F4 discovery ADC with CubeMX F4

Question asked by dupond.jean on Apr 16, 2015
Latest reply on Jun 30, 2015 by JN
Dear,
I start a project with CubeMX for the first time and I need to use ADC.

I configure ADC1 IN1 to do this.

I use HAL_ADC_START_IT to launch the continuous conversion and have an interrupt when the conversion is finish. I get in HAL_ADC_ConvCpltCallback only one time and after I have HAL_ADC_ERROR_OVR in ADC state.

ADC initialization :
void MX_ADC1_Init(void)
{
 
  ADC_ChannelConfTypeDef sConfig;
 
    /**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)
    */
  hadc1.Instance = ADC1;
  hadc1.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV8;
  hadc1.Init.Resolution = ADC_RESOLUTION12b;
  hadc1.Init.ScanConvMode = DISABLE;
  hadc1.Init.ContinuousConvMode = ENABLE;
  hadc1.Init.DiscontinuousConvMode = DISABLE;
  hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;
  hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;
  hadc1.Init.NbrOfConversion = 1;
  hadc1.Init.DMAContinuousRequests = DISABLE;
  hadc1.Init.EOCSelection = EOC_SINGLE_CONV;
  HAL_ADC_Init(&hadc1);
 
    /**Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.
    */
  sConfig.Channel = ADC_CHANNEL_1;
  sConfig.Rank = 1;
  sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES;
  HAL_ADC_ConfigChannel(&hadc1, &sConfig);
 
}
Is it an error of CubeMX or STM32F4 (didn't see something in errata sheet) or I did a mistake ?

Outcomes