www168-1528256 发表于 2016-7-6 08:57:49

STM8S103 两路ADC单次转换AD值不对

STM8S103 两路ADC单次转换AD值不对,分别为第2路、第5路,单独采集任何一路AD值都正常正确,但两路轮询就两路AD值都不正确。

void ADC_Data_Read(unsigned int *AD_Value,unsigned char ch)
{
ADC_CR1_bit.ADON = 0;
ADC_CSR_bit.CH=ch;
delay(1000);
ADC_CR1_bit.ADON = 1;       //启动ADC

delay(1000);
ADC_CR1_bit.ADON = 1;       //启动ADC

while(ADC_CSR_bit.EOC == 0);//等待转换结束
*AD_Value = ADC_DRH;          //先读取高8位
*AD_Value = (unsigned int)((*AD_Value << 8) + ADC_DRL);   
ADC_CSR_bit.EOC=0;
}


while(1)
{
   delay(1300);
   ADC_Data_Read(&adc_2,2);
   delay(1300);
   ADC_Data_Read(&adc_6,6);
}
页: [1]
查看完整版本: STM8S103 两路ADC单次转换AD值不对