一下是我做6410键盘:0~9,A~F
#define SIZE_BITS 4
#define SIZE_COLS 4
#define SIZE_ROWS 4
====================================
#define ScanCodeTableFirst 0x00
#define ScanCodeTableLast 0xF
UINT8 ScanCodeToVKeyTable[] =
{
VK_T0,// scan code 0,
VK_T1,// scan code 1,
VK_T2,// scan code 2,
VK_T3,// scan code 3
VK_T4,// scan code 4
VK_T5,// scan code 5
VK_T6,// scan code 6
VK_T7,// scan code 7
VK_T8,// scan code 8,
VK_T9,// scan code 9
'A', // scan code 10
'B', // scan code 11
'C', // scan code 12
'D', // scan code 13
'E', // scan code 14
'F', // scan code 15
};
====================================
struct KSTATE KeyChange[SIZE_KEY];
struct KCODE KeyCode[SIZE_KEY] =
{
{KCODE_TYPE_NORMAL , 0x0000 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0001 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0002 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0003 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0004 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0005 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0006 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0007 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0008 , 0, 0},
{KCODE_TYPE_NORMAL , 0x0009 , 0, 0},
{KCODE_TYPE_NORMAL , 0x000a , 0, 0},
{KCODE_TYPE_NORMAL , 0x000b , 0, 0},
{KCODE_TYPE_NORMAL , 0x000c , 0, 0},
{KCODE_TYPE_NORMAL , 0x000d , 0, 0},
{KCODE_TYPE_NORMAL , 0x000e , 0, 0},
{KCODE_TYPE_NORMAL , 0x000f , 0, 0},
};
代码需要根据硬件修改