📄 key.c
字号:
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
extern void msec(uint);
uchar scankey();
extern KeyState;
extern KeyFuncIndex;
sbit P3_5=P3^5;
float idata keycount=0; /* used for exit the menu when no key action */
int keybutton=0;
uchar scankey()
{ uchar idata keyb;
keycount++;
if( keycount>=80000)
{keycount=0;
P3_5=0;
KeyState=1;
KeyFuncIndex=4;
}
keyb=P1&0xff;
if(keyb!=0xff)
{ //msec(50);
keyb=P1&0xff;
keybutton=1;
KeyState=1;
keycount=0;
}
else
{keybutton=0;}
switch (keyb)
{
case 0xfe : keyb=1; /* S1 */
break;
case 0xfd : keyb=2; /* S2 */
break;
case 0xfb : keyb=3; /* S3 */
break;
case 0xf7 : keyb=4; /* S4 */
break;
case 0xef : keyb=5; /* S5 */
break;
case 0xdf : keyb=6; /* S6 */
break;
case 0xbf : keyb=7; /* S7 */
break;
case 0x7f : keyb=8; /* S8 */
break;
default : keyb=0;
break;
}
/* if(keycount>=60){
keyb=1; exit if no key in action after 60 secondes
keycount=0;
} */
if(keyb==0)
{ keyb=P3&0x0c;
if(keyb!=0x0c)
{ //msec(50);
keyb=P3&0x0c;
keybutton=1;
KeyState=1;
}
else
{keybutton=0;}
switch (keyb)
{
case 0x08 : keyb=9; /* S9 */
break;
case 0x04 : keyb=10; /* S10 */
break;
default : keyb=0;
break;
}
}
return (keyb);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -