來個最簡間的思路
#include<reg52.h>
#define DataPort P0 //定義段數(shù)據(jù)端口
#define SegPort P2 //定義位數(shù)據(jù)端口
unsigned char code dofly_DuanMa[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f};
unsigned char code dofly_WeiMa[]={0,1,2,3,4,5,6,7};
void Delay(unsigned int t);
main()
{
unsigned char i=0,num;
unsigned int j;
while(1)
{
SegPort=dofly_WeiMa[i]; //取位碼
DataPort=dofly_DuanMa[num+i]; //取段碼
Delay(200);
i++;j++;
if(8==i)
i=0;
if(j==500)
{
j=0;
num++;
if(num==16)
num=0;
}
}
}
void Delay(unsigned int t)
{
while(--t);
}
|