我在一个项目中遇到了这样的问题,我要用两路ADC采样两个电压,一个AIN4,一个AIN5,但是通道切换不过来,AIN4通道检测出的数是对的,但是通道AIN5检测出的数却一直跟AIN4的数一样。
这是我写的程序,初始化就不说了
void ADC_collect(unsigned char adc_chx) //adc_chx为通道号
{
ADC_CSR=adc_chx;
adc_data=转换结果;
}
然后是调用
ADC_collect(AIN4) //检测第一路电压
adc_u1=adc_data;
ADC_collect(AIN5) //检测第二路电压
adc_u2=adc_data;
得出的结果总是adc_u2=adc_u1 ,或者差1或2
这是什么什么问题 |