贴上曾经做过的PIC16f723的程序
unsigned char ADchange(unsigned char i)
{
unsigned char dat;
ADCON1 = 0x53; //0101 0011, 16分频,内部参考电压
FVRCON = 0xA3; //11 0000 11;参考电压4.096V
ADCON0 = ADcon_Amp[i]; //设置模拟通道,ADcon_Amp[i]为一数组
NOP();NOP();NOP();NOP();NOP();//电阻10K,等待采样完毕
GODONE = 1;
while(GODONE);//wait
dat = ADRES;
dat = dat >> 3; //数据转换
if(dat > 30)
{
dat = 30;
}
return dat;
}
|