应用HK32F030做ADC转换时必须注意航顺芯片030的ADC在Calibration后会把ADRDY标志置起来,而ST的不会,这样后面打开ADON时检查ADRDY标志时会立即检查到,这样导致AD没有正常启动。改正方法按照如下顺序处理:
ADC_GetCalibrationFactor(ADC1);
//对于HK32F03x必须在校准后清除ADC_FLAG_ADRDY标志,否则start ADC不会启动,
ADC_ClearFlag(ADC1,ADC_FLAG_ADRDY);
/* Enable ADC_DMA */
ADC_DMACmd(ADC1, ENABLE); |