新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)驅(qū)動12位AD轉(zhuǎn)換TLC2543電路圖+程序

51單片機(jī)驅(qū)動12位AD轉(zhuǎn)換TLC2543電路圖+程序

作者: 時(shí)間:2016-11-30 來源:網(wǎng)絡(luò) 收藏

void resultvolt()
{
volt=volt*5000.0/4334;//轉(zhuǎn)換成電壓顯示
}
void resultfroq()
{
froq=1000000.0/froq*2/2.0;//轉(zhuǎn)換頻率數(shù)值
}
void displayvolt(uint dat)
{
P2=0x10;
P0=tab[dat/1000]&0x7f;
delayms(1);
P0=0xff;
P2=0x20;
P0=tab[dat%1000/100];
delayms(1);
P0=0xff;
P2=0x40;
P0=tab[dat%100/10];
delayms(1);
P0=0xff;
P2=0x80;
P0=tab[dat%10];
delayms(1);
P0=0xff;
}
void displayfroq(uint dat)
{
P2=0x01;
P0=tab[dat/1000]&0x7f;
delayms(1);
P0=0xff;
P2=0x02;
P0=tab[dat%1000/100];
delayms(1);
P0=0xff;
P2=0x04;
P0=tab[dat%100/10];
delayms(1);
P0=0xff;
P2=0x08;
P0=tab[dat%10];
delayms(1);
P0=0xff;
}
void t0_int() interrupt 1
{
TH0=-froq/256;
TL0=-froq%256;
}
void t0_init(void)
{
TMOD=0x01;
ET0=1;
TR0=1;
EA=1;
}
void main()
{
t0_init();
P2=0xff;
P0=0xff;
while(1)
{
readADC(0);
delayms(1);
resultvolt();
resultfroq();
displayfroq(froq);
displayvolt(volt);
}
}

上一頁 1 2 下一頁

評論


技術(shù)專區(qū)

關(guān)閉