📄 key.h
字号:
#ifndef __KEY_H__
#define __KEY_H__
#include "function.h" //引入程序中基本定义和相关H文件
#define VK_LEFT 0x25//向左按键的ASC码
#define VK_UP 0x26//向上按键的ASC码
#define VK_RIGHT 0x27//向右按键的ASC码
#define VK_DOWN 0x28//向下按键的ASC码
#define VK_PAUSE 0x03//暂停按键的ASC码
#define VK_RETURN 0x0D//回车按键的ASC码
#define VK_ESC 0x1B//退出按键的ASC码
#define KEY_NULL 0xFF//无效按键
#define KEYSCAN_DELAY 1 //每次扫描按键的延时时间
#define KEYPRESS_LONG_NUM 20 //长按键计数次数
#define KEYPRESS_SHORT_NUM 2 //短按键计数次数
#define KEYPRESS_COUNT_MAX 25 //按键计数最大值
#define KEYID_MIN 0 //按键扫描最小值(不能修改)
#define KEYID_MAX 3 //按键扫描最大值(不能修改)
#define KEYPRESS_LONG_SET 0x80 //长按键特征BIT置位
#define KEY_00_SHORT 0X00 //SCAN0短按返回值
#define KEY_01_SHORT 0X01 //SCAN1短按返回值
#define KEY_02_SHORT 0X02 //SCAN2短按返回值
#define KEY_03_SHORT 0X03 //SCAN3短按返回值
#define KEY_00_LONG (KEYPRESS_LONG_SET|KEY_00_SHORT) //SCAN0长按返回值
#define KEY_01_LONG (KEYPRESS_LONG_SET|KEY_01_SHORT) //SCAN1长按返回值
#define KEY_02_LONG (KEYPRESS_LONG_SET|KEY_02_SHORT) //SCAN2长按返回值
#define KEY_03_LONG (KEYPRESS_LONG_SET|KEY_03_SHORT) //SCAN3长按返回值
#define KEYREAD_TIMEOUT 250 //按键读取超时值,如果超时,该值被抛弃
#define KEYBUF_SIZE 4 //按键BUFFER的大小,取值必须是2的N次方
/****************************************************************************
* 函数名称:key_read()
* 函数功能:读取按键的返回值,判断哪个按键被按下
* 入口参数:无
* 出口参数:KEY_00_SHORT,KEY_00_LONG --- KEY_03_SHORT,KEY_03_LONG
* 创建日期:2007-6-8
* 修改日期:
****************************************************************************/
extern volatile uint8 key_read(void); //按键值读取
/****************************************************************************
* 函数名称:key_test()
* 函数功能:测试该按键有没有被检测到,并返回按键被扫描次数
* 入口参数:无
* 出口参数:返回扫描次数,用于修正下列数值
KEYSCAN_DELAY 1 //每次扫描按键的延时时间
KEYPRESS_LONG_NUM 20 //长按键计数次数
KEYPRESS_SHORT_NUM 2 //短按键计数次数
KEYPRESS_COUNT_MAX 25 //按键计数最大值
* 创建日期:2007-6-8
* 修改日期:
****************************************************************************/
extern volatile uint8 key_test(void); //按键测试,返回按键被扫描次数
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -