用ST软件stm32cubemx配置
我用的是ADC1的IN0 IN1 IN2 IN4 IN5 IN6 IN7通道、
这是配置!用的是非DMA模式。每个通道转换一次,软件触发。Rank必须写为7.
void Get_Adc_Data_1(uint8_t cont){
for(int i=0;i<7;i++){
HAL_ADC_Start(&hadc1);
//HAL_Delay(5);
HAL_ADC_PollForConversion(&hadc1,100);
if(HAL_IS_BIT_SET(HAL_ADC_GetState(&hadc1),HAL_ADC_STATE_REG_EOC)){
adc_databuf[0][i] = HAL_ADC_GetValue(&hadc1);
}
temp = (float) adc_databuf[0][i]*330/4096;
adc_data[i][cont] = temp;
}
HAL_ADC_Stop(&hadc1);
}
在adc.c文件里面添加上面代码就能读取7个通道的ADC值。