📄 key.c
字号:
#define uchar unsigned char
#define uint unsigned int
#include<89c51.h>
void delays(uint k)
{
uint data i,j;
for(i=0;i<k;i++)
{
for(j=0;j<121;j++)
{;}
}
}
uchar kbscan(void)
{
uchar temp,key;
P2=0x0F;
temp=P2&0x0F;
if(temp==0x0F)
return 0; //没有按键按下,低四位中任意一位都不会被拉低
else
{
delays(10); //去干扰
temp=P2&0x0F;
if(temp==0x0F)
return 0;
else
key=temp;
}
P2=0xF0;
delays(10);
temp=P2&0xF0;
if(temp==0xF0)
return 0;
else
key|=temp;
do{;}
while((P2&0xF0)!=0xF0); //等待按键按下
return key;
}
uchar get_key(void)
{
uchar i=0;
i=kbscan();
switch (i) //将按键码转换成键值
{
case 0x77: return 1;
case 0x7B: return 2;
case 0x7D: return 3;
case 0x7E: return 4;
case 0xB7: return 5;
case 0xBB: return 6;
case 0xBD: return 7;
case 0xBE: return 8;
case 0xD7: return 9;
case 0xDB: return 10;
case 0xDD: return 11;
case 0xDE: return 12;
case 0xE7: return 13;
case 0xEB: return 14;
case 0xED: return 15;
case 0xEE: return 16;
case 0x00: return 0X00;
default : return 0x00;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -