STM32CubeMX | STM32使用HAL库的ADC多通道数据采集

轮训方式多通道采集
STM32CubeMX | STM32使用HAL库的ADC多通道数据采集

如果想使用轮训方式并且不使用DMA的多通道采集,那么就要配置为 【单次模式+间断模式】,并且将Number Of Discontinuous Conversions为1,也就是每个通道分成了一个组,配置如下图:

一、配置图:

STM32CubeMX | STM32使用HAL库的ADC多通道数据采集

二、代码:

// 获取ADC t=0 1 
uint16_t Get_Adc(uint8_t t)
{
  uint8_t i; 	
  uint16_t ADC_Value[2];//ADC
  for(i=0;i<2;i++)
  { 
	 HAL_ADC_Start(&hadc);     //启动ADC转换
     HAL_ADC_PollForConversion(&hadc, 50);   //等待转换完成,50为最大等待时间,单位为ms
 
     ADC_Value[i] = HAL_ADC_GetValue(&hadc); //获取AD值
   }
  
   HAL_ADC_Stop(&hadc); 
   
   return  ADC_Value[t];
 }
上一篇:【各种中断】STM32cubeMX HAL库综合复习


下一篇:【无标题】