根据中文手册可以看到,开启adc转换需要2次设置ADON位
代码
// 开启ADC ,第一次使能
ADC_Cmd(ADC1, ENABLE);
// 初始化ADC 校准寄存器
ADC_ResetCalibration(ADC1);
// 等待校准寄存器初始化完成
while(ADC_GetResetCalibrationStatus(ADC1));
// ADC开始校准
ADC_StartCalibration(ADC1);
// 等待校准完成
while(ADC_GetCalibrationStatus(ADC1));
// 由于没有采用外部触发,所以使用软件触发ADC转换
//第二次使能
ADC_SoftwareStartConvCmd(ADC1, ENABLE);