| |
void ADC_READ(unsigned char CH)
{
//初始化时 ADC_CONTR =0x80; //01100000 //ADC_POWER/SPEED1/SPED0/ADC_FLAG/ADC_START/CHS2/CHS1/CHS0
ADC_CONTR|=CH; //选择通道CH delay(20); //20uS_200us切换延时
ADC_CONTR|=0x8; //11101*** 启动ADC转换 delay(20);
while(ADC_CONTR & 0x10==0) ;//ADC_CONTR&=0x10; //00010000 判断转换是否完成查ADC_FLAG
ADC_CONTR=0x80; //01100000 清除ADC_FLAG_ 停止转换ADC_START 同时关闭电源
ADC_D[CH]=ADC_DATA;
ADC_D[CH+1]=ADC_LOW2;
ADC_DAT=ADC_D[CH]*4+ADC_D[CH+1]; //十位ADC
}