模數(shù)轉(zhuǎn)換ADC0804的應(yīng)用實例(含源程序及電路)
本文引用地址:http://www.ex-cimer.com/article/185910.htm
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轉(zhuǎn)換)
_nop_();
adwr=1;
P0=0xff;//關(guān)閉ADCS
delay(10);
wela=0;//關(guān)閉有AD片選信號鎖存器的鎖存端以防止在操作數(shù)碼管時使AD的片選發(fā)生變化
for(a=20;a>0;a--)//需要注意的是ADC0804在寫和讀之間的時間間隔要足夠長否則無法讀出數(shù)據(jù)
{//這里把顯示部分放這里的原因也是為了增加寫讀之間的時間隔
display(A1,A2,A3);
}//送去顯示各位。
wela=1;//重新打開有AD片選信號鎖存器的鎖存端
P1=0xff;//讀取P1口之前先給其寫全
P0=0;//選通ADCS
adrd=0;//AD讀使能
adval=P1;//AD數(shù)據(jù)讀取賦給P1口
adrd=1;
P0=0xff;//關(guān)閉ADCS
adwr=0;
P1=adval;//同時把AD的值送八個發(fā)光二極顯示
A1=adval/100;//分出百,十,和個位
A2t=adval%100;
A2=A2t/10;
A3=A2t%10;
};
}
DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY
電路相關(guān)文章:電路分析基礎(chǔ)
波段開關(guān)相關(guān)文章:波段開關(guān)原理
評論