|
立方光做出來后一直在呼吸等模式跳不出來,按鍵按上沒反應(yīng),以下是主程序,晶振是22點(diǎn)幾的,線路檢查后無錯(cuò)誤。
延時(shí)
void delay(int t)
{
int i;
while(t--)
for(i=0;i<700;i++);
}
void delay1(int t)
{
char i;
while(t--)
for(i=0;i<20;i++);
}
主函數(shù)
void main()
{
int i,j;
char go;
delay(800);
init(); //3õê¼»ˉoˉêy
////////////////////////oôÎüμÆ
while(!menu)
{
P2=0xff;
P0=0;
P2=0x80;
P4=1;
for(i=0;i<400;i++)
{
key_menu_scan();
if(menu)
break;
P0=0x80;
delay1(i);
P0=0;
delay1(400-i);
if(i<200)
{
j=2;
while(j--)
{
P0=0x80;
delay1(i);
P0=0;
delay1(400-i);
}
}
}
for(i=0;i<401;i++)
{
if(menu)
break;
key_menu_scan();
P0=0x80;
delay1(400-i);
P0=0;
delay1(i);
if(i>200)
{
j=2;
while(j--)
{
P0=0x80;
delay1(400-i);
P0=0;
delay1(i);
}
}
}
for(i=0;i<400;i++)
{
key_menu_scan();
if(menu)
break;
P0=0x80;
delay1(i);
P0=0;
delay1(400-i);
if(i<200)
{
j=2;
while(j--)
{
P0=0x80;
delay1(i);
P0=0;
delay1(400-i);
}
}
}
for(i=0;i<401;i++)
{
if(menu)
break;
key_menu_scan();
P0=0x80;
delay1(400-i);
P0=0;
delay1(i);
if(i>200)
{
j=2;
while(j--)
{
P0=0x80;
delay1(400-i);
P0=0;
delay1(i);
}
}
}
}
P4M0=0x00; //P3¿úéèÖÃÎa׼˫Ïò¿ú
///////////////////////////¿a»úé¨Ãè
turn_on(10);
H_scan(20);
V_scan(20);
W_scan(20);
/////////////////Ö÷2Ëμ¥Ñ¡Ïî
while(1)
{
hy(number+37*8,2);
while(!amenu)
{
W_side(number+(36+menu)*8,1,45);
}
switch(menu){
case 1://òôÆ×ÏÔê¾
delay(400);
while(!out)
{
TR0=1;
FFT();
}
TR0=0;
break;
case 2://¶ˉ»-ÏÔê¾
delay(400);
amenu=0;//menu=1;
go=1;
cut();
go=1;
while(go) //¶ˉ»-£oμ1¼Æê±98765443210
{
for(i=0;i<10;i++)
hy(number+27*8+i*8,3);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //×ÖĸDy×a
{
zimu(number,19,12,1);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //½e×ÖËtμãμÆDy×a
{
fn(4);
if(out)
go=1;
else
go=0;
}
go=1;
while(go)
{
out=0;
flash0(2);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //μ¥2ãéÏÏÂ
{
linkpc1(10);
pc1(4,3);
if(out)
go=1;
else
go=0;
}
go=1;
while(go)
{
leitu(yc_table,5,2); //I ai U
if(out)
go=1;
else
go=0;
}
go=1;
while(go)
{
denghuo(3); //íò¼òμÆ»e
if(out==1)
go=1;
else
go=0;
}
go=1;
while(go) //Ë®μÎ
{
water1(1,2,10);water1(2,4,10);
water1(4,3,10);water1(7,1,10);
water1(5,6,10);
water2(0,2,7,1,9);
water2(2,4,7,7,9);
water2(4,7,7,1,9);
water2(3,6,7,7,9);
water2(4,1,6,6,9);
water2(7,3,1,2,9);
water3(0,4,7,4,5,1,9);
water3(7,7,0,0,0,7,9);
water3(0,6,6,6,5,1,9);
water3(6,7,0,0,2,2,9);
water3(3,3,6,6,2,2,9);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //à′»Ø×a¶ˉ
{
clc();
link_pingmian1(1);
pingmian1(8,3);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //ϽμÏÔ×Ö
{
for(i=0;i<7;i++)
print(tab_print+i*8,1);
for(i=7;i<11;i++)
print(tab_print+i*8,0);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //360¶èμ¥Ãæ×ß
{
clc();
link_jb0(1);
jb0(10,3);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //×óóòÏÔ×Ö
{
yinchu(yc_table,5,9);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //360¶èμ¥Ãæ×ß
{
clc();
link_jb0(1);
jb0(10,3);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //Dy×aìõ1
{
link(9);
xuanzhuantiao(1,8,4);
xuanzhuantiao(0,8,4);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //Dy×aìõ2
{
xuanzhuantiao2(3,3);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //ÇúÃæDy×a
{
qumianxuanzhuan(1,10,4);
qumianxuanzhuan(0,10,4);
if(out)
go=1;
else
go=0;
}
go=1;
while(go)//ÇúÃæDy×a2
{
qumianxuanzhuan2(13,4);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //Dy×aìõ
{
xuanzhuantiao(1,4,4);
xuanzhuantiao(1,3,5);
xuanzhuantiao(1,2,6);
xuanzhuantiao(1,1,7);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //Ñ©»¨Dy×a
{
donghua(bianxing_table,11,1,24);
xzcube();
donghua(y_table,6,5,5);
donghua(x_table,6,5,5);
donghua(z_table,6,5,5);
link00();
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //éìËõ
{
shensuo(5);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //2¨àË
{
donghua(sin_cube_table,14,22,5);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //·½¿òêÕËõ
{
for(i=0;i<3;i++)
for(j=0;j<3;j++)
cube(0,j,6);
for(i=0;i<3;i++)
for(j=0;j<3;j++)
cube(1,j,6);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //°®DÄìø¶ˉ
{
donghua(hart_table,2,10,32);
if(out)
go=1;
else
go=0;
}
go=1;
while(go)//éáμçÂ¥ìY
{
for(i=2;i>0;i--)
shandian(i);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //×ÖĸéÏéy9-0
{
szfc0(10);
if(out)
go=1;
else
go=0;
}
go=1;
while(go) //éÏéyÑØ
{
rain(1,10,9);
rain(0,10,9);
if(out)
go=1;
else
go=0;
}
break;
case 3://ò1μÆÄ£ê½
delay(200);
LED();break;
}
out=0;
amenu=0;
menu=1;
|
|