¿Qué es GPIO y para qué se puede utilizar?

Primer plano de conectores goldpin en una computadora Raspberry Pi 4.
mattcabb/Shutterstock.com

Si posee una Raspberry Pi u otra computadora de aficionado similar, es posible que haya notado que tiene una función GPIO (entrada-salida de propósito general). La mayoría de los usuarios nunca usarán GPIO, pero si desea construir cosas, GPIO es esencial.

GPIO es un conjunto de pines

En el nivel más básico, GPIO se refiere a un conjunto de pines en la placa base o tarjeta adicional de su computadora. Estos pines pueden enviar o recibir señales eléctricas, pero no están diseñados para ningún propósito específico. Esta es la razón por la que se denominan E/S de «propósito general».

Esto es diferente a los estándares de puertos comunes como USB o DVI . Con esos cables, cada pin cableado dentro de la conexión tiene un propósito designado, que está determinado por el organismo rector que creó el estándar.

GPIO te pone a cargo de lo que realmente hace cada pin. Aunque todavía hay diferentes tipos de pines en la matriz GPIO.

Usando Raspberry Pi como ejemplo nuevamente, encontrará algunos tipos de pines:

  • Pines que proporcionan energía a voltajes típicos como 3.3V o 5V. Esto es para alimentar dispositivos conectados que no tienen su propia fuente de alimentación, como un simple LED .
  • Clavijas de tierra que no generan energía, pero que son necesarias para completar algunos circuitos.
  • Pines GPIO, que se pueden configurar para enviar o recibir señales eléctricas.
  • Pines de propósito especial, que varían según el GPIO específico en cuestión.
Relacionado:  Cómo ocultar la biblioteca de aplicaciones en la base del iPad

Las implementaciones de GPIO pueden variar en los detalles exactos según el dispositivo, pero la idea siempre es permitir que los usuarios reciban o envíen una señal eléctrica a casi cualquier cosa.

¿Para qué se utiliza GPIO?

El uso más común de GPIO es operar dispositivos electrónicos personalizados. Ya sea que esté construyendo su propio brazo robótico o una estación meteorológica de bricolaje, una interfaz GPIO le permite personalizar las señales para que operen su equipo correctamente.

Computadora de placa única Raspberry Pi conectada a una placa de prueba en un experimento de sobremesa.
Un proyecto de Raspberry Pi con una placa de pruebas. goodcat/Shutterstock.com

Las interfaces GPIO generalmente se usan junto con una «placa de pruebas». Las placas de prueba son un tipo de placa de circuito temporal. Puede crear prototipos de circuitos agregando, quitando o moviendo componentes electrónicos. Muchos proyectos que involucran dispositivos como una Raspberry Pi hacen que ensamble su dispositivo en una placa de prueba y luego lo conecte a sus pines GPIO usando cables.

Algunos kits avanzados de Raspberry Pi vienen con una placa de prueba integrada, como la computadora portátil CrowPi 2, que incluye tanto una Raspberry Pi como más sensores de los que puede sacudir.

Uno de los proyectos GPIO más simples para computadoras Raspberry Pi es agregar un botón de encendido simple , del que carece la placa estándar.

Otro dispositivo popular que cuenta con GPIO es el microcontrolador Arduino . Esta no es una computadora completa como una Raspberry Pi, sino un dispositivo diseñado para ser programable específicamente para controlar otros equipos. Por ejemplo, puede conectar un sensor de luz a un Arduino y luego programarlo para encender las luces de su jardín cuando se pone el sol. Los Arduinos han sido fundamentales para abrir el mundo de la robótica y la invención a personas que de otro modo no tendrían los medios para ingresar a la ingeniería y la programación.

Relacionado:  Cómo enviar mensajes de audio usando Siri en iPhone

La Fundación Raspberry Pi tiene su propio competidor Arduino, en forma de $4 Pico . El Pico cuenta con 30 pines GPIO, algunos de los cuales pueden manejar señales analógicas, en lugar de los pulsos digitales que son más comunes.

Cómo usar GPIO

Además de conectar sus pines GPIO a las conexiones correctas en su placa de circuito o dispositivos externos, su computadora o microcontrolador necesita saber qué enviar a través de esos cables o cómo entender las señales que ingresan a la interfaz GPIO.

¡Eso significa que necesita software, que la mayoría de las veces tiene que escribir! En los sistemas Raspberry Pi, es común escribir software en Python que pueda decirle al controlador GPIO qué enviar o escuchar las señales que llegan. ¡Después de todo, “Pi” se refiere a Python !

Python en particular tiene dos módulos conocidos como Rpi.GPIO y Gpiozero . Al invocar estos módulos, puede tomar el control del sistema GPIO y hacer que cumpla sus órdenes.

Los microcontroladores Arduino tienen su propio lenguaje de programación , lo que hace que sea particularmente fácil armar proyectos. Sin embargo, también puede usar una versión especial de Python conocida como MicroPython  .

Los peligros de GPIO

Cuando conecta un dispositivo USB a un puerto USB, usando un cable USB certificado, hay una probabilidad casi nula de que algo salga catastróficamente mal. Esto se debe a que estos estándares de IO han sido cuidadosamente diseñados, probados y luego probados un poco más para garantizar que sean seguros.

Cuando se trata de GPIO, la responsabilidad es suya. Usted es el que diseña su interfaz y sus circuitos. Si corta los pines, conecta la energía a cosas que no deberían recibir energía, o juega rápido y suelto con sus circuitos y conexiones, podría tener una pila de componentes muertos (y placas GPIO) en sus manos. Esta es la razón por la que es posible que desee invertir en un buen kit Raspberry Pi , ya que a menudo vienen con el hardware que necesita y proyectos de práctica  para que pueda aprender las cuerdas de manera segura.

Relacionado:  Cómo descargar y guardar imágenes de un documento de Google Docs