#define uint unsigned int
#define uchar unsigned char
#include
uint i;
uchar code TAB[]=[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void main(void)
{
TMOD=0x22; /*定時器0設定為工作方式2,基準定時(256-6)/1M=0.25ms*/
TH0 =6; //賦T0的預置值6,溢位4000次就是1秒鐘
TL0 =6;
ET0=1; //開啟定時器0中斷
EA=1; //開啟總中斷
TR0=1; //啟動定時器
while(1) //程式迴圈
P3=TAB[(i)];//p3送數
}
//定時器0中斷
void timer0(void) interrupt 1 using 1
static uint t; //注意t的範圍,這裡涉及到C51變數取值範圍這個知識點
t++;
if(t==4000) //T0的預置值6,溢位4000次就是1秒鐘,晶振12MHz
t=0;
i++;
i=i%10;
#define uint unsigned int
#define uchar unsigned char
#include
uint i;
uchar code TAB[]=[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void main(void)
{
TMOD=0x22; /*定時器0設定為工作方式2,基準定時(256-6)/1M=0.25ms*/
TH0 =6; //賦T0的預置值6,溢位4000次就是1秒鐘
TL0 =6;
ET0=1; //開啟定時器0中斷
EA=1; //開啟總中斷
TR0=1; //啟動定時器
while(1) //程式迴圈
{
P3=TAB[(i)];//p3送數
}
}
//定時器0中斷
void timer0(void) interrupt 1 using 1
{
static uint t; //注意t的範圍,這裡涉及到C51變數取值範圍這個知識點
t++;
if(t==4000) //T0的預置值6,溢位4000次就是1秒鐘,晶振12MHz
{
t=0;
i++;
i=i%10;
}
}