轮训方式多通道采集
如果想使用轮训方式并且不使用DMA的多通道采集,那么就要配置为 【单次模式+间断模式】,并且将Number Of Discontinuous Conversions为1,也就是每个通道分成了一个组,配置如下图:
一、配置图:
二、代码:
// 获取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];
}