📄 key.c
字号:
/********************************************************/
/*文件名: */
/*功能: */
/*编写: */
/*建立时间:
/*修改纪录: */
/********************************************************/
#include "key.h"
INT8U KeyCt[KeyNumber+1]; //定义检测按键的计数器
/**/
/*读取按键键值,注意,按键如果同时按下,也只能返回一个键值,但是有优先级*/
INT8U GetKeyValue()
{
uchar KeyValueReg=0;
if (Key1)
{
if((KeyCt[1]>=KeyMaxTest))
{
KeyValueReg= 1;
}
KeyCt[1]=0;
}
if (Key2)
{
if((KeyCt[2]>=KeyMaxTest))
{
KeyValueReg= 2;
}
KeyCt[2]=0;
}
if (Key3)
{
if((KeyCt[3]>=KeyMaxTest))
{
KeyValueReg= 3;
}
KeyCt[3]=0;
}
if (Key4)
{
if((KeyCt[4]>=KeyMaxTest))
{
KeyValueReg= 4;
}
KeyCt[4]=0;
}
if (Key5)
{
if((KeyCt[5]>=KeyMaxTest))
{
KeyValueReg= 5;
}
KeyCt[5]=0;
}
if (Key6)
{
if((KeyCt[6]>=KeyMaxTest))
{
KeyValueReg= 6;
}
KeyCt[6]=0;
}
if (Key7)
{
if((KeyCt[7]>=KeyMaxTest))
{
KeyValueReg= 7;
}
KeyCt[7]=0;
}
if (Key8)
{
if((KeyCt[8]>=KeyMaxTest))
{
KeyValueReg= 8;
}
KeyCt[8]=0;
}
return (KeyValueReg);
}
#ifdef KEYSUBEN
void KeyScan() {
/*SetKeyOn*/
if ((!Key1)&&(KeyCt[1]<KeyMaxTest))
{
KeyCt[1]++;
}
if ((!Key2)&&(KeyCt[2]<KeyMaxTest))
{
KeyCt[2]++;
}
if ((!Key3)&&(KeyCt[3]<KeyMaxTest))
{
KeyCt[3]++;
}
if ((!Key4)&&(KeyCt[4]<KeyMaxTest))
{
KeyCt[4]++;
}
if ((!Key5)&&(KeyCt[5]<KeyMaxTest))
{
KeyCt[5]++;
}
if ((!Key6)&&(KeyCt[6]<KeyMaxTest))
{
KeyCt[6]++;
}
if ((!Key7)&&(KeyCt[7]<KeyMaxTest))
{
KeyCt[7]++;
}
if ((!Key8)&&(KeyCt[8]<KeyMaxTest))
{
KeyCt[8]++;
}
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -