📄 5_1_6_1.c
字号:
unsigned char keybuf; //键值缓存器
unsigned char p1keyj(void) //判键子程序
{unsigned char x;
x=(P1IN&0X07); //P10--P12接有按键
return(x); //有按键返回 非0
}
unsigned char keycode() //哪个按键被按下,查键值子程序
{
unsigned char x;
if((P1IN&0x07)= = 1) //是否第一个按键
then x=0;
else
if((P1IN&0x07)= = 2) //是否第二个按键
then x=1;
else
if((P1IN&0x07)= = 4) // 是否第三个按键
x=2;
return(x);
}
interrupt[PORT1_VECTOR] void port1key(void)
{ //端口1的中断服务程序
while(p1keyj()!=0)
{
delay(500); //延时消除抖动
while(p1keyj()!=0)
{
keybuf = keycode();//确信有按键按下,找按键得键值,送到全局变量keybuf
while(p1keyj()= =0) //等待按键松开
;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -