新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī) 用數(shù)碼管顯示動態(tài)檢測結(jié)果

51單片機(jī) 用數(shù)碼管顯示動態(tài)檢測結(jié)果

作者: 時(shí)間:2016-11-23 來源:網(wǎng)絡(luò) 收藏
注:本數(shù)碼管為共陰極,P2為位選口,P0為數(shù)據(jù)口

本實(shí)驗(yàn)是一個(gè)60s計(jì)數(shù)器,當(dāng)滿60s后,此時(shí)又從00開始計(jì)數(shù)

本文引用地址:http://m.butianyuan.cn/article/201611/320421.htm

#include
unsigned char Tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsigned char int_time;
unsigned char second;
void delay(void)
{
unsigned char i;
for(i=0;i<250;i++)
;
}
void Display(unsigned char k)
{
P2=0xfd;
P0=Tab[k/10];
delay();
P2=0xfe;
P0=Tab[k];
delay();
P2=0xff;
}
void main()
{
TMOD=0x01;
TH0=15536/256; //50ms發(fā)生一次中斷
TL0=15536%6;
EA=1; //開啟總中斷源
ET0=1;//定時(shí)器T0中斷允許
TR0=1; //啟動定時(shí)器0
int_time=0;//中斷次數(shù)初始化
second=0; //秒初始化
while(1)
{
Display(second);
}
}

void interserver(void) interrupt 1 using 1
{
TR0=0;
int_time++;
if(int_time==20)
{
int_time=0;
second++;
if(second==60)
second=0;
}
TH0=15536/256;
TL0=15536%6;
TR0=1;
}



評論


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

關(guān)閉