📄 kpd.h
字号:
/****************************************Copyright (c)**************************************************
**
**
** 杭州央海软件科技有限公司
**
** http://www.osmcu.com
**
**--------------文件信息--------------------------------------------------------------------------------
** 文 件 名: kpd.h
** 创 建 人: 罗辉联
** 创建日期: 2006年7月23日
** 描 述: 该文件包含BSPI应用部分函数原型、宏、枚举等定义
**
**--------------历史版本--------------------------------------------------------------------------------
** 修 改 人: 罗辉联
** 版 本: V1.0
** 日 期: 2006年7月23日
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#ifndef __KPD_H
#define __KPD_H
#ifdef __cplusplus
extern "C" {
#endif
#include "gpio.h"
/********************************************** 宏定义 *************************************************/
#define KPD_MAX_ROWS (4) /* 行列式键盘行定义 */
#define KPD_MAX_COLS (4) /* 行列式键盘列定义 */
#define KPD_PKEY_NULL (-1)
#define KPD_PKEY_0 (0)
#define KPD_PKEY_1 (1)
#define KPD_PKEY_2 (2)
#define KPD_PKEY_3 (3)
#define KPD_PKEY_4 (4)
#define KPD_PKEY_5 (5)
#define KPD_PKEY_6 (6)
#define KPD_PKEY_7 (7)
#define KPD_PKEY_8 (8)
#define KPD_PKEY_9 (9)
#define KPD_PKEY_LEFT (10)
#define KPD_PKEY_RIGHT (11)
#define KPD_PKEY_UP (12)
#define KPD_PKEY_DOWN (13)
#define KPD_PKEY_OK (14)
#define KPD_PKEY_ESC (15)
#define KPD_PKEY_MUL (16)
#define KPD_COL_OUT GPIOx_PD(GPIO1)
#define KPD_ROW_IN GPIOx_PD(GPIO2)
#define KPD_ACTIVATE(i) (~(1<<(i+4)))
#define KPD_IS_ACTIVE(rows,i) ((rows & (1<<(i+12))) == 0)
#define KPD_ALL_OFF 0x00F0
#define KPD_ALL_ON 0xFF0F
#define KEY_BUF_SIZE 10 /* 键盘缓冲区大小 */
#define KEY_REPEAT_DELAY 2 /* Number of scan times before auto repeat executes again */
#define KEY_REPEAT_START_DELAY 10 /* Number of scan times before auto repeat function engages */
#define KEY_ALL_ROWS 0xFF /* Select all rows (i.e. all rows LOW)*/
#define KEY_SCAN_TASK_DELAY 50 /* Number of milliseconds between keyboard scans */
/****************************************** 枚举类型定义 **********************************************/
/****************************************** 结构体类型定义 *********************************************/
/***************************************** 全局变量声明 ************************************************/
/***************************************** 外部函数声明 ************************************************/
extern void kpd_init(void); /* 初始化kpd接口 */
extern WORD8 kpd_scan_keypad(void); /* BSPI发送数据到HC595,驱动LED显示 */
extern void kpd_scan_task_core(void *pdata);
#ifdef __cplusplus
}
#endif
#endif // _KPD_H
/**********************************************end of file***********************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -