配置ADC模块主要可以分成四步
一、开启并配置adc以及gpio口的时钟
同样使用rcc_apb2periph_clockcmd函数来开启时钟
再使用 RCC_ADCCLKConfig 来配置时钟分频
一般来说可以72Mhz的时钟adc的频率需要再14MHz之下,所以一般只能选择6/8分频
紧接着配置adc 的通道
使用ADC_RegularChannelConfig()来配置
需要填四个参数,(ADC_TypeDef* ADCx, uint8_t ADC_Channel, uint8_t Rank, uint8_t ADC_SampleTime)
ADC_TypeDef* ADCx : where x can be 1, 2 or 3 to select the ADC peripheral. 用于选择使用的是
ADC_Channel :the ADC channel to configure.
ADC_SampleTime:采样时间参数。 采样时间大,越稳定;参数小,转换快。
填充规则菜单的方法
ADC_RegularChannelConfig(ADC1, ADC_Channel_2, 1, ADC_SampleTime_55Cycles5);
ADC_RegularChannelConfig(ADC1, ADC_Channel_3, 2, ADC_SampleTime_55Cycles5);
ADC_RegularChannelConfig(ADC1, ADC_Channel_4, 3, ADC_SampleTime_55Cycles5);
等像这样去添加
然后再初始化ADC (使用函数ADC_Init() 来初始化。)需对每个成员都进行配置
主要配置ADC的模式
单次还是连续,扫描还是非扫描,左对齐还是右对齐,单通道adc还是双adc ,外部触发还是内部软件触发
最后ADC_Cmd()来使能adc
校准adc
复位函数校准
等待复位校准完成 需要用while来等待