Diseño de PCB, Fabricación de PCB, tarjeta de circuito impreso, PEVD, y selección de componentes con un servicio único

Descargar | Acerca de | Contacto | Mapa del sitio

Comprender la verdadera naturaleza de GPIO, I2C, SPI, UART, USARTO, e interfaces de comunicación USB - UGPCB

Tecnología de PCB

Comprender la verdadera naturaleza de GPIO, I2C, SPI, UART, USARTO, e interfaces de comunicación USB

Debes haber visto varias interfaces en muchas placas de circuitos de dispositivos electrónicos., como GPIO, I2C, SPI, UART, USARTO, USB, etc.. Debes tener curiosidad acerca de los principios de funcionamiento., propósitos, y diferencias entre estas interfaces en las placas de circuito. Hoy, Nuestro editor visitó colegas del Departamento Técnico de UGPCB Company para explicar su “verdadera naturaleza.”

Interfaces de comunicación

Interfaces de comunicación

Diferencias simples

1) GPIO (Salida de entrada de propósito general) es una entrada/salida de uso general, puerto general, Extensor de bus que simplifica la expansión de E/S utilizando el estándar industrial I2C, SMBUS™, o SPI™ interfaces. Cuando los microcontroladores o conjuntos de chips carecen suficientes puertos de E/S, o cuando los sistemas requieren comunicación o control remoto, Los productos GPIO pueden proporcionar funciones adicionales de control y monitoreo.

2) SPI (Interfaz periférica en serie) es un autobús en serie bidireccional síncrono estándar de cuatro hilos. La interfaz SPI se usa principalmente en EEPROM, DESTELLO, relojes en tiempo real, Convertidores publicitarios, y entre procesadores de señal digital y decodificadores de señal digital. SPI es una alta velocidad, duplex, bus de comunicación sincrónico que ocupa solo cuatro pines en el chip, Guardar los recuentos de pines y el espacio de diseño de PCB. Debido a sus características simples y fáciles de usar, Cada vez más chips están integrando este protocolo de comunicación.

3) I2do (Autobús inter-IC) es un bus en serie de dos hilos desarrollado por Philips para conectar microcontroladores y sus dispositivos periféricos. Es un estándar de bus ampliamente adoptado en el campo del control de comunicación microelectrónica. Tiene las ventajas de menos líneas de interfaz, Métodos de control simples, formularios de embalaje de dispositivos pequeños, y tasas de comunicación más altas.

4) UART (Transmisor de receptor asíncrono universal) es un dispositivo asíncrono/transmisor asíncrono universal.

5) Transmisor de receptor asíncrono síncrono universal de USART;

6) USB Universal Serial Bus (Bus universal)

7) Can Fieldbus

Tabla de parámetros de transmisión de interfaz

Tabla de parámetros de transmisión de interfaz

Composición de líneas de datos de transmisión

El bus SPI consta de tres líneas de señalización en serie. (Sclk), Salida de datos en serie (SDO), y entrada de datos en serie (IDE). El bus SPI puede conectar múltiples dispositivos SPI. El dispositivo SPI que proporciona el reloj SPI es el maestro o el dispositivo principal (Maestro), mientras que otros dispositivos son esclavos o dispositivos de esclavos (Esclavo). Los dispositivos maestros y esclavos pueden lograr una comunicación full-duplex. Cuando hay múltiples dispositivos de esclavos, Se puede agregar una línea de selección de esclavos adicional.

Si simula el autobús SPI con puertos generales IO, es necesario tener un puerto de salida (SDO), un puerto de entrada (IDE), y dependiendo del tipo de dispositivo implementado, Otro puerto si implementa dispositivos maestros y esclavos, Requerir puertos de entrada y salida; Si solo implementa dispositivos maestros, Un puerto de salida es suficiente; Si solo implementa dispositivos de esclavos, Se necesita un puerto de entrada.

