已经解决 现在差 让他一直显示 有大佬帮帮忙吗?
#include"reg51.h"
#define uchar unsigned char
#define uint unsigned int
uint TABLE[]={0xff00,0xfff3,0x7788,0x77c0,0x7773,0x7744,0x7704,0xfff0,0x7700,0x7740,0x7730,0x7707,0xff0c,0x7783,0x770c,0x773c,0x55ff,0x77ff,0xffcc,0xffff};//0-f+-= qingkong
sbit mum1=P1^0;sbit mum2=P1^1;sbit add=P1^2;sbit sub=P1^3; sbit ab=P3^0;sbit bc=P3^1;sbit cd=P3^2;sbit de=P3^3;sbit ef=P3^4;sbit fg=P3^5;
void Delayms(unsigned int x)
{unsigned char t; while(x--)for(t=0;t<120;t++);}
void main()
{ unsigned char i,j;
while(1)
{ if(!add)
{ start1:
while(1)
{
if(!mum1)
{
Delayms(10);
if(!mum1)
P3=1; //diyigeshu
P0=TABLE[i];
P2=TABLE[i]>>8;
i=++i%16;
while(!mum1){Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;};
P3=2; //+
P0=TABLE[16];
P2=TABLE[16]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;
P3=4;
if(j%16-1>-1) //diergeshu
{P0=TABLE[j%16-1];
P2=TABLE[j%16-1]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}
else {P0=TABLE[15];
P2=TABLE[15]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8; }
P3=8; //=
P0=TABLE[18];
P2=TABLE[18]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;
if(((i-1)%16+(j-1)%16)<16) //fuhao
{P3=32;
P0=TABLE[(i-1)%16+(j-1)%16];
P2=TABLE[(i-1)%16+(j-1)%16]>>8;}
else
{P3=16;
P0=TABLE[1];
P2=TABLE[1]>>8; Delayms(400); P0=TABLE[19];
P2=TABLE[19]>>8;
P3=32;
P0=TABLE[(i-1)%16+(j-1)%16-16];
P2=TABLE[(i-1)%16+(j-1)%16-16]>>8;Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}}
if(!mum2)
{
Delayms(10);
if(!mum2)
P3=4;
P0=TABLE[j];
P2=TABLE[j]>>8;
j=++j%16;
while(!mum2){Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;};
Delayms(10);
P3=1;
if(i%16-1>-1) //diyigeshu
{P0=TABLE[i%16-1];
P2=TABLE[i%16-1]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}
else {P0=TABLE[15];
P2=TABLE[15]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8; }
P3=2; //+
P0=TABLE[16];
P2=TABLE[16]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;
P3=4;
if(j%16-1>-1) //diergeshu
{P0=TABLE[j%16-1];
P2=TABLE[j%16-1]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}
else {P0=TABLE[15];
P2=TABLE[15]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8; }
P3=8; //=
P0=TABLE[18];
P2=TABLE[18]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;
if(((i-1)%16+(j-1)%16)<16) //fuhao
{P3=32;
P0=TABLE[(i-1)%16+(j-1)%16];
P2=TABLE[(i-1)%16+(j-1)%16]>>8;}
else
{P3=16;
P0=TABLE[1];
P2=TABLE[1]>>8; Delayms(400); P0=TABLE[19];
P2=TABLE[19]>>8;
P3=32;
P0=TABLE[(i-1)%16+(j-1)%16-16];
P2=TABLE[(i-1)%16+(j-1)%16-16]>>8;Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}}
if(!sub)
{ break;goto start0; }
} }
if(!sub)
{
start0: while(1)
{
if(!mum1)
{
Delayms(10);
if(!mum1)
P3=1; //diyigeshu
P0=TABLE[i];
P2=TABLE[i]>>8;
i=++i%16;
while(!mum1){Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;};
P3=2; //-
P0=TABLE[17];
P2=TABLE[17]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;
P3=4;
if(j%16-1>-1) //diergeshu
{P0=TABLE[j%16-1];
P2=TABLE[j%16-1]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}
else {P0=TABLE[15];
P2=TABLE[15]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8; }
P3=8; //=
P0=TABLE[18];
P2=TABLE[18]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;
if(((i-1)%16-(j-1)%16)>-1) //fuhao
{P3=32;
P0=TABLE[(i-1)%16-(j-1)%16];
P2=TABLE[(i-1)%16-(j-1)%16]>>8;}
else
{P3=16;
P0=TABLE[17];
P2=TABLE[17]>>8; Delayms(400); P0=TABLE[19];
P2=TABLE[19]>>8;
P3=32;
P0=TABLE[(j-1)%16-(i-1)%16];
P2=TABLE[(j-1)%16-(i-1)%16]>>8;Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}}
if(!mum2)
{
Delayms(10);
if(!mum2)
P3=4;
P0=TABLE[j];
P2=TABLE[j]>>8;
j=++j%16;
while(!mum2){Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;};
Delayms(10);
P3=1;
if(i%16-1>-1) //diyigeshu
{P0=TABLE[i%16-1];
P2=TABLE[i%16-1]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}
else {P0=TABLE[15];
P2=TABLE[15]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8; }
P3=2; //-
P0=TABLE[17];
P2=TABLE[17]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;
P3=4;
if(j%16-1>-1) //diergeshu
{P0=TABLE[j%16-1];
P2=TABLE[j%16-1]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}
else {P0=TABLE[15];
P2=TABLE[15]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8; }
P3=8; //=
P0=TABLE[18];
P2=TABLE[18]>>8;
Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;
if(((i-1)%16-(j-1)%16)>-1) //fuhao
{P3=32;
P0=TABLE[(i-1)%16-(j-1)%16];
P2=TABLE[(i-1)%16-(j-1)%16]>>8;}
else
{P3=16;
P0=TABLE[17];
P2=TABLE[17]>>8; Delayms(400); P0=TABLE[19];
P2=TABLE[19]>>8;
P3=32;
P0=TABLE[(j-1)%16-(i-1)%16];
P2=TABLE[(j-1)%16-(i-1)%16]>>8;Delayms(300); P0=TABLE[19];
P2=TABLE[19]>>8;}
} if(!add)
{ break;goto start1; } } }
}
}
|