📄 key.h
字号:
/*
file name:key.h
function: header file of the key.c
author :Einsn
date:2006-11-11
*/
#ifndef __KEY_H_
#define __KEY_H_
#include "typedefs.h"
/*
#define KEYR_ 0x8003 //80 83
#define KEYR_ 0x4003 //40 83
#define KEYR_ 0x2003 //20 83
#define KEYR_ 0x1003 //10 83
#define KEYR_ 0x0803 //08 83
#define KEYR_ 0x0403 //04 83
#define KEYR_ 0x0203 //02 83
#define KEYR_F1 0x2002 //20 82
#define KEYR_F2 0x1002 //10 82
#define KEYR_F3 0x0802 //08 82
#define KEYR_F4 0x0402 //04 82
#define KEYR_Q 0x8004 //80 84
#define KEYR_W 0x4004 //40 84
#define KEYR_E 0x2004 //20 84
#define KEYR_R 0x1004 //10 84
#define KEYR_T 0x0804 //08 84
#define KEYR_Y 0x0404 //04 84
#define KEYR_U 0x0204 //02 84
#define KEYR_I 0x0104 //01 84
#define KEYR_O 0x8001 //80 81
#define KEYR_P 0x0801 //08 81
#define KEYR_L 0x4001 //40 81
#define KEYR_MR 0x0401 //04 81
#define KEYR_UP 0x2001 //20 81
#define KEYR_DD 0x0201 //02 81
#define KEYR_DOWN 0x1001 //10 81
#define KEYR_RIGHT 0x0101 //01 81
#define KEYR_A 0x8005 //80 85
#define KEYR_S 0x4005 //40 85
#define KEYR_D 0x2005 //20 85
#define KEYR_F 0x1005 //10 85
#define KEYR_G 0x0805 //08 85
#define KEYR_H 0x0405 //04 85
#define KEYR_J 0x0205 //02 85
#define KEYR_K 0x0105 //01 85
#define KEYR_Z 0x8006 //80 86
#define KEYR_X 0x4006 //40 86
#define KEYR_C 0x2006 //20 86
#define KEYR_V 0x1006 //10 86
#define KEYR_B 0x0806 //08 86
#define KEYR_N 0x0406 //04 86
#define KEYR_M 0x0206 //02 86
#define KEYR_UU 0x0106 //01 86
#define KEYR_HELP 0x8007 //80 87
#define KEYR_SHIFT 0x4007 //40 87
#define KEYR_CAPS 0x2007 //20 87
#define KEYR_AC 0x1007 //10 87
#define KEYR_NUM0 0x0807 //08 87
#define KEYR_NUMP 0x0407 //04 87
#define KEYR_SPACE 0x0207 //02 87
#define KEYR_LEFT 0x0107 //01 87
*/
//#define KEY_HHH 33
//#define KEY_RSD 34
#define KEY_ENTER 0x71
#define KEY_ESC 0x51
#define KEY_RIGHT 0x81
#define KEY_LEFT 0x83
#define KEY_UP 0x72//0x61
#define KEY_DOWN 0x82//0x51
#define KEY_NUM0 0x85
#define KEY_NUM1 0x75
#define KEY_NUM3 0x73
#define KEY_NUM4 0x65
#define KEY_NUM6 0x63
#define KEY_NUM7 0x55
#define KEY_NUM9 0x53
#define KEY_NUM8 0x54 // 0x34
#define KEY_NUM5 0x64 // 0x35
#define KEY_NUM2 0x74 // 0x36
#define KEY_NUMP 0x84 // 0x37
//#define KEY_PLUS 0x15
//#define KEY_MINUS 0x14
#define KEY_MULTI 0x62
#define KEY_DIVS 0x52
//#define KEYASCOFFS ('0'-KEY_NUM0)
#define KOUT0 PE3
#define KOUT1 PE4
#define KOUT2 PE5
#define KOUT3 PE6
#define KOUT4 PE7
#define KEYPE ((1<<KOUT0)|(1<<KOUT1)|(1<<KOUT2)|(1<<KOUT3)|(1<<KOUT4))
#define KIN0 PC4
#define KIN1 PC5
#define KIN2 PC6
#define KIN3 PC7
#define KEYPC ((1<<KIN0)|(1<<KIN1)|(1<<KIN2)|(1<<KIN3))
#define CLRALLKOUT() PORTE&=(~KEYPE)
#define SETALLKOUT() PORTE|=KEYPE
#define KINVALUE() ((PINC&0xf0)|0x0f)
#define KEYPORTINIT() do{\
DDRC&=~KEYPC;\
PORTC|=KEYPC;\
DDRE|=KEYPE;\
PORTE&=~KEYPE;\
}while(0)
#define CLRKOUT(x) PORTE&=~(1<<(x+3))
#define KEYMSGDOWN 1
#define KEYMSGUP 2
void KeyInit(void);
uint8 GetKeyMsg(uint8 type);
void KeyTimerHook(void *p);
uint8 KeyNumToAsc(uint8 key);
uint8 GetKeyMsgNoWait(uint8 type );
#define GetKey() GetKeyMsg(KEYMSGUP)
#define GetKeyNoWait() GetKeyMsgNoWait(KEYMSGUP)
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -