⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1797 01 code

📁 基于89C51的计算机可锁定加密键盘设计带源码
💻
字号:
//按键扫描码定义,和kbcode.dat中相同
#define _NULL_M 0
#define _NULL_B 0
#define _A_M  0X0a
#define _A_B  0Xf0,0x0a
#define _B_M  0X0b
#define _B_B  0Xf0,0X0b
#define _C_M  0X0c
#define _C_B  0Xf0,0x0c
#define _D_M  0X23
#define _D_B  0XF0,0X23
#define _E_M  0X24
#define _E_B  0XF0,0X24

#define _F_M  0X2B
#define _F_B  0XF0,0X2B
#define _G_M  0X34
#define _G_B  0XF0,0X34

#define _H_M  0X33
#define _H_B  0XF0,0X33
#define _I_M  0X43
#define _I_B  0XF0,0X43
#define _J_M  0X3B
#define _J_B  0XF0,0X3B

#define _K_M  0X42
#define _K_B  0XF0,0X42
#define _L_M  0X4B
#define _L_B  0XF0,0X4B
#define _M_M  0X3A
#define _M_B  0XF0,0X3A
#define _N_M  0X31
#define _N_B  0XF0,0X31
#define _O_M  0X44
#define _O_B  0XF0,0X44
#define _P_M  0X4D
#define _P_B  0XF0,0X4D
#define _Q_M  0X15
#define _Q_B  0XF0,0X15
#define _R_M  0X2D
#define _R_B  0XF0,0X2D
#define _S_M  0X1B
#define _S_B  0XF0,0X1B
#define _T_M  0X2C
#define _T_B  0XF0,0X2C
#define _U_M  0X3C
#define _U_B  0XF0,0X3C
#define _V_M  0X2A
#define _V_B  0XF0,0X2A
#define _W_M  0X1D
#define _W_B  0XF0,0X1D

#define _X_M  0X22
#define _X_B  0XF0,0X22
#define _Y_M  0X35
#define _Y_B  0XF0,0X35
#define _Z_M  0X1A
#define _Z_B  0XF0,0X1A

#define _0_M  0X45
#define _0_B  0XF0,0X45
#define _1_M  0X16
#define _1_B  0XF0,0X16
#define _2_M  0X1E
#define _2_B  0XF0,0X1E
#define _3_M  0X26
#define _3_B  0XF0,0X26
#define _4_M  0X25
#define _4_B  0XF0,0X25
#define _5_M  0X2E
#define _5_B  0XF0,0X2E

#define _6_M  0X36
#define _6_B  0XF0,0X36

#define _7_M  0X3D
#define _7_B  0XF0,0X3D
#define _8_M  0X3E
#define _8_B  0XF0,0X3E
#define _9_M  0X46
#define _9_B  0XF0,0X46

#define _TAB_M  0X0D
#define _TAB_B  0XF0,0X0D

#define _SPACE_M 0X29 
#define _SPACE_B 0XF0,0X29

#define _BKSPACE_M 0X66
#define _BKSPACE_B 0XF0,0X66

#define _CAPS_M  0X58
#define _CAPS_B  0XF0,0X58
#define _LSHIFT_M  0X12
#define _LSHIFT_B  0XF0,0X12
#define _LCTRL_M  0X14
#define _LCTRL_B  0XF0,0X14

#define _LGUI_M  0XE0,0X1F
#define _LGUI_B  0XE0,0XF0,0X1F
#define _LALT_M  0X11
#define _LALT_B  0XF0,0X11
#define _RSHIFT_M  0X59
#define _RSHIFT_B  0XF0,0X59
#define _RCTRL_M  0XE0,0X14
#define _RCTRL_B  0XE0,0XF0,0X14

#define _RGUI_M  0XE0,0X27
#define _RGUI_B  0XE0,0XF0,0X27

#define _RALT_M  0XE0,0X11
#define _RALT_B  0XE0,0XF0,0X11
#define _APPS_M  0XE0,0X2F
#define _APPS_B  0XE0,0XF0,0X2F

#define _ENTER_M  0X5A
#define _ENTER_B  0XF0,0X5A
#define _ESC_M  0X76
#define _ESC_B  0XF0,0X76
#define _F1_M  0X05
#define _F1_B  0XF0,0X05

#define _F2_M  0X06
#define _F2_B  0XF0,0X06
#define _F3_M  0X04
#define _F3_B  0XF0,0X04
#define _F4_M  0X0C
#define _F4_B  0XF0,0X0C
#define _F5_M  0X03
#define _F5_B  0XF0,0X03
#define _F6_M  0X0B
#define _F6_B  0XF0,0X0B
#define _F7_M  0X83
#define _F7_B  0XF0,0X83
#define _F8_M  0X0A
#define _F8_B  0XF0,0X0A
#define _F9_M  0X01
#define _F9_B  0XF0,0X01
#define _F10_M  0X09
#define _F10_B  0XF0,0X09
#define _F11_M  0X78
#define _F11_B  0XF0,0X78
#define _F12_M  0X07
#define _F12_B  0XF0,0X07

#define _PRINTSCRN_M  0XE0,0X12,0XE0,0X7C
#define _PRINTSCRN_B  0XE0,0XF0,0X7C,0XE0,0XF0,0X12
#define _SCROLL_M  0X7E
#define _SCROLL_B  0XF0,0X7E
#define _PAUSE_M  0XE1,0X14,0X77,0XE1,0XF0,0X14,0XF0,0X77
#define _PAUSE_B  0X0

#define _INSE_M  0XE0,0X70
#define _INST_B  0XE0,0XF0,0X70
#define _HOME_M  0XE0,0X6C
#define _HOME_B  0XE0,0XF0,0X6C

#define _PGUP_M  0XE0,0X7D
#define _PGUP_B  0XE0,0XF0,0X7D
#define _DELETE_M  0XE0,0X71
#define _DELETE_B  0XE0,0XF0,0X71
#define _END_M  0XE0,0X69
#define _END_B  0XE0,0XF0,0X69
#define _PGDN_M  0XE0,0X7A
#define _PGDN_B  0XE0,0XF0,0X7A

#define _UP_M  0XE0,0X75
#define _UP_B  0XE0,0XF0,0X75
#define _DOWN_M  0XE0,0X72
#define _DOWN_B  0XE0,0XF0,0X72
#define _LEFT_M  0XE0,0X6B
#define _LEFT_B  0XE0,0XF0,0X6B
#define _RIGHT_M  0XE0,0X74
#define _RIGHT_B  0XE0,0XF0,0X74


#define _NUM_M  0X77
#define _NUM_B  0XF0,0X77

#define _KP_A_M  0X79
#define _KP_A_B  0XF0,0X79
#define _KP_S_M  0X7B
#define _KP_S_B  0XF0,0X7B
#define _KP_M_M  0X7C
#define _KP_M_B  0XF0,0X7C
#define _KP_D_M  0XE0,0X4A
#define _KP_D_B  0XE0,0XF0,0X4A

#define _KP_DEL_M  0X71
#define _KP_DEL_B  0XF0,0X71
#define _KP0_M  0X69
#define _KP0_B  0XF0,0X69

#define _KP1_M  0X69
#define _KP1_B  0XF0,0X69

#define _KP2_M  0X72
#define _KP2_B  0XF0,0X72
#define _KP3_M  0X7A
#define _KP3_B  0XF0,0X7A
#define _KP4_M  0X6B
#define _KP4_B  0XF0,0X6B
#define _KP5_M  0X73
#define _KP5_B  0XF0,0X73
#define _KP6_M  0X74
#define _KP6_B  0XF0,0X74
#define _KP7_M  0X6C
#define _KP7_B  0XF0,0X6C
#define _KP8_M  0X75
#define _KP8_B  0XF0,0X75
#define _KP9_M  0X7D
#define _KP9_B  0XF0,0X7D
#define _KPENTER_M  0XE0,0X5A
#define _KPENTER_B  0XE0,0XF0,0X5A


#define _C_SEMICOLON_M  0X4C
#define _C_SEMICOLON_B  0XF0,0X4C
#define _C_CAMMA_M  0X41
#define _C_CAMMA_B  0XF0,0X41
#define _C_PERIOD_M  0X49
#define _C_PERIOD_B  0XF0,0X49

#define _C_QUOTATION_M  0X52
#define _C_QUOTATION_B  0XF0,0X52

#define _C_QUESTION_M  0X4A
#define _C_QUESTION_B  0XF0,0X4A

#define _C_ADD_M  0X55
#define _C_ADD_B  0XF0,0X55
#define _C_SUB_M  0X4E
#define _C_SUB_B  0XF0,0X4E

#define _C_OBLIQUE_LINE_M  0X5D
#define _C_OBLIQUE_LINE_B  0XF0,0X5D

#define _L_BRACE_M  0X54
#define _L_BRACE_B  0XF0,0X54
#define _R_BRACE_M  0X5B
#define _R_BRACE_B  0XF0,0X5B
#define _WAVE_M 0X0E
#define _WAVE_B 0XF0,0X0E

//扫描码存储格式,在单片机程序存储区
unsigned char code
_NULL_[]={_NULL_M,0,_NULL_B,0},
_A_[]={_A_M,0,_A_B,0},
_B_[]={_B_M,0,_B_B,0},
_C_[]={_C_M,0,_C_B,0},
_D_[]={_D_M,0,_D_B,0},
_E_[]={_E_M,0,_E_B,0},
_F_[]={_F_M,0,_F_B,0},
_G_[]={_G_M,0,_G_B,0},
_H_[]={_H_M,0,_H_B,0},
_I_[]={_I_M,0,_I_B,0},
_J_[]={_J_M,0,_J_B,0},
_K_[]={_K_M,0,_K_B,0},
_L_[]={_L_M,0,_L_B,0},
_M_[]={_M_M,0,_M_B,0},
_N_[]={_N_M,0,_N_B,0},
_O_[]={_O_M,0,_O_B,0},
_P_[]={_P_M,0,_P_B,0},
_Q_[]={_Q_M,0,_Q_B,0},
_R_[]={_R_M,0,_R_B,0},
_S_[]={_S_M,0,_S_B,0},
_T_[]={_T_M,0,_T_B,0},
_U_[]={_U_M,0,_U_B,0},
_V_[]={_V_M,0,_V_B,0},
_W_[]={_W_M,0,_W_B,0},
_X_[]={_X_M,0,_X_B,0},
_Y_[]={_Y_M,0,_Y_B,0},
_Z_[]={_Z_M,0,_Z_B,0},
_0_[]={_0_M,0,_0_B,0},
_1_[]={_1_M,0,_1_B,0},
_2_[]={_2_M,0,_2_B,0},
_3_[]={_3_M,0,_3_B,0},
_4_[]={_4_M,0,_4_B,0},
_5_[]={_5_M,0,_5_B,0},
_6_[]={_6_M,0,_6_B,0},
_7_[]={_7_M,0,_7_B,0},
_8_[]={_8_M,0,_8_B,0},
_9_[]={_9_M,0,_9_B,0},
_TAB_[]={_TAB_M,0,_TAB_B,0},
_SPACE_[]={_SPACE_M,0,_SPACE_B,0},
_BKSPACE_[]={_BKSPACE_M,0,_BKSPACE_B,0},
_CAPS_[]={_CAPS_M,0,_CAPS_B,0},
_LSHIFT_[]={_LSHIFT_M,0,_LSHIFT_B,0},
_LCTRL_[]={_LCTRL_M,0,_LCTRL_B,0},
_LGUI_[]={_LGUI_M,0,_LGUI_B,0},
_LALT_[]={_LALT_M,0,_LALT_B,0},
_RSHIFT_[]={_RSHIFT_M,0,_RSHIFT_B,0},
_RCTRL_[]={_RCTRL_M,0,_RCTRL_B,0},
_RGUI_[]={_RGUI_M,0,_RGUI_B,0},
_RALT_[]={_RALT_M,0,_RALT_B,0},
_APPS_[]={_APPS_M,0,_APPS_B,0},
_ENTER_[]={_ENTER_M,0,_ENTER_B,0},
_ESC_[]={_ESC_M,0,_ESC_B,0},
_F1_[]={_F1_M,0,_F1_B,0},
_F2_[]={_F2_M,0,_F2_B,0},
_F3_[]={_F3_M,0,_F3_B,0},
_F4_[]={_F4_M,0,_F4_B,0},
_F5_[]={_F5_M,0,_F5_B,0},
_F6_[]={_F6_M,0,_F6_B,0},
_F7_[]={_F7_M,0,_F7_B,0},
_F8_[]={_F8_M,0,_F8_B,0},
_F9_[]={_F9_M,0,_F9_B,0},
_F10_[]={_F10_M,0,_F10_B,0},
_F11_[]={_F11_M,0,_F11_B,0},
_F12_[]={_F12_M,0,_F12_B,0},
_PRINTSCRN_[]={_PRINTSCRN_M,0,_PRINTSCRN_B,0},
_SCROLL_[]={_SCROLL_M,0,_SCROLL_B,0},
_PAUSE_[]={_PAUSE_M,0,_PAUSE_B,0},
_INSE_[]={_INSE_M,0,_INST_B,0},
_HOME_[]={_HOME_M,0,_HOME_B,0},
_PGUP_[]={_PGUP_M,0,_PGUP_B,0},
_DELETE_[]={_DELETE_M,0,_DELETE_B,0},
_END_[]={_END_M,0,_END_B,0},
_PGDN_[]={_PGDN_M,0,_PGDN_B,0},
_UP_[]={_UP_M,0,_UP_B,0},
_DOWN_[]={_DOWN_M,0,_DOWN_B,0},
_LEFT_[]={_LEFT_M,0,_LEFT_B,0},
_RIGHT_[]={_RIGHT_M,0,_RIGHT_B,0},
_NUM_[]={_NUM_M,0,_NUM_B,0},
_KP_A_[]={_KP_A_M,0,_KP_A_B,0},
_KP_S_[]={_KP_S_M,0,_KP_S_B,0},
_KP_M_[]={_KP_M_M,0,_KP_M_B,0},
_KP_D_[]={_KP_D_M,0,_KP_D_B,0},
_KP_DEL_[]={_KP_DEL_M,0,_KP_DEL_B,0},
_KP0_[]={_KP0_M,0,_KP0_B,0},
_KP1_[]={_KP1_M,0,_KP1_B,0},
_KP2_[]={_KP2_M,0,_KP2_B,0},
_KP3_[]={_KP3_M,0,_KP3_B,0},
_KP4_[]={_KP4_M,0,_KP4_B,0},
_KP5_[]={_KP5_M,0,_KP5_B,0},
_KP6_[]={_KP6_M,0,_KP6_B,0},
_KP7_[]={_KP7_M,0,_KP7_B,0},
_KP8_[]={_KP8_M,0,_KP8_B,0},
_KP9_[]={_KP9_M,0,_KP9_B,0},
_KPENTER_[]={_KPENTER_M,0,_KPENTER_B,0},
_C_SEMICOLON_[]={_C_SEMICOLON_M,0,_C_SEMICOLON_B,0},
_C_CAMMA_[]={_C_CAMMA_M,0,_C_CAMMA_B,0},
_C_PERIOD_[]={_C_PERIOD_M,0,_C_PERIOD_B,0},
_C_QUOTATION_[]={_C_QUOTATION_M,0,_C_QUOTATION_B,0},
_C_QUESTION_[]={_C_QUESTION_M,0,_C_QUESTION_B,0},
_C_ADD_[]={_C_ADD_M,0,_C_ADD_B,0},
_C_SUB_[]={_C_SUB_M,0,_C_SUB_B,0},
_C_OBLIQUE_LINE_[]={_C_OBLIQUE_LINE_M,0,_C_OBLIQUE_LINE_B,0},
_L_BRACE_[]={_L_BRACE_M,0,_L_BRACE_B,0},
_R_BRACE_[]={_R_BRACE_M,0,_R_BRACE_B,0},
_WAVE_[]={_WAVE_M,0,_WAVE_B,0};

//按键扫描码存储区地址数组,排列顺序和order.h中按键的代号顺序相同

typedef unsigned char code *tt;
tt code kk[]={
_NULL_,
_A_,
_B_,
_C_,
_D_,
_E_,
_F_,
_G_,
_H_,
_I_,
_J_,
_K_,
_L_,
_M_,
_N_,
_O_,
_P_,
_Q_,
_R_,
_S_,
_T_,
_U_,
_V_,
_W_,
_X_,
_Y_,
_Z_,
_0_,
_1_,
_2_,
_3_,
_4_,
_5_,
_6_,
_7_,
_8_,
_9_,
_TAB_,
_SPACE_,
_BKSPACE_,
_CAPS_,
_LSHIFT_,
_LCTRL_,
_LGUI_,
_LALT_,
_RSHIFT_,
_RCTRL_,
_RGUI_,
_RALT_,
_APPS_,
_ENTER_,
_ESC_,
_F1_,
_F2_,
_F3_,
_F4_,
_F5_,
_F6_,
_F7_,
_F8_,
_F9_,
_F10_,
_F11_,
_F12_,
_PRINTSCRN_,
_SCROLL_,
_PAUSE_,
_INSE_,
_HOME_,
_PGUP_,
_DELETE_,
_END_,
_PGDN_,
_UP_,
_DOWN_,
_LEFT_,
_RIGHT_,
_NUM_,
_KP_A_,
_KP_S_,
_KP_M_,
_KP_D_,
_KP_DEL_,
_KP0_,
_KP1_,
_KP2_,
_KP3_,
_KP4_,
_KP5_,
_KP6_,
_KP7_,
_KP8_,
_KP9_,
_KPENTER_,
_C_SEMICOLON_,
_C_CAMMA_,
_C_PERIOD_,
_C_QUOTATION_,
_C_QUESTION_,
_C_ADD_,
_C_SUB_,
_C_OBLIQUE_LINE_,
_L_BRACE_,
_R_BRACE_,
_WAVE_
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -