本人写了一个AD采集程序,一直不成功,程序如下: void main(void) { CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV8); //hsi8分频,2MZ //采样 AIN3 GPIO_Init(GPIOB, GPIO_PIN_3, GPIO_MODE_IN_FL_NO_IT); ADC1_Cmd(ENABLE); ADC1_DeInit(); /* Init ADC1 peripheral */ ADC1_Init(ADC1_CONVERSIONMODE_SINGLE, ADC1_CHANNEL_3, ADC1_PRESSEL_FCPU_D2,\ ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL3,\ DISABLE); ADC1_DataBufferCmd(DISABLE); ADC1_Cmd(ENABLE); ADC1_ITConfig(ADC1_IT_EOCIE,ENABLE); enableInterrupts(); ADC1_StartConversion(); while (1) { } 中断函数:uint16_t datel,i; ADC1_Cmd(DISABLE); //关了ADC ADC1_ClearFlag(ADC1_FLAG_EOC); //清理标记位 datel = ADC1_GetConversionValue(); 这样为什么datel的数据是0x0000呢,求大家解答。 |
回复:关于AD转换的一个小问题希望大家帮忙解决
回复:关于AD转换的一个小问题希望大家帮忙解决
回复:关于AD转换的一个小问题希望大家帮忙解决
哎,最后还是自己解决了问题,原来是引脚接错了。。。。程序是没问题的
呵呵,硬件上的问题还是得靠自己解决
RE:关于AD转换的一个小问题希望大家帮忙解决
回复:关于AD转换的一个小问题希望大家帮忙解决