模数转换ADC0804的应用实例(含源程序及电路)

时间:2012-08-18来源:网络

wela=0;

P0=0xfd;

wela=1;

wela=0;

delay(5);

P0=table[g_c];//显示个位

dula=1;

dula=0;

P0=0xfb;

wela=1;

wela=0;

delay(5);

}

void main()//主程序

{

uchar a,A1,A2,A2t,A3;

while(1)

{

wela=1;

P0=0;//选通ADCS

adwr=0;//AD写入(随便写个什么都行,主要是为了启动AD转换)

_nop_();

adwr=1;

P0=0xff;//关闭ADCS

delay(10);

wela=0;//关闭有AD片选信号锁存器的锁存端以防止在操作数码管时使AD的片选发生变化

for(a=20;a>0;a--)//需要注意的是ADC0804在写和读之间的时间间隔要足够长否则无法读出数据

{//这里把显示部分放这里的原因也是为了增加写读之间的时间隔

display(A1,A2,A3);

}//送去显示各位。

wela=1;//重新打开有AD片选信号锁存器的锁存端

P1=0xff;//读取P1口之前先给其写全

P0=0;//选通ADCS

adrd=0;//AD读使能

adval=P1;//AD数据读取赋给P1口

adrd=1;

P0=0xff;//关闭ADCS

adwr=0;

P1=adval;//同时把AD的值送八个发光二极显示

A1=adval/100;//分出百,十,和个位

A2t=adval%100;

A2=A2t/10;

A3=A2t%10;

};

}

1 2

关键词: 0804 ADC 模数转换 电路

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版