main.c
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <linux/input.h> // UP: 103 // DOWN: 108 // LEFT: 105 // RIGHT: 106 // A: 57 // B: 29 // X: 42 // Y: 56 // START: 28 // SELECT: 97 // MENU: 1 // L1: 18 // L2: 15 // R1: 20 // R2: 14 // POWER: 116 int main(int argc, char **argv) { int fd = -1; struct input_event ev = {0}; fd = open("/dev/input/event0", O_RDONLY | O_NONBLOCK | O_CLOEXEC); if (fd > 0) { while (read(fd, &ev, sizeof(struct input_event))) { if (ev.type == EV_KEY) { printf("code:%d, value:%d\n", ev.code, ev.value); } } close(fd); } return 0; }