void AD() //AD转换函数.使用P14口做AD转换(光敏电阻)
{
uint DATA;
ADC_CONTR = 0x84; //1000,0100 打开A/D转换电源 ,并选择P14作为AD转换接口
delayms(1);
ADC_RES = 0; //清A/D转换结果寄存器 高八位
ADC_CONTR= 0x8; //开始转换
delayms(1); //延时等待转换结束
while((ADC_CONTR & 0x10)==0); //00010000等待A/D转换结束
{
ADC_CONTR = ADC_CONTR & 0x84; //10000100清ADC_FLAG位,停止A/D转换
}
DATA = ACD_RES;
return(DATA)
}
这是我写的程序.我只是个爱好者.正在学51.用的是STC的单片机
这样读取的DATA应该是二进制的吧?
但是我想在return之前把他转换成10进制的要怎么办?
我是第一次写ADC..什么都不懂,上面的程序可能有些残缺或冗余..希望帮修改一下..谢谢!