📄 main.c
字号:
if(hand_num==8)
hand_num=1;
else
hand_num=hand_num+1;
HAND_SHOW(hand_num);
break;
case 2:
if(pin_num2==10)
pin_num2=1;
else
pin_num2=pin_num2+1;
LCD_NUM(pin_num2,0xFFBB);
break;
case 3:
if(pin_num3==30)
pin_num3=1;
else
pin_num3=pin_num3+1;
LCD_NUM(pin_num3,0xFFBD);
break;
case 4:
if(pin_num4==30)
pin_num4=1;
else
pin_num4=pin_num4+1;
LCD_NUM(pin_num4,0xFFBF);
break;
}
}
if(KEY_DOWN==1)
{
switch(caidan)
{
case 1:
if(hand_num==1)
hand_num=8;
else
hand_num=hand_num-1;
HAND_SHOW(hand_num);
break;
case 2:
if(pin_num2==1)
pin_num2=10;
else
pin_num2=pin_num2-1;
LCD_NUM(pin_num2,0xFFBB);
break;
case 3:
if(pin_num3==1)
pin_num3=30;
else
pin_num3=pin_num3+1;
LCD_NUM(pin_num3,0xFFBD);
break;
case 4:
if(pin_num4==1)
pin_num4=30;
else
pin_num4=pin_num4+1;
LCD_NUM(pin_num4,0xFFBF);
break;
}
}
}
void Valid_submeau3flag(void)
{
int j=0,i;
for(;;)
{
HERE3:
KEY_SUBMEAU3();
if(KEY_SURE==0)
if(KEY_UP==0)
{
WAIT_KEY(i);
continue;
}
else /*key_up=1*/
break;
else /*key-sure=1*/
{
for(;;)
{
HERE31: WAIT_KEY(i);
if(KEY_UP==0)
if(KEY_SURE==1)
{switch(SUBMEAU3FLAG)
{ case 1:
motor_startup(motor_data,motor_num);
for(;;)
{
test_motor: WAIT_KEY(i);
if(KEY_DOWN==1)
{
motor_speedup(motor_data,motor_num);
continue; /*goto test_motor;*/
}
if(KEY_SURE==0)
continue; /*goto test_motor;*/
else
*SCITXBUF=0x02;
WORD8255=0xff;
break; /*goto HERE31;*/
} /*end of for*/
break;
case 2:
WORD8255=data_8255;
num_8255++;
for(;;)
{
test_8255: WAIT_KEY(i);
if(KEY_DOWN==1)
{
electronic(num_8255,data_8255);
continue; /*goto test_8255;*/
}
if(KEY_SURE==0)
continue; /*goto test_8255;*/
else
WORD8255=0x00;
break; /*goto HERE31; */
} /*end of for*/
} /*end of case*/
} /*end of switch*/
else
continue;
else
{
ret_submeau3();
WAIT_KEY(i);
if(KEY_SURE==1)
j=1;
if(j==0)
continue;} /*goto HERE3;*/
break;
} /*end of for*/
} /* end of key_sure=1*/
break;
} /*end of for*/
} /*end of function*/
void GLOVE_TYPE(argument1,i)
{
int glovetype=argument1;
WAIT_KEY(i);
Delay1S();
if(KEY_UP==1)
{
glovetype=glovetype+1;
if(glovetype==4)
glovetype=1;
}
if(KEY_LEFT==1)
{
glovetype=glovetype-1;
if(glovetype==0)
glovetype=4;
}
switch(glovetype)
{case 1:
LCD_GLOVETYPE(28,36,40,36,22,30,21,19);
break;
case 2:
LCD_GLOVETYPE(44,56,60,52,32,46,30,40);
break;
case 3:
LCD_GLOVETYPE(26,34,38,34,20,28,20,17);
break;
case 4:
LCD_GLOVETYPE(24,32,36,30,18,26,19,15);
break;
}
}
void Amend_argument(caidan,pin_num1,pin_num2,pin_num3,pin_num4,i)
{
int HANZI_CON[16];
WAIT_KEY(i);
Delay1S();
if(KEY_LEFT==1)
{if(caidan==1)
{JIQI(1,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFB9);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBD);
JIQI(2,HANZI_CON,HANZIZIKU+112,HANZI_ZUO,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==2)
{JIQI(2,HANZI_CON,HANZI_JIQI,HANZI_JIQI+16,HANZI_LEIXING,HANZI_LEIXING+16,0xFFB9);
JIQI(1,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==3)
{JIQI(1,HANZI_CON,HANZI_JIQI,HANZI_JIQI+16,HANZI_LEIXING,HANZI_LEIXING+16,0xFFB9);
JIQI(2,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==4)
{JIQI(1,HANZI_CON,HANZI_JIQI,HANZI_JIQI+16,HANZI_LEIXING,HANZI_LEIXING+16,0xFFB9);
JIQI(1,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFBB);
JIQI(2,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==5)
{JIQI(1,HANZI_CON,HANZI_JIQI,HANZI_JIQI+16,HANZI_LEIXING,HANZI_LEIXING+16,0xFFB9);
JIQI(1,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(2,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==6)
{JIQI(1,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);
JIQI(2,HANZI_CON,HANZIZIKU+112,HANZI_ZUO,HANZI_GAODI,HANZI_SUDU,0xFFB9);}
if(caidan==1)
caidan=6;
else
caidan=caidan-1;
}
if(KEY_RIGHT==1)
{if(caidan==1)
{JIQI(1,HANZI_CON,HANZI_JIQI,HANZI_JIQI+16,HANZI_LEIXING,HANZI_LEIXING+16,0xFFB9);
JIQI(2,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==2)
{JIQI(1,HANZI_CON,HANZI_JIQI,HANZI_JIQI+16,HANZI_LEIXING,HANZI_LEIXING+16,0xFFB9);
JIQI(1,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFBB);
JIQI(2,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==3)
{JIQI(1,HANZI_CON,HANZI_JIQI,HANZI_JIQI+16,HANZI_LEIXING,HANZI_LEIXING+16,0xFFB9);
JIQI(1,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(2,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==4)
{JIQI(1,HANZI_CON,HANZI_ZUIGAO,HANZI_GAODI,HANZI_XIANSU,HANZI_SUDU,0xFFB9);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBD);
JIQI(2,HANZI_CON,HANZIZIKU+112,HANZI_ZUO,HANZI_GAODI,HANZI_SUDU,0xFFBF);}
if(caidan==5)
{JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI,HANZI_SUDU,0xFFB9);
JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZIZIKU+112,HANZI_ZUO,HANZI_GAODI,HANZI_SUDU,0xFFBD);
JIQI(1,HANZI_CON,HANZIZIKU+112,HANZI_ZUO,HANZI_GAODI+16,HANZI_SUDU,0xFFBF);}
if(caidan==6)
{JIQI(1,HANZI_CON,HANZI_PINGZHEN,HANZI_PINGZHEN+16,HANZI_GAODI+16,HANZI_SUDU,0xFFB9);
JIQI(1,HANZI_CON,HANZIZIKU+112,HANZI_ZUO,HANZI_GAODI,HANZI_SUDU,0xFFBB);
JIQI(1,HANZI_CON,HANZIZIKU+112,HANZI_ZUO,HANZI_GAODI+16,HANZI_SUDU,0xFFBD);
JIQI(2,HANZI_CON,HANZI_JIQI,HANZI_JIQI+16,HANZI_LEIXING,HANZI_LEIXING+16,0xFFBF);}
if(caidan==6)
caidan=1;
else
caidan=caidan+1;
}
}
void Valid_submeau4flag(void)
{
int j=0,i,glovetype;
for(;;)
HERE4: {
KEY_SUBMEAU4();
if(KEY_SURE==0)
if(KEY_UP==0)
{
WAIT_KEY(i);
continue;
}
else /*key_up=1*/
break;
else /*key-sure=1*/
{
for(;;)
{
HERE41: /*WAIT_KEY(i);*/
if(KEY_UP==0)
if(KEY_SURE=1)
{
switch(SUBMEAU4FLAG)
{case 1:
glovetype=1;
GLOVE_TYPE(glovetype,i);
while(!KEY_SURE)
GLOVE_TYPE(glovetype,i); /*KEY_SURE=0 run*/
break; /*goto tohere;*/
case 2:
caidan=1;
pin_num1=2,pin_num2=7,pin_num3=8;pin_num3=1;
Amend_argument(caidan,pin_num1,pin_num2,pin_num3,pin_num4,i);
while(!KEY_SURE)
Amend_argument(caidan,pin_num1,pin_num2,pin_num3,pin_num4,i);
break; /*goto tohere;*/
}
break; /*end of case*/
} /*end of switch*/
else
continue; /*goto HERE21; /*end of key_sure=1*/
else /*end of key_up=1*/
{
ret_submeau4();
WAIT_KEY(i);
j=1; /*goto here2*/
break;
}
} /*fisrt for*/
if(j==1)
continue;
else
break;
}
}
return;
}
void Valid_submeau2flag(void)
{
int j=0,i;
for(;;)
{ /*****************/
HERE2: KEY_SUBMEAU2();
if(KEY_SURE==0)
if(KEY_UP==0)
{
WAIT_KEY(i);
continue; /*goto HERE2;*/
}
else /*key_up=1*/
break; /*goto MAININIT;*/
else /*key-sure=1*/
{
for(;;)
{
HERE21: /*WAIT_KEY(i);*/
if(KEY_UP==0)
if(KEY_SURE=1)
{
switch(SUBMEAU2FLAG)
{case 1:
hand_num=1;
pin_num1=14,pin_num2=5,pin_num3=5;
PIN_SET(hand_num,pin_num1,pin_num2,pin_num3,i);
while(!KEY_SURE)
PIN_SET(hand_num,pin_num1,pin_num2,pin_num3,i); /*KEY_SURE=0 run*/
break; /*goto tohere;*/
case 2:
caidan=1;
pin_num1=2,pin_num2=7,pin_num3=8;pin_num3=1;
TIGHT_SET(caidan,pin_num1,pin_num2,pin_num3,pin_num4,i);
while(!KEY_SURE)
TIGHT_SET(caidan,pin_num1,pin_num2,pin_num3,pin_num4,i);
break; /*goto tohere;*/
case 3:
caidan=1;
hand_num=1,pin_num2=30,pin_num3=24;pin_num3=36;
SPEED_SET(caidan,hand_num,pin_num2,pin_num3,pin_num4,i);
while(!KEY_SURE)
SPEED_SET(caidan,hand_num,pin_num2,pin_num3,pin_num4,i);
break; /*goto tohere;*/
case 4:
caidan=1;
hand_num=1,pin_num2=4,pin_num3=22;pin_num3=12;
SEXIAN_SET(caidan,hand_num,pin_num2,pin_num3,pin_num4,i);
while(!KEY_SURE)
SEXIAN_SET(caidan,hand_num,pin_num2,pin_num3,pin_num4,i);
break; /*goto tohere;*/
}
break; /*end of case*/
} /*end of switch*/
else
continue; /*goto HERE21; /*end of key_sure=1*/
else /*end of key_up=1*/
{
ret_submeau2();
WAIT_KEY(i);
j=1; /*goto here2*/
break;
}
} /*fisrt for*/
if(j==1)
continue;
else
break;
}
}
return;
}
void main(void)
{
int glovetype;
int i=0;
initial();
SCI_INIT();
LCD_INITIAL();
LCD_CLEAR();
LCD_INITIALIZE();
WAIT_KEY(i);
ret_mainmeau();
WAIT_KEY(i);
for(;;)
{
MAININIT: WAIT_KEY(i);
if(KEY_RIGHT==1|KEY_LEFT==1|KEY_SURE==1)
tohere: KEY_HANDLE();
if(KEY_SURE==0)
continue; /*first floor*/
WAIT_KEY(i);
if(SUBMEAU2FLAG==1)
{
Valid_submeau2flag();
continue;
}
if(SUBMEAU3FLAG==1)
{
Valid_submeau3flag();
continue;
}
if(SUBMEAU4FLAG==1)
{
Valid_submeau4flag();
continue;
}
}
}
int SCI_INIT(void)
{
*SCICCR=0x7;/*0xf 时候为什么会出现 FF*/
*SCICTL1=0x1b;
*SCICTL2=0x3;
*SCIHBAUD=0x01;
*SCILBAUD=0x03;
*SCICTL1=0x33;
*SCIPRI=0x60;
*MCRA=0x3;
*PADATDIR=0x100;
*IMR=0x10;
asm(" CLRC INTM");
}
void uartsent()
{
*IFR=0x0010;
asm(" CLRC INTM");
}
void uartrec()
{asm(" CLRC INTM");
}
void interrupt uarttr()
{
switch(*PVIR)
{
case 6: uartrec();
break;
case 7: uartsent();
break;
}
}
void interrupt nothing()
{
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -