这是一份加急帖,求大神们指教!
(1)开始时,倒计时器数码管显示“24”(2)按下SP1,开始倒计时;
(3)按下SP2,计时暂停;
(4)再次按下SP1后,计时继续。
(5)SP3按钮功能为计时清零,系统复位。
发挥功能:设置两个指示灯D1(绿灯)、D2(黄灯),正常倒计时时绿灯D1亮,暂停时黄灯D2亮,倒计时至0后指示灯D1、D2同时以10Hz频率闪烁。
这是篮球24秒倒计时的要求。
#include<reg51.h>
#define uchar unsigned char
unsigned char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsigned int time=0,time1=25;
sbit com0=P3^0;
sbit com1=P3^1;
sbit key=P1^0;
sbit key1=P1^1;
sbit key2=P1^2;
sbit D1=P1^3;
sbit D2=P1^4;
void delay()
{
unsigned char m;
m=500;
while(m--);
}
void display(unsigned char luo)
{
com0=1;
P2=tab[luo/10];
delay();
com0=0;
com1=1;
P2=tab[luo%10];
delay();
com1=0;
}
void daojishi()
{
time1--;
if(time1==-1) time1=25;
}
void main(void)
{
unsigned char j;
while(1)
{
if(key==0) {time=24;D1=0;D2=1;}
if(key==1) {time1=25;D1=1;D2=1;}
{
daojishi();
for(j=200;j>0;j--)
{display(time1);}
}
if(time1==0)
{
while(1)
{
com0=1;
com1=1;
delay();
D1=0;
D2=0;
delay();
D1=1;
D2=1;
delay();
if(key==1) break;
}
}
}
}
现在只有按键1能够运行,按键2跟按键三还不能控制,请问一下怎么加入中断程序?