Explicación del pin GPIO

12

Mi kit Pi 2 vino con la siguiente tarjeta de referencia de pin GPIO.

Referencia rápida del encabezado Pi GPIO

Además de mostrar todos los números de pin de 5V, 3.3V, GND y GPIO, tiene información adicional sobre algunos de los pines GPIO como TXD, RXD, UART, CLK, PCM, DE0, CE1, SPI, DIN, DOUT, PCM, SDA, SCL, I2C, MOSI, MISO, SCLK, SPI, PCM, FS junto con varios colores en estos.

¿Qúe significa todo esto? Supongo que estos son pines especiales para algo. ¿No se pueden usar todos los GPIO de la misma manera?

kspearrin
fuente

Respuestas:

13

La hoja de datos de Broadcom vinculada desde raspberrypi.org en la respuesta de Boštjan Jerko es una gran referencia; por ejemplo, la sección 6.2 describe las diversas funciones que se pueden asignar a cada pin según la respuesta de joan. Para resumir el significado de los indicados en su tarjeta:

  • I 2 C, SDA y SCL: en la hoja de datos de Broadcom, estos solo se mencionan directamente en esa tabla de la sección 6.2, pero son para un bus I 2 C, que se trata en la sección del BSC (controlador serie Broadcom). El 'DA' en SDA significa datos, el 'CL' en SCL significa reloj; la S significa serie. Puede leer más sobre la importancia de la línea del reloj para varios tipos de bus de computadora , pero no tiene que entenderla en ese nivel para usarla, como dice joan, hay bibliotecas de programación que abstraen eso. Probablemente encontrará dispositivos I 2 C que vienen con sus propios controladores de espacio de usuario y el kernel de Linux también incluye algunos. La mayoría de las computadoras tienen un I 2C bus, presumiblemente para algunos de los propósitos enumerados por wikipedia , como la interfaz con el RTC (reloj en tiempo real) y la configuración de la memoria. Sin embargo, no está expuesto, lo que significa que no puede adjuntarle nada más, y hay muchas cosas interesantes que se pueden conectar, prácticamente cualquier tipo de sensor común (barómetros, acelerómetros, giroscopios, luminómetros, etc. ), así como dispositivos de salida y pantallas. Puede comprar un adaptador USB a I 2 C para una computadora normal, pero cuestan unos cientos de dólares . Puede conectar varios dispositivos al bus expuesto en el pi.

  • UART, TXD y RXD: esta es una línea serial tradicional ; Durante décadas, la mayoría de las computadoras han tenido un puerto para esto y un puerto para paralelo . 1 Algunas distribuciones del sistema operativo orientadas a pi, como Raspbian, se inician de manera predeterminada con esta línea serial activa como consola, y puede conectar el otro extremo a otra computadora y usar algún software apropiado para comunicarse con ella. Tenga en cuenta que esta interfaz no tiene una línea de reloj; los dos pines se pueden usar para la comunicación dúplex completa (transmisión y recepción simultáneas).

  • PCM, CLK / DIN / DOUT / FS: PCM es cómo se codifica el audio digital sin comprimir. El flujo de datos es en serie, pero la mejor forma de interpretar esto es con una línea de reloj separada (más cosas de nivel más bajo).

  • SPI, MOSI / MISO / CE0 / CE1: SPI es un protocolo de bus serie que sirve para muchos de los mismos propósitos que I 2 C, pero debido a que hay más cables, puede funcionar en dúplex completo, lo que lo hace más rápido y más flexible.


1. El pi en realidad no tiene ningún estilo particular de bus paralelo expuesto, pero presumiblemente podría implementar uno con algunos de los pines.

Ricitos de oro
fuente
Una interfaz USB i2c cuesta un par de cientos de dólares? woah
ACarter
4

No todos los gpios se pueden usar de la misma manera.

Un gpio se puede configurar para estar en uno de los ocho modos diferentes llamados

ENTRADA, SALIDA, ALT0, ALT1, ALT2, ALT3, ALT4 y ALT5.

Todos se pueden usar en los modos INPUT y OUTPUT.

El uso de los otros modos varía según el gpio. Algunos modos pueden cambiar un gpio para que sea un reloj y el mismo modo puede cambiar un gpio diferente para que sea una línea UART RXD.

Esto probablemente es irrelevante para el 99% de los usuarios. Usarán una biblioteca para manipular los gpios y la biblioteca establecerá el modo necesario.

Consulte la página 102 Periféricos de BRAZO BCM2835 para conocer los modos y significados de gpio (solo los gpios 2-27 son relevantes en Pis reciente).

joan
fuente
2

Cada uno de los pines tiene su propio propósito especial. No se pueden usar todos para entrada y salida. Puede consultar el tutorial de makezine para obtener más información sobre GPIO. Para conocer las funciones especiales de los pines individuales, puede visitar este sitio web .

Meharban Singh
fuente
1

Los datos del pin que obtiene en la tarjeta de referencia se refieren al microcontrolador utilizado en la placa. Encontré un buen documento que explica los pines.

En resumen: puede usar pines para comunicarse con el mundo exterior. Por ejemplo, SPI significa interfaz de bus periférico en serie , I2C es otro protocolo ...

Boštjan Jerko
fuente
1

Cabe señalar que el controlador Broadcom numera los pines de manera diferente a la Raspberry Pi. No se confunda al hacer referencia al enlace anterior y luego mirar la tarjeta de referencia rápida de CanaKit.

CanaKit hace un gran trabajo con sus kits, tengo varios.

FWIW, los pines UART son para comunicación en serie y los he usado mucho.

Este sitio tiene MUCHA información sobre el hardware Pi

Randal R.
fuente