En este post vamos a usar los puertos GPIO de la Raspberry para encender y apagar un LED. No vamos a usar (todavía) un lenguaje de programación; simplemente el comando gpio con la opción mode
y write
.
Al final podremos apagar y encender un LED conectado a la Raspberry, y aunque es un ejercicio básico, sienta las bases para poder usar los GPIO.
Configuración de GPIO
Voy a colocar este ejemplo con el modelo de Raspberry que tiene 40 puertos; mismo que es de los más recientes. Yo tengo la Pi 4 Model B pero la Pi 3 servirá de igual manera.
La referencia de los puertos está aquí:
Cortesía de la página oficial.
Recuerda que si tienes la Raspberry Pi 4 debes instalar wiringPi para que funcione.
El circuito
Vamos a conectar el LED al GPIO 15, que sería el número 10. En otras palabras el ánodo va al puerto número 10 (que es el 15 en GPIO) y el cátodo va a tierra.
Recuerda que debes usar una resistencia de 220 ohm o 47 ohm.
Aquí está el circuito:
Como ves, si contamos los pines sería el número 10, pero si vemos el diagrama, es el GPIO 15.
Encender y apagar LED
Nota importante: al usar los comandos vamos a referirnos a los puertos por el número de GPIO, y no por el número consecutivo. En este caso es el GPIO 15.
Veamos ahora la parte interesante. Abre una terminal dentro de tu Raspberry Pi. Comenzamos definiendo que el pin GPIO 15 será de salida:
gpio -g mode 15 out
Ahora vamos a encender el LED. Para ello enviamos un 1 al GPIO 15 con:
gpio -g write 15 1
Como ves, la sintaxis es:
gpio -g write NUMERO_GPIO ESTADO
Con eso se debió encender el LED:
Si no se ha encendido, comprueba el puerto, tus cables y la conexión del LED. Para apagarlo ejecuta:
gpio -g write 15 0
Con eso el LED se habrá apagado.
Resumen
El siguiente script de Bash va a encender y apagar el LED; será encendido y apagado al instante así que pon atención. Solo es el conjunto de comandos que mostré:
gpio -g mode 15 out
gpio -g write 15 1
gpio -g write 15 0
Más adelante traeré el mismo ejemplo pero usando Python.