51单片机之数码管动态显示【74HC573】
点击可下载配套电子资源
#include"reg51.h"
#define uchar unsigned char
#define uint unsigned int
uchar code shuzima[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x80,0x17};
uint ms,sec,z,num;
void delay(int x);
void main()
{
TMOD = 0X02;
TH0 = 6;
TL0 = 6;
EA = 1;
ET0 = 1;
TR0 = 1;
P0 = shuzima[0];
P1 = 0XFC;
while(1)
{
if(z==1)
{
P1 = 0xfd;
P0 = shuzima[sec%10];
}
if(z==2)
{
P1 = 0xfe;
P0 = shuzima[sec/10];
z=0;
}
}
}
void time() interrupt 1
{
num++;
if(!(num%4))
{
ms++;
num=0;
if(!(ms%5))
{
z++;
}
if(!(ms%1000))
{
sec++;
ms=0;
if(sec==100)
sec = 0;
}
}
}
点击可下载配套电子资源