写完以后发现开始和暂停是一个按键,该怎么改一下
#include<reg52.h> //���ļ��ж����˵�Ƭ����һЩ����ܼĴ���
#define uint unsigned int // ???
#define uchar unsigned int
uchar code table0[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar code table1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
sbit du=P2^6; // ����ܶ�ѡ����������λ
sbit we=P2^7; // �����λѡ����������λ
sbit S2=P3^0; // ����S2
sbit S3=P3^1; // ����S3
sbit S4=P3^2; // ����S4
long shu; // ����������
// ��ʱ����
void delay(int z)
{
unsigned int x,y;
for(x=z;x>0;x--)
for(y=114;y>0;y--);
}
// �������ʾ����
void display(uchar aa,uchar bb,uchar cc,uchar dd,uchar ee,uchar ff)
{
du=1;P0=table0[aa];du=0;we=1;P0=0xfe;we=0;delay(1);
du=1;P0=table1[bb];du=0;we=1;P0=0xfd;we=0;delay(1);
du=1;P0=table0[cc];du=0;we=1;P0=0xf7;we=0;delay(1);
du=1;P0=table1[dd];du=0;we=1;P0=0xef;we=0;delay(1);
du=1;P0=table0[ee];du=0;we=1;P0=0xbf;we=0;delay(1);
du=1;P0=table0[ff];du=0;we=1;P0=0x7f;we=0;delay(1);
we=1;P0=0xff;we=1;
}
void init() //��ʼ������
{
TMOD=0x01; //��ʱ��0����ģʽΪģʽ1
TH0=(65536-9000)/256; //��ʱ��0��8λ��ֵ��ʵ�ֶ�ʱ1ms
TL0=(65536-9000)%256;; //��ʱ��0��8λ��ֵ��ʵ�ֶ�ʱ1ms
ET0=1; //��ʱ��0�ж�����
EA=1; //ȫ���ж�����
TR0=0; //��ʱ��0ֹͣ����
P3=0xff; //P3�ڳ�ʼ��Ϊ�ߵ�ƽ
}
void main() //������
{
init(); //���ó�ʼ������
while(1) //��ѭ��
{
if (S2==0) //�ж�S2�Ƿ��£��͵�ƽ��
{
delay(15); //��ʱ������������
if(S2==0) //�ٴ��ж�S2�Ƿ���
{
TR0=~TR0; //��ʱ��0��ʼ��ֹͣ������ͨ��ȡ��TR0ʵ�֣�
while(S2==0); //�ȴ�S2�ɿ����ߵ�ƽ��
}
}
if(S3==0) //�ж�S3�Ƿ��£��͵�ƽ��
{
delay(15); //��ʱ������������
while(1) //����ѭ��
{
display(0,0,0,0,0,0); //���������ʾ����
if(S2==0) //�ж�S2�Ƿ���
{
delay(15); //��ʱ������������
shu=0; //����������
TR0=0; //��ʱ��0ֹͣ����
break; //����ѭ��
}
}
}
display(shu/6000/10,shu/6000%10,shu%6000/100/10,shu%6000/100%10,
shu%6000%100/10,shu%6000%100%10);
}
}
void timer0() interrupt 1 //��ʱ���ж�
{
TH0=(65536-9000)/256; //��ʱ��0��8λ��ֵ��ʵ�ֶ�ʱ1ms
TL0=(65536-9000)%256; //��ʱ��0��8λ��ֵ��ʵ�ֶ�ʱ1ms
shu++; //��������1
if(shu==600000) //�������ﵽ600000ʱ�����¿�ʼ����
shu=0;
}
}
65行,你前面判断的还是S3,怎么一下变成S2了
initial begin
// Initialize Inputs
W_Data = 0;
R_Addr_A = 10101;
R_Addr_B = 0;
W_Addr = 0;
Write_Reg = 0;
rst = 0;
clk = 0;
#100
W_Data = 32'hAAAAAAAA;
R_Addr_A = 0;
R_Addr_B = 0;
W_Addr = 10101;
Write_Reg = 1;
#100
W_Data = 0;
R_Addr_A = 10101;
R_Addr_B = 0;
W_Addr = 0;
Write_Reg = 0;
rst = 0;
clk = 0;
#100
W_Data = 32'hFFFFFFFF;
R_Addr_A = 0;
R_Addr_B = 0;
W_Addr = 10101;
Write_Reg = 1;
clk = 1;
#100
W_Data = 0;
R_Addr_A = 10101;
R_Addr_B = 0;
W_Addr = 0;
Write_Reg = 0;
clk = 0;
#100
rst = 1;
W_Data = 0;
R_Addr_A = 10101;
R_Addr_B = 0;
W_Addr = 0;
Write_Reg = 0;
#100
rst = 0;
W_Data = 0;
R_Addr_A = 01010;
R_Addr_B = 0;
W_Addr = 0;
Write_Reg = 0;
#100
W_Data = 32'hAABBCCDD;
R_Addr_A = 0;
R_Addr_B = 0;
W_Addr = 01010;
Write_Reg = 1;
clk = 1;
#100
W_Data = 0;
R_Addr_A = 01010;
R_Addr_B = 0;
W_Addr = 0;
Write_Reg = 0;
#100;
W_Data = 0;
R_Addr_A = 0;
R_Addr_B = 0;
W_Addr = 0;
Write_Reg = 0;
#100;
end
endmodule