El autobús I2C es un bidireccional, de dos ciliamentos (SCL, SDA), de serie, Estándar de interfaz de múltiples maestros con un mecanismo de arbitraje de bus, haciéndolo muy adecuado para un rango de cerca, Comunicaciones de datos poco frecuentes entre dispositivos. En su sistema de protocolo, Al transmitir datos, Se incluye la dirección del dispositivo de destino, habilitación de redes de dispositivos.

Si simula el bus I2C con puertos generales de IO para la transmisión bidireccional, un puerto de entrada/salida (SDA) es necesario, y otro puerto de salida (SCL) se requiere. (Tenga en cuenta que mi comprensión de I2C es relativamente limitada, Entonces esta descripción puede estar incompleta.)

El autobús UART es un puerto serie asincrónico, Por lo tanto, generalmente tiene una estructura mucho más compleja que los dos puertos seriales sincrónicos anteriores (Como se introdujo en los libros de microcontroladores, Aunque no se considera complejo). Generalmente consiste en un generador de tarifas de baudios (la tasa de baudios generada es igual a 16 veces la velocidad de transmisión en baudio), Un receptor UART, y un transmisor UART, con dos cables en hardware, uno para enviar y otro para recibir.

Claramente, Si simula el autobús UART con puertos generales IO, Se requieren un puerto de entrada y un puerto de salida.

Desde el segundo punto, Es evidente que SPI y UART pueden lograr dúplex completo, Pero I2C no puede.

Diferencias de protocolo de comunicación

SPI

 

SPI

SPI

SPI es un protocolo que permite que un dispositivo maestro inicie la comunicación sincrónica con un dispositivo esclavo, completando así el intercambio de datos. Este método de comunicación tiene la ventaja de ocupar menos puertos; generalmente, Cuatro son suficientes para la comunicación básica. Al mismo tiempo, La velocidad de transmisión también es muy alta. Generalmente, Requiere que el dispositivo maestro tenga un controlador SPI (pero también se puede simular) para comunicarse con chips basados ​​en SPI.

El principio de comunicación de SPI es muy simple; Requiere al menos cuatro cables, Pero tres también pueden ser suficientes. Son comunes a todos los dispositivos basados ​​en SPI SDI (entrada de datos), SDO (salida de datos), Sck (reloj), CS (selección de chips). El CS controla si el chip está seleccionado, Las operaciones de significado en este chip solo son efectivas cuando la señal de selección de chip está en una señal de habilitación predeterminada (alto nivel o bajo nivel). Esto permite que se conecten múltiples dispositivos SPI en el mismo bus.

Las siguientes son las tres líneas responsables de la comunicación.. La comunicación se completa a través del intercambio de datos. Aquí, Es importante saber que SPI es un protocolo de comunicación en serie, lo que significa que los datos se transmiten bit a poco. Es por eso que existe la línea de reloj SCK. El SCK proporciona pulsos de reloj, y SDI, SDO Completa transmisión de datos basada en estos pulsos. La salida de datos ocurre a través de la línea SDO; Cambios de datos en el borde ascendente o el borde descendente del reloj y se lee en el borde inmediato de la caída o el ascenso. Un bit de transmisión de datos se completa de esta manera. La entrada sigue el mismo principio. De este modo, al menos ocho cambios en la señal del reloj (Un ciclo hacia arriba y hacia abajo constituye un cambio) permitir la transmisión de 8 bits de datos.

Cabe señalar que la línea de señal SCK está controlada solo por el dispositivo maestro, y los dispositivos de esclavos no pueden controlar la línea de señal. Similarmente, en un dispositivo basado en SPI, Debe haber al menos un dispositivo maestro.

Esta característica de transmisión tiene una ventaja sobre las comunicaciones en serie típicas a diferencia de la comunicación en serie convencional, que transmite al menos 8 bits de datos continuamente, SPI permite que los datos se transmitan bit a poco, e incluso permite hacer una pausa porque la línea de reloj SCK está controlada por el dispositivo maestro. Cuando no hay transición de reloj, El dispositivo de esclavos no recopila ni transmite datos. En otras palabras, El dispositivo maestro puede controlar la comunicación a través del control de la línea de reloj SCK.

SPI también es un protocolo de intercambio de datos ya que la entrada de datos SPI y las líneas de salida son independientes, Permiten la finalización simultánea de la entrada de datos y la salida.

Diferentes dispositivos SPI tienen diferentes implementaciones, principalmente en términos de cuándo cambia los datos y se recopilan, con diferentes definiciones para la recolección en el borde ascendente o el borde de la señal del reloj. Para detalles específicos, Consulte la documentación de los dispositivos relevantes.

I2do

Solo se requieren dos líneas de autobús una línea de datos en serie SDA y una línea de reloj en serie SCL.

Cada dispositivo conectado al bus se puede abordar con una dirección única y una simple relación de esclavo maestro establecido por software. El anfitrión puede actuar como un transmisor o receptor maestro.

Es un verdadero autobús de múltiples maestros; Si dos o más maestros inician simultáneamente la transferencia de datos, La detección de conflictos y el arbitraje evitan la corrupción de datos.

Las tasas de transferencia de datos bidireccionales en serie de 8 bits pueden alcanzar hasta 100 kbit/s en modo estándar, 400kbit/s en modo rápido, y 3.4mbit/s en modo de alta velocidad.

Filtros en chip elimina fallas de la línea de datos del bus para garantizar la integridad de los datos.

El número de IC conectados al mismo bus está limitado solo por la capacidad máxima del bus de 400pf.

UART

El autobús UART es un puerto serie asincrónico, Por lo tanto, su estructura es generalmente mucho más compleja que los dos puertos seriales sincrónicos anteriores. Por lo general, consiste en un generador de tasa de baudios (que genera una tasa de baudios igual a 16 veces la velocidad de transmisión en baudio), Un receptor UART, y un transmisor UART, con dos cables en hardware, uno para enviar y otro para recibir.

UART se usa comúnmente para controlar chips de computadora para dispositivos serie. Un punto a tener en cuenta es que proporciona una interfaz de equipo terminal de datos RS-232C, Permitir que las computadoras se comuniquen con módems u otros dispositivos serie utilizando la interfaz RS-232C.

UART representa el receptor/transmisor asíncrono universal (puerto de comunicación en serie asincrónica). Incluye estándares y especificaciones para interfaces como RS232, Rs499, Rs423, Rs422, y rs485, hacer de UART un término general para puertos de comunicación en serie asíncrono. RS232, Rs499, Rs423, Rs422, y RS485 son estándares y especificaciones de interfaz para varios puertos de comunicación en serie asíncrono, Definición de características eléctricas, tasas de transmisión, Características de conexión, y propiedades mecánicas de las interfaces. Pertenecen a la capa física (la capa más baja) concepto en la red de comunicación y no están directamente relacionados con los protocolos de comunicación. Los protocolos de comunicación pertenecen a la capa de enlace de datos (la siguiente capa superior) concepto en la red de comunicación. El puerto COM es una abreviatura del puerto de comunicación en serie asíncrono en una PC (ordenador personal). Debido a razones históricas, La interfaz externa de PC de IBM se configuró como RS232, convertirse en el estándar de facto en la industria de las PC. De este modo, Los puertos COM en las PC modernas son todos RS232. Si hay múltiples puertos de comunicación en serie asíncrono disponibles, se llaman COM1, Com2, etc..

Está claro que tanto SPI como UART pueden lograr una comunicación dúplex completa, Pero I2C no puede.

Usart universal receptor asincrónico universal y transmisor. (La diferencia de UART es evidente.)

Uart universal receptor asíncrono y transmisor;

Usart universal receptor asincrónico universal y transmisor. Generalmente, en microcontroladores, Las interfaces llamadas UART se usan solo para la comunicación en serie asincrónica, Mientras que los llamados USART se pueden usar para la comunicación en serie síncrona y asíncrona.

USB

USB significa Bus Universal Serial Bus, un estándar de bus externo para conectarse y comunicarse entre una computadora y dispositivos externos, Aplicado en el dominio de PC. USB admite las funciones plug-and-play y de intercambio en caliente. USB fue propuesto por una coalición que incluye Intel, Compraq, IBM, y Microsoft al final de 1994.

USB

USB

Las características eléctricas y las características de transmisión de USB incluyen transceptores USB de alta velocidad como Philips’ 82C251, TI’s SN65/75LBC031, CF150 de Bosch, C250, y el UC5350 de Intersil; Los transceptores USB de baja velocidad incluyen Philips 82C252, TJA1053, Siemens TLE 6252G; Los transceptores USB de un solo cable incluyen Philips AU5790, Infineon tle 6255, Delphi DK166153.

PODER

Cuando el autobús está inactivo, cualquier nodo puede iniciar la transmisión de datos. Si dos o más nodos comienzan a la transmisión simultáneamente, El arbitraje de bit por bit basado en el identificador resuelve conflictos de acceso. Can es un bus de tipo transmisión donde todos los nodos reciben datos del bus, y un mecanismo de filtrado de hardware determina si el mensaje se proporciona al nodo.

Hay cuatro tipos de cuadros de datos de cuadros de mensajes, marco remoto, marco de error, y marco de sobrecarga.

Los controladores de lata básicos son rentables con buffers de mensajes limitados para enviar/recibir y recibir mecanismos de filtrado de mensajes de lata básicos. Los controladores de lata completos ofrecen un mayor costo y rendimiento con búferes capaces de manejar 8 o más mensajes para enviar y recibir. Los controladores estándar pueden manejar mensajes con identificadores de 11 bits, mientras que los controladores de lata extendidos manejan mensajes de identificación de 11 bits y 29 bits. Lata activado por el tiempo (Ttcan) cronograma de controladores Mensajes basados ​​en tiempo y eventos, Mejorar el rendimiento general y la previsibilidad del comportamiento de la red CAN.

Los bytes de datos se transmiten a partir del bit más significativo. Se puede transmitir un byte de datos de 8 bits en una sola operación de envío, con la velocidad máxima de la lata de bus es 1 mbps.

La mayoría de los microcontroladores pueden requerir un transceptor externo para conectarse al bus físico. El mercado ofrece transceptores de alta velocidad como Philips’ 82C251, TI’s SN65/75LBC031, CF150 de Bosch, C250, y el UC5350 de Intersil; y transceptores de baja velocidad como Philips 82C252, TJA1053, y Siemens tle 6252g.

Elegir el autobús en serie

