标题:
基于单片机的酒精测试仪AD代码转换
[打印本页]
作者:
单片机一号
时间:
2017-11-30 12:13
标题:
基于单片机的酒精测试仪AD代码转换
AD转换器初始化设定函数。
voidADC_Init()
{
uinti;
P1ASF=0x80;//P1口功能设定
ADC_RES=0;//AD转换结果清
0
ADC_CONTR|=0x80;//ADC寄存器设定
for(i=5000;i>0;i--);//短暂延时
ADC_CONTR=ADC_CONTR&0xE0;//ADC寄存器设定
ADC_CONTR=ADC_CONTR&0xf8|0x07;//ADC寄存器设定
for(i=2500;i>0;i--);//短暂延时
}
2)获取AD转换结果函数。
ucharGetADVal()
{
uinti;
ADC_CONTR&=0xf7;//开启转换
for(i=250;i>0;i--);//短暂延时
ADC_RES=0;//清除结果
ADC_CONTR|=0x08;
while((ADC_CONTR&0x10)==0);//等待转换结束
ADC_CONTR&=0xe7;
}
3)主函数中通过调用GetADVal()函数计算酒精浓度,语句为:
ALValue=(long)500*GetADVal()/256;//换算转换结果
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1