📄 sc1.c
字号:
char_temp='.';
break;
case KEY_SIGN: //新增加用KEY_SIGN代替KEY_NS
char_temp='-';
break;
default:
break;
}
}
void clr_act()
{Write_data(0x20);
Write_command(0x10);//光标左移一位
Write_data(0x20);//需要删除的位置写一个空字符
Write_data(0x20);
Write_command(0x10);
}
void pol_getkey(void)
{
/* if(key== KEY_UP)
{set_add_p();
lock1=1;
}
if(key== KEY_DOWN)
{set_dec_p();
//watch2();
lock1=1;
}
if(key== KEY_LEFT)
{set_add_a();
// watch2();
lock1=1;
}
if(key== KEY_RIGHT)
{set_dec_a();
// watch2();
lock1=1;
}
if(key== KEY_DOT)
{set_dec_c();
lock1=1;
if(go_flag==0) go_flag=1;
else go_flag=0;
}
if(key== KEY_0)
{set_add_c();
lock1=1;
if(go_flag==0) go_flag=1;
else go_flag=0;
}
if(key== KEY_MENU |key== KEY_CLR)
{layer[1]=1;
layer[2]=0;
} */
P2OUT = 0x1E;/*/1st row*//*2.0置0,其余置1*/
key_temp = (~P1IN) &0xf8;
switch(key_temp&keya)
{
case 0x80:
key = KEY_3;
break;
case 0x40:
key =KEY_0;
break;
case 0x20:
key = KEY_MENU;
break;
case 0x10:
key = KEY_UP;
break;
case 0x08:
key = KEY_STOP;
break;
default:
key = 100;
break;
}
keya = (~key_temp)&(0xf8);
if(key == 100)
{
P2OUT =0x1D;/*/2st row*//*2.1置1*/
key_temp = (~P1IN) &0xf8;
switch(key_temp&keyb)
{
case 0x80:
key = KEY_DOT;
break;
case 0x40:
key = KEY_NS;
break;
case 0x20:
key = KEY_LEFT;
break;
case 0x10:
key =KEY_DOWN;
break;
case 0x08:
key =KEY_RIGHT;
break;
default:
key = 100;
break;
}
keyb = (~key_temp)&(0xf8);
}
if(key == 100)
{
P2OUT = 0x1B;/*/3st row*/
key_temp = (~P1IN) &0xf8;
switch(key_temp&keyc)
{
case 0x80:
key = KEY_2;
break;
case 0x20:
key = KEY_EDIT;
break;
case 0x10:
key = KEY_CLR;
break;
default:
key = 100;
break;
}
keyc = (~key_temp)&(0xf8);
}
/* -------------------------------检测完毕-------------------------*/
if(key!=100)
{
if(key!=KEY_0 & key!=KEY_DOT & key!=KEY_2 & key!=KEY_3 & key!=100)
in_flag=0;
if(key== KEY_DOT)
{set_dec_c();
lock1=1;
if(go_flag==0) go_flag=1;
else go_flag=0;
}
if(key== KEY_0)
{set_add_c();
lock1=1;
if(go_flag==0) go_flag=1;
else go_flag=0;
}
if(key== KEY_2)
{ set_dec_sc();
lock1=1;}
if(key== KEY_3)
{set_add_sc();
lock1=1;}
}
}
void getkey(void)
{ _EINT();
IE1 &=~0x40;//关闭串口中断//
ME1 &=~0x40;
P2OUT = 0x1E;/*/1st row*//*2.0置0,其余置1*/
Delay(100);
// Delay(20);
key_temp = (~P1IN) &0xf8;
switch(key_temp&keya)
{
case 0x80:
key = KEY_3;
break;
case 0x40:
key =KEY_0;
break;
case 0x20:
key = KEY_MENU;
break;
case 0x10:
key = KEY_UP;
break;
case 0x08:
key = KEY_STOP;
break;
default:
key = 100;
break;
}
keya = (~key_temp)&(0xf8);
if(key == 100)
{
P2OUT =0x1D;/*/2st row*//*2.1置1*/
Delay(20);
key_temp = (~P1IN) &0xf8;
switch(key_temp&keyb)
{
case 0x80:
key = KEY_DOT;
break;
case 0x40:
key = KEY_NS;
break;
case 0x20:
key = KEY_LEFT;
break;
case 0x10:
key =KEY_DOWN;
break;
case 0x08:
key =KEY_RIGHT;
break;
default:
key = 100;
break;
}
keyb = (~key_temp)&(0xf8);
}
if(key == 100)
{
P2OUT = 0x1B;/*/3st row*/
Delay(20);
key_temp = (~P1IN) &0xf8;
switch(key_temp&keyc)
{
case 0x80:
key = KEY_2;
break;
case 0x40:
key = KEY_1;
break;
case 0x20:
key = KEY_EDIT;
break;
case 0x10:
key = KEY_CLR;
break;
case 0x08:
key = KEY_ENTER;
break;
default:
key = 100;
break;
}
keyc = (~key_temp)&(0xf8);
}
if(key == 100)
{
P2OUT = 0x17;/*/4st row*/
Delay(20);
key_temp = (~P1IN) &0xf8;
switch(key_temp&keyd)
{
case 0x80:
key = KEY_5;
break;
case 0x40:
key = KEY_4;
break;
case 0x20:
key = KEY_7;
break;
case 0x10:
key = KEY_8;
break;
case 0x08:
key = KEY_9;
break;
default:
key = 100;
break;
}
keyd = (~key_temp)&(0xf8);
}
if(key == 100)
{
P2OUT = 0x0F;/*/5st row*/
Delay(20);
key_temp = (~P1IN) &0xf8;
switch(key_temp&keye)
{
case 0x80:
key = KEY_6;
break;
default:
key = 100;
break;
}
keye = (~key_temp)&(0xf8);
}
}
/* -------------------------------检测完毕-------------------------*/
void key_fun(void)
{ if(key!=100)
{
if(((wait_kflag==1)|(wait_gflag==1)|(continue_flag==1))&(key==KEY_ENTER))
{
set_go();
watch2();
set_go();
watch2();
if(wait_gflag==1)
{all_show(wait,1,2);
wait_gflag=0;
}
if(wait_kflag==1)
{all_show(ini,1,2);
wait_kflag=0;
}
if (continue_flag==1)
{
continue_flag=0;
clear();
all_show(wait,1,2);
}
goto end;
}
if(key==KEY_STOP)
{ pack_panel();
layer[4]=1;
layer[1]=0;
goto end;
}
if (key == KEY_MENU)
{
layer[1] = 1;
layer[2] = 0;
layer[3] =0 ;
lock1=1;
_DINT();
_EINT();
set_set();
set_set();
watch2();
for( j=0;j<5;j++)
watch1();
goto end;
}
if(layer[4]==1)
{if(key==KEY_1)//收藏
{set_pack();
watch2();
set_pack();
watch2();
x_flag=0;
y_flag=0;
_DINT();
Delay(20);
_EINT();
// PIN_CLEAR();
// clear();
// Write_command(0x30);
// charactertolcm(0x92,Ch_zzsc);
all_show(zzsc,1,3);
layer[4]=0;
goto end;
}
if(key==KEY_2)//复位
{
// clear();
_DINT();
_EINT();
all_show(zzfw,1,2);
set_restart();
watch2();
Delay(10);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -