Acceder a un puerto GPIO con Python en su Raspberry Pi 3

Publicado por

El Raspberry Pi se diseñó principalmente para propósitos educacionales, para permitir a los jóvenes dar sus primeros pasos en el mundo de la programación con una computadora Linux económica. Sin embargo, a medida que los aparatos electrónicos se vuelven cada día más poderosos, y con la adición de Bluetooth 4.1. y WIFI al Raspberry Pi 3, el dispositivo ahora puede cumplir los requisitos profesionales.

Una computadora estándar no otorga acceso a los pines del procesador. Por ejemplo, no hay forma de conectar un nuevo sensor que se comunique a través de un bus I2C en una computadora. Sin embargo, el Raspberry Pi permite el acceso al puerto GPIO. Este tipo de característica normalmente se reserva para los microcontroladores. Sin embargo, para esto hace falta algo de conocimiento sobre programación integrada, lo que puede ser tedioso para los que no son expertos. El Raspberry Pi permite programar el puerto GPIO gracias a unas cuantas líneas de código en Python. Python está entre los idiomas más fáciles de aprender y tiene una comunidad muy grande que no está compuesta solo de ingenieros de informática. El Raspberry Pi creó su propio mercado entre computadoras estándares y microcontroladores. Demos una mirada al procedimiento que se debe seguir para habilitar un puerto GPIO en un Raspberry.

El Raspberry Pi usa Raspbian como su sistema operativo predeterminado si la biblioteca Python RPi.GPIO ya está cargada. Actualmente usa la versión 0.6.2, que se puede descargar en pypi.python.org.

Hay ejemplos que explican cómo usar esta biblioteca disponibles en sitios web de código abierto.

Ya que es un programa Python, es necesario importar las bibliotecas. Se necesitan dos bibliotecas: la biblioteca RPI.GPIO, para controlar los pines, y la biblioteca de tiempo, que permite a los usuarios crear sincronización entre cada transición del pin.

Luego, es necesario declarar el tipo de sistema de numeración. La opción BOARD usa los pines tal como están distribuidos en el Pi. Este conector y la numeración no cambian entre versiones. La opción BCM usa la numeración Broadcom SoC, que es diferente en distintas versiones de pines de Raspberry. La siguiente tabla muestra las diferencias entre los dos sistemas de numeración.

En nuestro programa, la función de comando GPIO.setmode usa y selecciona el número de la placa.

Luego, el pin 12 se configura como la salida y habilitamos este pin. En un bucle infinito, el pin se coloca en alto voltaje (3V) por un segundo, luego a tierra (0V) por un segundo.

El factor de forma del Raspberry Pi permite un acceso físico fácil a los puertos GPIO, y se conecta un osciloscopio a un pin conectado a tierra (pin 25) y el pin 12.

 

La captura de pantalla del osciloscopio confirma que el pin 12 alterna entre 0 y 3V a una frecuencia de 0,5Hz, según lo programado en el script Python.

El script Python no se puede usar en un sistema Real Time, ya que el sistema operativo Linux no garantiza la sincronización exacta para controlar el pin. Otras prioridades pueden retrasar el control de un puerto GPIO, que no es una alta prioridad. Sin embargo, es una forma rápida, eficiente y fácil para comunicarse con el mundo externo que las computadoras tradicionales no ofrecen.

Últimas noticias

Lo sentimos, pero su selección de filtros no devolvió resultados.

Hemos actualizado nuestra política de privacidad. Por favor tome un momento para revisar estos cambios. Al hacer clic en Acepto, usted está de acuerdo con la Politica de Privacidad de Arrow Electronics y sus condiciones de uso.

Nuestro sitio Web coloca cookies en su dispositivo para mejorar su experiencia y nuestro sitio. Lea más sobre las cookies que utilizamos y cómo desactivarlas aquió. Es posible que se utilicen las cookies y tecnologías de seguimiento con fines de marketing.
Al hacer clic en "Aceptar", usted está consintiendo la colocación de cookies en su dispositivo y el uso de tecnologías de seguimiento. Haga clic en "Leer más" a continuación para obtener más información e instrucciones sobre cómo desactivar las cookies y tecnologías de seguimiento. Si bien la aceptación de cookies y tecnologías de seguimiento es voluntaria, la desactivación de estos puede resultar en que el sitio web no funcione correctamente, y es posible que ciertos anuncios sean menos relevantes para usted.
Respetamos su privacidad. Lea nuestra política de privacidad aquió