#include
#define uchar unsigned char;
#define uint unsigned int;
uchar a[]={0xc0,0xf9,0xa4,0xb0,0x99,
0x92,0x82,0xf8,0x80,0x90};
uchar e,d,t;
void chushihua();
uint x,y,b;
main()
{
chushihua();
while(1);
}
void chushihua()
{
TMOD=0X05;
ET0=1;
TR0=1;
EA=1;
TH0=(65536-65534)/256;
TL0=(65536-65534)%256;
}
void zhongduan() interrupt 1
{
TH0=(65536-65534)/256;
TL0=(65536-65534)%256;
t++;
P1=a[t%10];
P2=a[t/10];
if(t==100)
t=0;
}
/*void delay()
{
for(x=50;x>0;x--)
for(y=1211;y>0;y--);
} */
这是我写的程序 请学长们帮忙改一下
1. 变量要初始化, t的初值是多少?
2. 以下是你需要的吗
TH0=(65536-65534)/256;
TL0=(65536-65534)%256;
3. 函数命名、变量命名还是要讲究的
1. ? 变量要初始化, ? t的初值是多少?
2. ? 以下是你需要的吗 ?
TH0=(65536-65534)/256; ?
TL0=(65536-65534)%256; ?
3. ? 函数命名、变量命名还是要讲究的
4. 别忘了清中断标记
TMOD=0X05; 你这是在对外部脉冲计数模式而不是定时器
P1=a[t%10];
P2=a[t/10];你是想让p1口和p2口分别显示个位十位吧,但是这两个口你是接什么呢?