我是这样初始化的:
GPIOA_ModeCfg(GPIO_Pin_14, GPIO_ModeIN_Floating); //channnel 4
ADC_ExtSingleChSampInit(SampleFreq_3_2, ADC_PGA_0);
GPIOA_ModeCfg(GPIO_Pin_13, GPIO_ModeIN_Floating); //channnel 3
ADC_ExtSingleChSampInit(SampleFreq_3_2, ADC_PGA_0);
GPIOA_ModeCfg(GPIO_Pin_12, GPIO_ModeIN_Floating); //channnel 2
ADC_ExtSingleChSampInit(SampleFreq_3_2, ADC_PGA_0);
GPIOA_ModeCfg(GPIO_Pin_5, GPIO_ModeIN_Floating); //channnel 1
ADC_ExtSingleChSampInit(SampleFreq_3_2, ADC_PGA_0);
GPIOA_ModeCfg(GPIO_Pin_4, GPIO_ModeIN_Floating); //channnel 0
ADC_ExtSingleChSampInit(SampleFreq_3_2, ADC_PGA_0);
然后是这样采集的
while(1)
{
ADC_ChannelCfg(4);
adcData0 = ADC_ExcutSingleConver();
ADC_ChannelCfg(3);
adcData1 = ADC_ExcutSingleConver();
ADC_ChannelCfg(2);
adcData2= ADC_ExcutSingleConver();
ADC_ChannelCfg(1);
adcData3 = ADC_ExcutSingleConver();
ADC_ChannelCfg(0);
adcData4 = ADC_ExcutSingleConver();
}
结果我会发现当channel3的芯片管脚电压不变的情况时候,改变channel4的电压会影响到adcData1 ,其余三个通道不会收到影响。