参照官方库例程写了一个简单的AD转换程序,但是程序运行后AD转换始终没开启。存放AD转换结果的寄存器中的数据是随机的 有知道原因的吗?主程序如下
void main(void)
{
/* CLK configuration -------------------------------------------*/
CLK_Config();
/* ADC configuration -------------------------------------------*/
ADC_Config();
/* Initialize LEDs mounted on YANGAN board */
GPIO_Init(AD_GPIO_PORT, AD_GPIO_PINS, GPIO_Mode_Out_PP_Low_Fast);
AD_Smoke_PowerOn();
/* Init TIM2 to generate 1 ms time base update interrupt */
//TimingDelay_Init();
/* Enable Interrupts */
//enableInterrupts();
/* Infinite loop*/
while (1)
{
uint16_t samp=0;
while(ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC) == RESET);//等待采样完成
ADC_ClearFlag(ADC1, ADC_FLAG_EOC);//清采样完成标志
samp = ADC_GetConversionValue(ADC1);//读取采样数据
ADC_SoftwareStartConv(ADC1);//重新启动采样
}
}
|