//数码管跑马灯
#include<reg52.h>
#define uint unsigned int
uint led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; //p0端0到f,
0x7f为点
uint ledx[]={0x00,0x0e,0x0d,0x0b,0x07,0xff} ; //p2端都亮,到都灭
void delay(unsigned int xms) //延时程序
{
unsigned int x,y;
for(x=xms;x>0;x--)
for(y=110;y>0;y--);
}
void main(void)
{ unsigned int a=10000;
while(1)
{
int tem=1;
int i=0;
while(1)
{
P0=led[i];
P2=ledx[tem];
delay(800);
if(tem==4&&i==9){tem=1;i=0;continue;}
else if(tem==4){tem=1;i++;continue;}
else if(i==9){i=0;tem++;continue;}
tem++;
i++;
}
}
}
//显示1314
#include<reg52.h>
#define uint unsigned int
uint led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; //p0端0到f,0x7f为点
uint ledx[]={0x00,0x0e,0x0d,0x0b,0x07,0xff} ; //p2端都亮,到都灭
void delay(unsigned int xms) //延时程序
{
unsigned int x,y;
for(x=xms;x>0;x--)
for(y=110;y>0;y--);
}
void main(void)
{
while(1)
{
P2=ledx[1];
P0=led[1];
delay(5);
P2=ledx[2];
P0=led[3];
delay(5);
P2=ledx[3];
P0=led[1];
delay(5);
P2=ledx[4];
P0=led[4];
delay(5);
}
}