main.c
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <linux/input.h> int main(int argc, char **argv) { int fd = -1; struct input_event ev = {0}; fd = open("/dev/input/event3", O_RDONLY); if (fd > 0) { while (read(fd, &ev, sizeof(struct input_event))) { printf("type:%d, code:%d, value:%d\n", ev.type, ev.code, ev.value); } close(fd); } return 0; }
Key Code
UP EV_ABS CODE=17 VALUE=-1 DOWN EV_ABS CODE=17 VALUE=1 LEFT EV_ABS CODE=16 VALUE=-1 RIGHT EV_ABS CODE=16 VALUE=1 A EV_KEY CODE=305 VALUE=1 B EV_KEY CODE=304 VALUE=1 X EV_KEY CODE=308 VALUE=1 Y EV_KEY CODE=307 VALUE=1 F1 EV_KEY CODE=317 VALUE=1 F2 EV_KEY CODE=318 VALUE=1 L1 EV_KEY CODE=310 VALUE=1 R1 EV_KEY CODE=311 VALUE=1 L2 EV_REL CODE=2 VALUE=255 R2 EV_REL CODE=5 VALUE=255 M1 EV_KEY CODE=316 VALUE=1 SELECT EV_KEY CODE=314 VALUE=1 START EV_KEY CODE=315 VALUE=1 VOL_UP EV_KEY CODE=115 VALUE=1 VOL_DOWN EV_KEY CODE=114 VALUE=1 Fn EV_SW CODE=1 VALUE=1