- ADC_RegularChannelConfig(ADC1,ADC_Channel_13, 1,ADC_SampleTime_55Cycles5);设置指定规则组的通道的采样顺序和转换时间。这里以为只有一路通道,采用的是PC3引脚,对应的通道数是13通道,采样顺序也就是1,。
- ADC_Cmd(ADC1,ENABLE);使能ADC
- ADC_ITConfig(ADC1, ADC_IT_EOC,ENABLE);开启ADC转换结束中断。
- ADC_ResetCalibration(ADC1);//重置校验寄存器
- while(ADC_GetResetCalibrationStatu s(ADC1)); //等待重置校验成功
- ADC_StartCalibration(ADC1);//开始ADC校验
- while(ADC_GetCalibrationStatus(ADC1));//等待ADC校验好
- ADC_SoftwareStartConvCmd(ADC1, ENABLE);//软件触发开始转换
- 因为ADC有一个16位的规则组数据寄存器(ADC_DR),采用一路转换时可以不用通过DMA传输。这里就没有配置DMA。
- void ADC_IRQHandler(void)
- {
- ADCConvertedValue=ADC_GetConversionValue(ADC1);
- ADC_ClearITPendingBit(ADC1, ADC_IT_EOC);
- }
|