Microcontroladores (µC) están en el centro de los productos electrónicos avanzados de hoy en día, Requerir comunicación con uno o más dispositivos periféricos. Tradicionalmente, Los periféricos de µC se conectaron a través de datos y buses de direcciones mapeados de memoria. Este tipo de interfaz requiere un número mínimo de pines (excluyendo poder y tierra) 8 (datos) + 1 (R // w) + 1 (/CS) + n líneas de dirección [n = log2(Registro interno o recuento de bytes de memoria)]. Por ejemplo, Comunicarse con un periférico de 16 bytes requiere 8 + 1 + 1 + 4 = 14 patas. Esta interfaz ofrece acceso rápido, pero aumenta el tamaño del paquete y el costo total debido a la mayor cantidad de pines. Para reducir los costos y los tamaños de embalaje, Las interfaces en serie son alternativas ideales.

Seleccionar un bus en serie no es fácil. Además de considerar las tasas de datos, orden de transmisión de bits de datos (el más significativo primero o el último), y voltaje, Los diseñadores deben considerar cómo seleccionar un periférico (a través de chip de hardware, seleccione entradas o protocolo de software), Cómo los periféricos se sincronizan con µC (Uso de una línea de reloj de hardware o información de reloj integrada en el flujo de datos), Si los datos se transmiten en una sola línea (cambiar entre “alto” y “bajo”) o en un par diferencial (Dos líneas que cambian en direcciones opuestas simultáneamente), y si las líneas de comunicación usan resistencia coincidente en ambos extremos (Por lo general, para la señalización diferencial), sin par, o emparejado en un extremo (Común para los autobuses de un solo extremo). Mesa 1 muestra diferencias entre varios sistemas de bus comunes en forma de matriz. Solo cuatro de los 16 Las posibles combinaciones son bien conocidas.

Además de estas características, Las aplicaciones específicas pueden tener requisitos adicionales, como métodos de fuente de alimentación,, aislamiento, supresión de ruido, ΜC máximo (anfitrión) a periférico (esclavo) distancia de transmisión, y métodos de conexión de cable (tipo de autobús, tipo estrella, Protección de polaridad inversa, etc.). Aplicaciones como la automatización de edificios, controles industriales, lectura del medidor, etc., han establecido estándares para tales requisitos.

I²c/smbus vs. 1-Bus de alambre

Si la aplicación puede proporcionar una línea de reloj, La selección de bus puede extenderse a dispositivos I²C/SMBUS. Según la especificación SMBUS, Se puede ver como un derivado de la especificación de bus I²C de 100kbps con características de tiempo de espera adicionales. En los casos en que un nodo pierde sincronización con el maestro de bus, La función de tiempo de espera previene el bloqueo del bus, mientras que el sistema I²C requiere un reinicio de encendido para recuperarse de tales condiciones de falla. El sistema de 1 cable restablece/detecta la presencia durante la fase de inicialización de la interfaz de comunicación.

Además de la línea del reloj, I²C/SMBUS proporciona un bit de reconocimiento para cada byte transmitido en el bus, reduciendo las tasas de datos efectivas por 12%. El proceso de comunicación comienza con una condición de inicio seguida de la dirección del dispositivo de esclavos y un bit de dirección de datos (leer/escribir), Terminando con una condición de parada. Para el sistema de 1 cable, Los requisitos de la capa de red deben cumplirse primero (es decir., Seleccionar un dispositivo específico a través de comandos de ROM de búsqueda o transmisión), Luego, envía códigos de comando relacionados con dispositivos específicos que afectan la dirección de la transmisión de datos (leer/escribir).

Un problema notable con los sistemas originales de bus I²C y SMBUS es su espacio limitado de direcciones de 7 bits. con más de 127 Diferentes tipos de dispositivos disponibles, Es imposible inferir la funcionalidad del dispositivo solo desde la dirección de esclavo. Además, Muchos dispositivos I²C permiten a los usuarios establecer arbitrariamente uno o más bits de dirección para adjuntar múltiples dispositivos idénticos en el bus, Reducir aún más el espacio de direcciones disponible. La resolución de conflictos de abordar implica segmentar el sistema de bus en varios segmentos que se pueden activar bajo el control de software en un momento dado.. Esto requiere hardware adicional y complica el firmware de la aplicación. Los sistemas I²C carecen de capacidades de descubrimiento o enumeración de nodos de red, Haciendo difícil administrar redes con recuentos de nodos que cambian dinámicamente. Este problema se aborda mediante el protocolo de resolución de dirección en la versión de especificación SMBUS 2.013, Aunque los dispositivos SMBus compatibles son raros.

Interfaz SPI y microondas

SPI y microondas (un subconjunto de SPI) requiere una línea de selección de chip adicional para cada dispositivo esclavo. Debido a la señal de selección de chips, El protocolo SPI solo define comandos de lectura/escritura para direcciones de memoria y registros de estado sin proporcionar funcionalidad de reconocimiento. Típicamente, Los dispositivos SPI usan pines separados para la entrada y salida de datos. Dado que la salida de datos es Tri-State, excepto durante las operaciones de lectura., Los dos pines de datos se pueden conectar para formar una sola línea de datos bidireccional. Los buses SPI se eligen cuando otros sistemas de bus no proporcionan las funcionalidades necesarias o cuando se necesitan tasas de transferencia de datos más altas, apoyando hasta 2Mbps o tasas más altas. Sin embargo, Generar señales CS para abordar dispositivos específicos es una desventaja de SPI y microondas. Como i²c, No admiten el descubrimiento de nodos. El host no puede inferir la funcionalidad del dispositivo de las direcciones de esclavos lógicos, dificultando la gestión de las redes con nodos que cambian dinámicamente.

RS-485, LVDS, PODER, USB 2.0, y firewire

Estos estándares ilustran las características de transmisión diferencial. Los más rápidos entre estos sistemas de autobuses son Firewire y USB 2.0, que usan conexiones eléctricas punto a punto. Con nodos avanzados o centros, Pueden formar autobuses virtuales con topologías de árboles, Enviar paquetes de datos desde la fuente al punto final (USB) o igual a igual (Firewire), con tasas de datos de explosión de hasta 480 Mbps (USB 2.0) o 1600Mbps (Firewire). Paquetes de datos de tamaño limitado y recibe/búfer/búfer/revender mecanismos de comunicación aumentan el tiempo de transmisión, reduciendo así el rendimiento de datos efectivo. La topología y el protocolo de USB permiten 126 nodos, mientras que Firewire apoya hasta 63 Nodos con una distancia máxima de nodo a nodo de 4.5 m usando cables pasivos. Diseñado para periféricos de PC, multimedia, controles industriales, y aplicaciones de aviación (solo firewire), Los dispositivos USB y Firewire admiten encapotamiento caliente. Esta característica permite cambios dinámicos en los recuentos de nodos de red.

LVDS, RS-485, y puede implementar topologías de bus que conectan múltiples hosts. Señalización diferencial de bajo voltaje (LVDS) ofrece la mayor velocidad entre estos estándares, capaz de operar a 100 Mbps en distancias de hasta 10 m. La velocidad de datos y el rendimiento reales dependen del tamaño de la red. El estándar eléctrico LVDS está diseñado para aplicaciones de placa posterior y admite el complemento en caliente, pero no incluye ningún protocolo.

RS-485 también define solo los parámetros eléctricos, Especificar la capacidad de carga y las cargas máximas por línea de bus (32), no en términos de nodos. La carga de un nodo eléctrico puede ser menor que 1. Las tasas de datos típicas pueden alcanzar hasta 35 Mbps en distancias de 12 m, y 100kbps en distancias de 1200m, suficiente para la adquisición de datos y las aplicaciones de control. Los protocolos de dispositivos RS-485 a menudo se basan en protocolos diseñados originalmente para RS-232.

Serie RS

Serie RS

En contraste, la red de área del controlador (PODER) Define un protocolo de comunicación para el control distribuido en tiempo real con muy alta seguridad, Dirigido específicamente a aplicaciones automotrices e industriales de automatización. Las velocidades de datos varían desde 1 Mbps en distancias de hasta 40 m a 50 kbps en distancias de hasta 1000 m. El método de direccionamiento se basa en mensajes, y el protocolo en sí no limita el número de nodos. ¿Pueden los nodos admitir el encapotamiento caliente?, Permitir cambios dinámicos en los recuentos de nodos de red.

Conclusión

En simple, Sistemas de bus de bajo costo en comparación con los buses LIN y SensorPath, 1-Los sistemas de cables ofrecen la más amplia gama de funciones y controladores de red para dispositivos de esclavos. I²C y SMBUS requieren líneas de datos y tierra, además de líneas de reloj y fuentes de alimentación VCC, pero ofrecen muchas funcionalidades del dispositivo. SPI y los microondas requieren líneas adicionales de selección de chips, pero proporcionan velocidades de datos más altas. Además de apoyar la fuente de alimentación parásita y el descubrimiento de nodo de red, La interfaz de 1 cable y el protocolo admiten la colgadilla, Por lo general, solo se encuentra en sistemas de alta velocidad utilizando señalización diferencial y SMBUS 2.0 productos compatibles. ibutton® Los productos se usan ampliamente como dispositivos de 1 alambre que se pueden complacer; La colgación caliente es su modo de funcionamiento normal. Estos dispositivos han demostrado ser altamente efectivos en aplicaciones como los números de identificación global, Identificación y certificación de placa de circuito/componentes, detección de temperatura, y dispositivos de actuación. Otra aplicación exitosa de la tecnología de 1 alambre incluye mecanismos seguros de almacenamiento y respuesta de desafío para lograr la autenticación de bajo costo y la protección del código de software..

Anterior:

Próximo:

Deja una respuesta

Dejar un mensaje