sysfs es el nivel más bajo en el que podrá manipular GPIO en kernels recientes. Puede ser un poco tedioso pero ofrece varias ventajas sobre el viejo estilo de la API:
- Sin fea ioctl
- puede ser escrito con mucha facilidad (piensa scripts de inicio)
- Para las entradas, el archivo "valor" se puede encuestar fácilmente para subir/bajar/ambos bordes y será muy reactivo con las interrupciones de hardware
No tengo un código de ejemplo por el momento, pero al acceder a ellos a través del código C, a menudo implementé un muy simple envoltorio manipulación de descriptores de archivos y tener variaciones de la siguiente int erface:
int gpio_open(int number, int out); /* returns handle (fd) */
int gpio_close(int gpio);
int gpio_set(int gpio, int up);
int gpio_get(int gpio, int *up);
int gpio_poll(int gpio, int rising_edge, int timeout);
A partir de entonces, la implementación es bastante sencilla.
Pruebe [this] (http://foxlx.acmesystems.it/?id=22) o [este] (http://www.mjmwired.net/kernel/Documentation/gpio.txt). –