📄 key.h
字号:
/*
*********************************************************************************************************
* Embedded Systems Building Blocks
* Complete and Ready-to-Use Modules in C
*
* Matrix Keyboard Driver
*
* (c) Copyright 1999, Jean J. Labrosse, Weston, FL
* All Rights Reserved
*
* Filename : KEY.H
* Programmer : Jean J. Labrosse
* Translated by : Won-Ho, Sung
*********************************************************************************************************
* 荤侩磊 沥狼 惑荐
*
* 畴飘: 捞甸 #define 惑荐甸篮 荤侩磊 券版俊 嘎档废 函版登绢具 茄促
*********************************************************************************************************
*/
#ifndef CFG_H
#define KEY_BUF_SIZE 10 /* 虐焊靛 滚欺狼 农扁 */
#define KEY_PORT_ROW 0x0312 /* 虐焊靛 概飘腐胶狼 青俊 秦寸窍绰 器飘狼 绢靛饭胶 */
#define KEY_PORT_COL 0x0311 /* 虐焊靛 概飘腐胶狼 凯俊 秦寸窍绰 器飘狼 绢靛饭胶 */
#define KEY_PORT_CW 0x0313 /* 虐焊靛 I/O器飘 力绢侩 况靛狼 绢靛饭胶 */
#define KEY_MAX_ROWS 4 /* 虐焊靛狼 弥措 青(row) 荐 */
#define KEY_MAX_COLS 3 /* 虐焊靛狼 弥措 凯(column) 荐 */
#define KEY_RPT_DLY 1 /* 磊悼 馆汗扁瓷捞 促矫 荐青登扁 傈狼 胶牡鸥烙 蔼 */
#define KEY_RPT_START_DLY 10 /* 磊悼 馆汗扁瓷捞 荐青登扁鳖瘤狼 胶牡鸥烙 蔼 */
#define KEY_SCAN_TASK_DLY 50 /* 虐甫 胶牡窍绰 矫埃 埃拜 */
#define KEY_SCAN_TASK_PRIO 20 /* 虐焊靛 胶某醋 怕胶农狼 快急鉴困 */
#define KEY_SCAN_TASK_STK_SIZE 50 /* 虐焊靛 胶某醋 怕胶农狼 胶琶 农扁 */
#define KEY_SHIFT1_MSK 0x80 /* SHIFT1虐绰 凯涝仿 器飘狼 厚飘7俊 困摹窃 */
/* (0x00篮 SHIFT1虐啊 绝澜阑 富茄促) */
#define KEY_SHIFT1_OFFSET 24 /* SHIFT1虐啊 喘妨脸阑 锭 歹秦龙 坷橇悸 蔼 */
#define KEY_SHIFT2_MSK 0x40 /* SHIFT2虐绰 凯涝仿 器飘狼 厚飘6俊 困摹窃 */
/* (0x00篮 SHIFT2虐啊 绝澜阑 富茄促) */
#define KEY_SHIFT2_OFFSET 48 /* SHIFT2虐啊 喘妨脸阑 锭 歹秦龙 坷橇悸 蔼 */
#define KEY_SHIFT3_MSK 0x00 /* SHIFT3虐绰 凯涝仿 器飘狼 厚飘5俊 困摹窃 */
/* (0x00篮 SHIFT3虐啊 绝澜阑 富茄促) */
#define KEY_SHIFT3_OFFSET 0 /* SHIFT3虐啊 喘妨脸阑 锭 歹秦龙 坷橇悸 蔼 */
#endif
#define KEY_ALL_ROWS 0xFF /* 葛电 青阑 急琶 (溜, 葛电 青篮 0栏肺 免仿) */
/*
*********************************************************************************************************
* 窃荐盔屈
*********************************************************************************************************
*/
void KeyFlush(void); /* 虐焊靛 滚欺甫 努府绢 茄促 */
INT8U KeyGetKey(INT16U to); /* 虐焊靛 靛扼捞滚肺何磐 胶牡内靛甫 佬绢柯促. 绝栏搁 -1阑 府畔 */
INT32U KeyGetKeyDownTime(void); /* 虐啊 喘妨廉 乐绰 矫埃阑 府畔茄促 (剐府檬, milliseconds) */
BOOLEAN KeyHit(void); /* 虐啊 喘妨廉 乐绰 瘤甫 犬牢(喘啡栏搁 TRUE, 弊犯瘤 臼栏搁FALSE)*/
void KeyInit(void); /* 虐焊靛 靛扼捞滚甫 檬扁拳 */
void KeyInitPort(void); /* I/O器飘甫 檬扁拳 */
INT8U KeyGetCol(void); /* 凯阑 佬绰促 */
void KeySelRow(INT8U row); /* 青阑 急琶茄促 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -