Saltar al contenido

¿Diferencia entre UART y RS-232?

Puede que se de el caso de que encuentres algún fallo con tu código o proyecto, recuerda probar siempre en un ambiente de testing antes añadir el código al proyecto final.

Solución:

No, UART y RS-232 no son lo mismo.

UART es responsable de enviar y recibir una secuencia de bits. A la salida de un UART, estos bits suelen estar representados por voltajes de nivel lógico. Estos bits pueden convertirse en RS-232, RS-422, RS-485 o quizás en alguna especificación propietaria.

RS-232 especifica los niveles de voltaje. Tenga en cuenta que algunos de estos niveles de voltaje son negativos y también pueden alcanzar ±15V. Una mayor oscilación de voltaje hace que el RS-232 sea más resistente a las interferencias (aunque solo hasta cierto punto).

Un microcontrolador UART no puede generar tales niveles de voltaje por sí mismo. Esto se hace con la ayuda de un componente adicional: el controlador de línea RS-232. Un ejemplo clásico de un controlador de línea RS-232 es MAX232. Si revisa la hoja de datos, notará que este IC tiene una bomba de carga, que genera ±10V desde +5V.

ingrese la descripción de la imagen aquí


(fuente)

UART (o USART) – Receptor/transmisor asíncrono universal (sincrónico)

Esta es, esencialmente, una interfaz de comunicaciones en serie. La parte “universal” significa que se puede configurar para admitir muchos protocolos seriales específicos diferentes. El término es genérico y no representa un estándar específico. Como mínimo, significa que tiene un TX y un RX línea, que envía un flujo de datos en serie y recibe un flujo de datos en serie.

RS-232 – Un estándar que define las señales entre dos dispositivos, definiendo los nombres de las señales, su propósito, niveles de voltaje, conectores y pinouts.

Este es un estándar de interfaz específico que permite la interoperabilidad de los equipos. Si bien dos piezas de hardware pueden tener UART, no sabe si se conectarán sin daños o si se comunicarán correctamente a menos que sepa que tienen los mismos estándares de pinout y voltaje, o que incluyan un convertidor o un cable especialmente cableado específico para la interconexión de estos dos dispositivos específicos. Para evitar la necesidad de convertidores o cables especiales, los fabricantes pueden optar por seguir el estándar RS-232. Entonces, sabe que un cable estándar RS-232 conectará los dos.

Sin embargo, ni el UART ni el estándar RS-232 definen lo que se envía en el TX y RX líneas. Generalmente, cuando las personas usan RS-232, usan una codificación NRZ simple de 8 bits con un bit de inicio y un bit de parada. La mayoría de los equipos que se fabrican en la actualidad utilizan esta codificación, pero no es obligatorio hacerlo. Puede encontrar equipos más antiguos que incluyen bits de paridad o usan 7 o 9 bits. El UART se puede configurar para admitir estos diversos protocolos en su TX y RX líneas.

Los UART no suelen interactuar directamente con RS-232. Deberá convertir la salida del UART al estándar de +/-12 V que requiere RS-232. Una interfaz RS-232 completa generalmente involucrará tanto un UART como un convertidor de nivel RS-232. Además, el estándar RS-232 incluye la definición de varios otros pines de señalización además de TX y RX, que es posible que deba usar según el equipo al que necesite conectarse. Estos también deberán ser convertidos a nivel, y su UART puede o no admitir estas señales. Si no es así, tendrá que controlarlos directamente con su software/firmware.

Entonces, si bien un UART puede ayudarlo a implementar una interfaz RS-232, no es una interfaz RS-232 en sí misma.

El UART funciona para convertir datos paralelos de líneas de bus de PC a datos en serie para la transmisión a través de controladores de línea a dispositivos RS-232, RS-422 y RS-485. El pin de reloj del chip UART es alimentado por una fuente de reloj programable. La velocidad del reloj está determinada por la configuración de velocidad en baudios que utilizará el dispositivo. La velocidad del reloj es 16 X la tasa de baudios. Colocar una sonda de osciloscopio en el pin de reloj de un chip UART y determinar la frecuencia, luego dividirla por 16 es una forma de determinar una tasa de baudios desconocida.

Reseñas y calificaciones del post

Tienes la opción de confirmar nuestra investigación escribiendo un comentario y puntuándolo te damos las gracias.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *