lw35-upgrade/keyboard/keyboard-test-uart/main.c

159 lines
1.4 KiB
C

#include <stdio.h>
#define DN 0
#define UP 1
static char *keycode_table[] = {
"NULL",
"ESC",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"0",
"-",
"=",
"BS",
"TAB",
"Q",
"W",
"E",
"R",
"T",
"Y",
"U",
"I",
"O",
"P",
"[",
"]",
"ENTER",
"L CTRL",
"A",
"S",
"D",
"F",
"G",
"H",
"J",
"K",
"L",
";",
"'",
"`",
"L SHIFT",
"\\",
"Z",
"X",
"C",
"V",
"B",
"N",
"M",
",",
".",
"/",
"R SHIFT",
"*",
"L ALT",
"SPACE",
"CAPS LOCK",
"F1",
"F2",
"F3",
"F4",
"F5",
"F6",
"F7",
"F8",
"F9",
"F10",
"NUM LOCK",
"SCROLL LOCK",
"HOME 7",
"UP 8",
"PGUP 9",
"-",
"LEFT 4",
"KP 5",
"RT ARROW 6",
"+",
"END 1",
"DOWN 2",
"PGDN 3",
"INS",
"DEL",
"84",
"85",
"86",
"F11",
"F12",
"89",
"90",
"91",
"92",
"93",
"94",
"95",
"R ENTER",
"R CTRL",
"/",
"PRT SCR",
"R ALT",
"101",
"Home",
"Up",
"PgUp",
"Left",
"Right",
"End",
"Down",
"PgDn",
"Insert",
"Del",
"112",
"113",
"114",
"115",
"116",
"117",
"118",
"Pause"
};
int main()
{
FILE *f;
char c;
int ev = 0;
f = fopen("/dev/ttyUSB1", "rwb");
if (f) {
while (1) {
c = getc(f);
if (c < 0) {
c += 128;
ev = DN;
} else {
ev = UP;
}
printf("Key %3d (%s) %s\n",
c, keycode_table[c], (ev == UP ? "UP" : "DOWN"));
}
fclose(f);
} else {
fprintf(stderr, "Error: Could not open serial device.");
}
return 0;
}