新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)學(xué)習(xí)之4-數(shù)碼管

51單片機(jī)學(xué)習(xí)之4-數(shù)碼管

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

while(1)

{

if(aa==20)//50ms*20=1000ms=1s

{

aa=0;

g++;//個(gè)位自增

if(g==10)

{

s++;//十位自增

g=0;

}

if(s==10)

{//百位自增

b++;

s=g=0;

}

if(b==10)

b=s=g=0;

}

ShowTime(table[b],table[s],table[g]);

}

}

/********數(shù)碼管顯示函數(shù)********/

voidShowTime(ucharbai,ucharshi,ucharge)

{

//顯示百位

dual=1;

P0=bai;

dual=0;

P0=0xff;

weal=1;

P0=0xfe;

weal=0;

delay(YsTime);

//顯示十位

dual=1;

P0=shi;

dual=0;

P0=0xff;

weal=1;

P0=0xfd;

weal=0;

delay(YsTime);

//顯示個(gè)位

dual=1;

P0=ge;

dual=0;

P0=0xff;

weal=1;

P0=0xfb;

weal=0;

delay(YsTime);

}

/********延時(shí)函數(shù)********/

voiddelay(uintz)

{

uintx,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

/********中斷函數(shù)每50ms觸發(fā)一次********/

voidtimer0()interrupt1

{

TH0=(65536-Time)/256;

TL0=(65536-Time)%256;

aa++;

}

也有采用BCD-7段譯碼芯片:共陽型的74LS48、74LS49、CD4511。共陰的74LS46、74LS47、CD4513。

第十二集

霖鋒教程中的是兩個(gè)四位一體共陰型數(shù)碼管,通過一片74HC573芯片控制兩個(gè)四位數(shù)碼管的段選,通過一片74HC138芯片選擇位數(shù)碼管(即位選)。

74HC138的引腳說明:



先把一些簡單的引腳說一下:

GND接地、VCC接電源正極。

E1、E2:低電平有效,如果其中一個(gè)為高電平則無法操控芯,Y0—Y7輸出全高電平。

E3:高電平有效,如果為低電平則無法操控芯片,Y0—Y7輸出全高電平。

如果要控制芯片首先是VCC和GND接電源,E1、E2低電平或接低,E3高電平。

下面這三個(gè)引腳是比較重要的:

A組IO口是輸入,Y組端口是輸出。

A0、A1、A2是用來控制Y0—Y7輸出電平狀態(tài),往里面輸入八進(jìn)制數(shù)即可指定Y0—Y7中其中一個(gè)為低電平。例如想要Y5為低電平,那么5的八進(jìn)制為101,只需要給A2=1、A1=0、A0=1,即可讓Y5為低電平。想要Y3為低電平,那么3的八進(jìn)制為011,只需要給A2=0、A1=1、A0=0即可。

記住,A組IO只是控制Y組的某一IO輸出低電平而已,其余都為高電平。

教程中有八位數(shù)碼管,所有剛好Y組全部都用上。


上一頁 1 2 3 下一頁

關(guān)鍵詞: 51單片機(jī)數(shù)碼

評論


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

關(guān)閉