¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Raspberry Pi 4
  3. El GPIO de la Raspberry Pi
Extrait - Raspberry Pi 4 Saque el máximo partido a su microordenador (incluye un proyecto de estación meteorológica)
Extractos del libro
Raspberry Pi 4 Saque el máximo partido a su microordenador (incluye un proyecto de estación meteorológica)
1 opinión
Volver a la página de compra del libro

El GPIO de la Raspberry Pi

Presentación del GPIO

El GPIO de la Raspberry Pi es idéntico en todos los modelos actuales. Se asegura la compatibilidad entre las distintas versiones del microordenador.

Los pines del GPIO de la Raspberry Pi están conectados a un conector de 40 puntos J8, situado en el borde de la tarjeta. Los pines del conector están repartidos en dos filas de 20. Hay 26 pines GPIO accesibles (de GPIO 2 a GPIO 27).

Son entradas/salidas digitales capaces de enviar y recibir señales digitales 1 y 0 bajo la forma de tensiones de 0 voltios y de 3,3 voltios.

Algunos pines se pueden usar tanto para proporcionar un bus I²C, un bus SPI o una E/S UART. En este caso, los pines en cuestión no se pueden usar como entradas/salidas digitales.

A continuación, se muestra el esquema de los pines del conector GPIO. Los pines impares están a la izquierda y los pines pares a la derecha.

El GPIO es idéntico en los BCM2835 (Raspberry Pi Zero), BCM2837 (Raspberry Pi 3 A+ y B+) y BCM2711 (Raspberry Pi 4). En todo el capítulo, el SoC será designado por BCM2xxx.

Conector GPIO J8

images/07LF01.png

En esta foto del conector GPIO J8, el pin número 1 está a la izquierda en primer plano. El encapsulado de este pin 1 debajo de la tarjeta es cuadrado. El esquema siguiente presenta el conector GPIO (J8) visto desde arriba.

images/LF08_001.png

Doce pines son relativos a la alimentación. Las tensiones de alimentación 3,3 V y 5 V así como la masa son accesibles en los pines del GPIO para alimentar circuitos exteriores. Por el contrario, se puede alimentar a la Raspberry Pi con 5 V a partir de los pines del GPIO. El GPIO proporciona dos pines de 3,3 V, dos pines de 5 V y 8 pines de masa.

La tabla que se muestra aquí debajo representa en detalle el uso de los fines del GPIO.

Pines

Uso

Descripción

6-9-14-20-25-30-34-39

Alimentación

Masa

2-4

Alimentación

+ 5 V

1-17

Alimentación

+ 3,3 V

8-10

UART

Estos dos pines dan acceso a un UART (Universal Asynchronous Receiver Transmitter: emisor receptor asíncrono universal) que podrá dialogar con un terminal o con cualquier otro tipo de aparato que posea un puerto serie. Estos pines son el 8: TXD (Transmitted Data: datos emitidos) y el 10: RXD (Received Data: datos recibidos).

19-21-23-24-26

Bus SPI

Estos 5 pines proporcionan un bus SPI (Serial Peripheral Interface: interfaz de periférico serie). Es un bus de transmisión de datos serie síncrono. Se usa para comunicar circuitos integrados. Las señales son SCLK...

Características técnicas de las E/S

Se trata de entradas/salidas (E/S) digitales capaces de enviar y recibir señales digitales 1 y 0 bajo la forma de tensiones 0 voltios y 3,3 voltios. No existe ninguna entrada/salida analógica.

Como en todo circuito electrónico, los puestos del GPIO tienen limitaciones de tensión (V) y de corriente (I) que hay que conocer e integrar para usar la Raspberry Pi con seguridad.

1. Numeración de las E/S

Las E/S se numeran de distintas maneras. Habrá que estar atento al modo de numeración usado. Los diferentes modos son los siguientes:

  • BCM - numeración utilizada por el fabricante del SoC Broadcom. También se le llama "GPIO".

  • Física - numeración correspondiente a la posición física de los pines en el conector GPIO.

  • Biblioteca - numeración interna de una biblioteca. Usada por ejemplo cuando se utiliza la librería Wiring Pi.

Por ejemplo, el pin físico 12 corresponde a BCM 18 y a Wiring Pi pin 1.

Antes de empezar un proyecto o una realización, habrá que comprobar con cuidado el modo usado y asegurarse de la concordancia de los pines.

2. Esquema de la interfaz GPIO

El esquema siguiente es una representación simplificada de la etapa de salida de un pin GPIO del SoC Broadcom BCM2xxx.

images/R_004.png

El pin de entrada/salida (E/S GPIO24) se encuentra a la izquierda del esquema. A la derecha de este punto de acceso físico, los componentes representados están en el SoC. Todas las E/S GPIO están basadas en el mismo circuito.

Se puede parametrizar la corriente de salida de 2 mA a 16 mA en intervalos de 2 mA, elegir la inclinación (slew rate: tasa de crecimiento) de la señal y poner en servicio la histéresis en la entrada. Estas elecciones son válidas para el conjunto de los pines del GPIO. No se puede modificar por separado cada pin.

La histéresis permite la implementación de una señal usando umbrales diferentes en el flanco ascendente y en el flanco descendente. Se usa para eliminar el ruido de una señal, por ejemplo.

3. Histéresis

Cuando...

Conexión GPIO - placa de pruebas

1. Cable puente

images/07LF05.png

Los cables puente se encuentran generalmente disponibles bajo la forma de una banda de 40 cables de distintos colores. Las extremidades están equipadas con conectores machos y hembras. Existen 3 tipos de cables: macho/macho, hembra/hembra y hembra/macho. Están disponibles con diferentes longitudes. Para la experimentación, los cables de 20 cm de largo son muy prácticos.

Con la placa de pruebas, lo que más se utiliza son los cables hembra (por el lado GPIO)/macho (por el lado placa de pruebas). Estaría bien tener uno de cada clase en el caso en que quiera dar respuesta a todos los casos posibles.

2. Tarjeta T-Cobbler

Hay cables disponibles para conectar el puerto GPIO de la Raspberry Pi con una placa de pruebas (breadboard). El kit "Pi T-Cobbler" ofrecido por Adafruit contiene un cable de conexión de banda, con dos tomas de 40 contactos insertadas en la banda.

images/07LF06.png

Una tarjeta de circuito impreso en forma de T lleva inscripciones serigrafiadas que indican el nombre de cada uno de los 40 pines. Se proporciona un conector de 40 pines, así como conectores para soldar en la banda. El conector de 40 pines se soldará encima de la barra horizontal de la T y asegurará la conexión con el cable de banda. Los conectores de banda se soldarán debajo de la tarjeta de circuito impreso, en cada lado de la barra vertical...

Conclusión

Los pines GPIO le dan a la Raspberry Pi 4 un acceso al mundo físico. Son relativamente fáciles de configurar tanto en lectura como en escritura, particularmente con las librerías desarrolladas en diferentes lenguajes.

El número restringido de puertos GPIO, sus limitaciones en tensión e intensidad y la ausencia de entradas/salidas analógicas han provocado el desarrollo de una multitud de tarjetas de extensión.