求大佬幫幫!為了實現設計實現24秒計時器。要求(1)倒計時功能(2)24秒復位鍵功能(3)啟動/暫停鍵功能;proteus仿真圖是這樣子畫的,代碼是下面這樣子寫得,但是仿真一點反應都沒有,代碼編譯說有一段代碼沒有被用到,到底是哪里出了問題  ,單片機萌新真不會啊,是不是 中斷程序聲明調用那部分出了問題
1.png (56.61 KB, 下載次數: 31)
下載附件
2023-6-8 23:28 上傳
單片機源程序如下:
#include<reg51.h>
unsigned char code table []={0x3f, 0x06,0x5b, 0x4f,
0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f};
sbit start_stop =P3^2;
sbit P1_0=P1^0;
sbit P1_1=P1^1;
unsigned char time,cnt;
bit key_flag;
void delay (void)
{
unsigned int i;
for (i=0;i<2000;i++);
}
void display(unsigned char temp)
{
unsigned char shi,ge;
shi=temp/10;
ge=temp%10;
P1&=0xfC;
P2=table[shi];
P1_0=1;
delay();
P1&=0xfC;
P2=table[ge];
P1_1=1;
delay();
P2=0;
P1&=0xf0;
}
void t0_int(void){}
void ex_int(void){}
void main(void)
{
t0_int();
ex_int();
while(1);
{
display(time);
}
}
void ex0_int(void) interrupt 0
{
key_flag=!key_flag;
if(key_flag) TR0=1;
else TR0=0;
}
void ex1_int(void) interrupt 2
{
time=24;
}
void t0_int(void) interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
cnt++;
if(cnt==20)
{
cnt =0;
time--;
if(time==0) time=24;
}
}
|