TUTORIAL RASPBERRY PI - GPIO [PARTE 1]: CONTROL DE UN LED

¡Hola! En este tutorial voy a explicar de una manera muy sencilla cómo acceder a los puertos GPIO de la Raspberry Pi con el fin de encender y apagar un LED. Voy a hacer varias partes de esto y, como podéis ver en el título, esta es la primera.

Antes de nada, vamos a coger un LED y un par de cables y lo vamos a conectar al GPIO 17 y a tierra (GND) de la Raspberry Pi.

Debe quedar algo parecido a esto:

La manera de la que vamos a acceder a los GPIO (en este caso al 17) es como si fuesen directorios. Podemos utilizar comandos como 'ls', 'cat' o 'echo', entre otros, para conocer la estructura y contenidos de los directorios.

Ahora mismo no tenemos ningún pin accesible. Ni de entrada ni de salida. Tenemos que crearlo nosotros mismos. Queremos tener acceso al GPIO 17, así que introducimos el siguiente comando:

echo 17 > /sys/class/gpio/export

Tras esto, el sistema ha creado un archivo con una estructura GPIO que corresponde al número 17. A continuación, tenemos que informar a la Raspberry Pi de si el pin va a ser de salida o de entrada. Como lo que queremos es encender un LED, el GPIO 17 será de salida. Introducimos el siguiente comando:

echo out > /sys/class/gpio/gpio17/direction

Con esto, el sistema ya sabe que el pin será de salida. Ahora tendremos que darle valores. Existen dos posibles: '0' y '1'.

Para encender el LED:

echo 1 > /sys/class/gpio/gpio17/value

Para apagar el LED:

echo 0 > /sys/class/gpio/gpio17/value

Una vez hayamos acabado de encender y apagar el LED, tendremos que eliminar la entrada GPIO creada, es decir, el GPIO 17. Para ello introduciremos el siguiente comando:

echo 17 > /sys/class/gpio/unexport

Con esto, ya sabemos crear, eliminar y cacharrear con los pines GPIO para encender y apagar LEDs. Todos sabemos que esto es algo incómodo, así que lo ideal sería crear un programa, por ejemplo en Python, que nos ayude a gestionar nuestros GPIO. Esto lo dejaremos para el siguiente tutorial.

¡Un saludo!