Blog
GPIO Raspberry Pi explicacion y uso, encender un led
- Publicado por: Rafael Fernandez
- Categoría: Blog Raspberry Pi

Aprender la importancia de saber manejar los pines de nuestro Raspberry Pi
Conectar y encender un LED con Raspberry Pi
Hola y bienvenidos al tutorial 6 de la serie de Raspberry Pi. En este tutorial, vamos a explicar y utilizar los pines GPIO (General Purpose Input Output) en nuestras placas.
Estos pines están conectados directamente a nuestro chip Broadcom, así que cuidado ⚠ puedes freír tu Raspberry Pi con un simple error enchufando el pin equivocado ⚠ . Dicho esto, la mayor parte de las impresionantes funcionalidades de la Raspberry Pi viene en estos pines, así que es una cosa gratificante de aprender.
Introducción a los GPIO y esquemas
Lo primero debes hacer es familiarizarse con cuáles de los pines puedes usar y qué es lo que hacen. El mejor diagrama que he encontrado por la red es el siguiente (ojo que cada modelo de Raspberry Pi tiene variaciones). Nombres de pin de Broadcom (BCM):
Esquemas de los GPIO según el modelo
Para compararla con tu Raspberry Pi, orienta los pines para que estén en la parte superior derecha de la tabla.
Todos esos pines amarillos son los típicos de GPIO. Los verdes y celestes se pueden usar si necesitas desactivar algunas características en raspi-config. El orden de los pines nunca cambia, no importa qué versión de la Raspberry Pi modelo B tengas, empezando de arriba hacia abajo. Los modelos posteriores tienen más pines, como se que se muestra en la imagen.
Los pines GPIO son el principal interés para nosotros, y estos pines tienen básicamente dos estados: alto o bajo, y podemos combinar estas opciones binarias para crear muchos más resultados con circuitos para interactuar con nuestros programas en el mundo.
Ejemplo: Encender un led con las Raspberry Pi
Por ahora, sólo usemos las señales altas y bajas para encender una luz LED basada en nuestro programa.
Lo que necesitarás para esto (además de tu Raspberry Pi):
10 x cables puente macho a hembra.
1 x Breadboard
3 x Luz LED
~6 x Resistencias (entre 300 y 1K Ohm). Necesitará por lo menos 1K y 2K ohmios para el sensor de distancia, luego resistencia ~300-1K por cada bombilla LED.
1 x Sensor de distancia ultrasónico HC-SR04
Usaremos algunos cables de puente M-F en el siguiente tutorial, dos LEDs más y más resistencias, así que es bueno comprar un kit como el que os recomendé aquí.
La única variable aquí es la luz LED. Las luces LED van a querer consumir diferentes cantidades de energía dependiendo de la luz, que puede quemar tu Raspberry Pi. Una opción decente es tener una variedad de resistencias, empezando con una gran resistencia y disminuyéndola gradualmente hasta que se sienta satisfecho con la intensidad de la luz LED. La mayoría de los LEDs funcionan perfectamente con una resistencia de 300-1K ohmios. Cuanta más resistencia utilice, más se atenuará el LED. Si usas suficiente resistencia, ni siquiera verás el LED encendido. Si llegas a una resistencia de 300 Ohm y todavía no puedes ver el LED en absoluto, entonces lo más probable es que esa bombilla sea mala o este rota, prueba otra, o también podría ser que tu circuito esté conectado incorrectamente, el cable del puente es malo… etc, pero normalmente es la bombilla. Además, asegúrese de tener la bombilla conectada correctamente.
En primer lugar, si no estás familiarizado con una placa base, la idea de una es ayudarle a probar rápidamente un circuito, así como para aprender a trabajar con circuitos sin hacer ninguna soldadura.
Una típica pizarra es algo así:
Las filas a lo largo de los bordes están conectadas verticalmente, y las porciones centrales están conectadas horizontalmente. Cada vez que hay un hueco más grande, como en el centro de esta placa, no está conectado. Si desea que estas partes estén conectadas, tiene que conectarlas.
Cada una de las cajas de colores ilustra qué partes se deben conectar.
Antes de continuar, apague la Raspberry Pi y desenchufe:
sudo shutdown -h now
Para nuestro circuito, queremos:
Las cajas marcadas son los alambres de puente por color, y las cajas mismas son los pernos en la Raspberry Pi o las aberturas en el tablero.
Una imagen física:
Los pines de la Raspberry Pi:
Ahora puedes encender tu Raspberry Pi y empezaremos el código.
En la terminal de tu Raspberry Pi, escribe:
sudo apt-get install python-rpi.gpio
Probablemente ya lo tienes, pero sólo para estar seguros. A continuación, cree un nuevo archivo de python y comencemos:
import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM)
La razón por la que queremos establecer el modo aquí es porque en realidad hay dos etiquetas para todos los pines, Broadcom (BCM) y Board (BOARD). La opción de tarjeta le permitirá referirse al número real del pin en la tarjeta, y el número de Broadcom es el número real del pin que el chip Broadcom lo considera. Parece ser que la especificación BCM es el número de pin *actual*, así que lo usaremos. Me gusta esto de todos modos, ya que siempre me obliga a revisar el diagrama y tener cuidado con mis conexiones.
Continuando con nuestro guión:
GPIO.setup(18, GPIO.OUT)
Aquí, estamos configurando el pin para que sea un pin que produzca información. También podemos establecer el pin para recoger la información en su lugar ( pero eso es algo que haremos en el próximo tutorial)
GPIO.output(18, GPIO.LOW) time.sleep(3)
Aquí, le decimos al pin 18 que emita una señal alta, y haremos una pausa de 3 segundos.
GPIO.output(18, GPIO.LOW) GPIO.cleanup()
Finalmente, cambiamos la salida del pin a una señal LOW, y luego utilizamos GPIO.cleanup() para restablecer los estados del pin a sus estados predeterminados antes de que terminemos con el programa. Hacemos esto para que el próximo programa que se ejecute entre en un estado que espera. Es fácil olvidar y dejar varios pines en la instalación de forma diferente y encontrar que actúan extraño.
El código completo:
import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setup(18, GPIO.OUT) GPIO.output(18, GPIO.HIGH) time.sleep(3) GPIO.output(18, GPIO.LOW) GPIO.cleanup()
El resultado debería ser que el LED se enciende durante tres segundos:
➡ ¡Felicidades! Puedes seguir experimentando con Raspberry Pi si tienes más conocimientos en electrónica, pero se muy cuidadoso ya que puedes dañar tu placa. Aprende mas sobre el manejo, administración y operación de las Raspberry Pi en nuestro Curso de Raspberry Pi:
[…] Son las mismas importaciones y modo inicial que en el tutorial anterior. […]
[…] Curso de Raspberry Pi con Python, 6º clase […]