Calculadora de Velocidad de Baudios UART
Calcula el divisor de baudios, velocidad real y error de baudios para interfaces UART/USART.
Fórmula
Referencia: STM32 Reference Manual RM0008 §27.3.4; ST AN2908
Cómo Funciona
Esta calculadora determina los valores de los divisores de velocidad en baudios UART y los errores de temporización para una comunicación en serie confiable. Los ingenieros de sistemas integrados, los desarrolladores de IoT y los diseñadores de hardware la utilizan para configurar las UART de los microcontroladores dentro de la tolerancia de reloj del 2 al 3% requerida por la mayoría de los receptores. Según el estándar UART (derivado del RS-232/EIA-232), cada marco contiene un bit de inicio, de 5 a 9 bits de datos, una paridad opcional y de 1 a 2 bits de parada. Una MCU de 16 MHz dirigida a 115200 baudios produce un error del 0,16% con BRR=8 (sobremuestreo 16x), mientras que una MCU de 9600 baudios produce un error del 0,08% con BRR=104. Los estudios muestran que los errores de velocidad en baudios superiores al 3,5% provocan errores de encuadre en bytes en 1 de cada 10 fotogramas. Las velocidades estándar (9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600 baudios) se definen para minimizar los errores de redondeo de los divisores en las frecuencias cristalinas comunes (8, 12, 16 y 20 MHz). El período de bits a 115200 baudios es de 8,68 microsegundos, lo que requiere una precisión de temporización de hasta 300 nanosegundos por bit para una recepción fiable de fotogramas de 10 bits.
Ejemplo Resuelto
El diseño de una ECU automotriz requiere una comunicación UART a 115200 baudios utilizando un reloj de sistema de 20 MHz con un sobremuestreo de 16x. Siguiendo la fórmula del divisor de las implementaciones estándar de UART: BRR = f_clk/ (16 x baudios) = 20 000 000/ (16 x 115200) = 10,85. Si se redondea a BRR=11, se obtiene un baudio real = 20.000.000/ (16 x 11) = 113636 baudios. Error = |115200 - 113636|/115200 x 100 = 1,36%, lo que corresponde al máximo del 2% especificado en la mayoría de las hojas de datos de los receptores UART. Estructura del marco: 1 inicio + 8 datos + 1 parada = 10 bits en total, lo que produce un rendimiento de 11.364 bytes/segundo. A modo de comparación, con un sobremuestreo de 8 veces (BRR=22) se obtienen 113636 baudios con un error idéntico del 1,36%, pero con una inmunidad al ruido reducida.
Consejos Prácticos
- ✓Según la nota de aplicación AN4908 de ST Microelectronics, utilice BRR fraccional cuando esté disponible para lograr un error de < 0,5% a cualquier velocidad de baudios estándar
- ✓Para una lógica de 3,3 V sobre cables de más de 2 metros, limite la velocidad en baudios a 115200 para mantener un margen de ruido de 400 mV según las especificaciones RS-232
- ✓Verifique la temporización con un osciloscopio: mida 10 bits consecutivos y confirme la duración total dentro del 2% de lo esperado (86,8 us a 115200 baudios)
Errores Comunes
- ✗Uso de un cristal con una tolerancia de >50 ppm, lo que añade un error del 0,005% a 25 °C, pero puede superar el 2% de error combinado a temperaturas extremas (de -40 °C a +85 °C)
- ✗Seleccionar velocidades en baudios no estándar, como 100 000 baudios, lo que produce un error del 4,17% en los sistemas de 16 MHz frente al 0,16% de los 115200 baudios
- ✗Ignorar que los generadores de velocidad fraccionaria en baudios (disponibles en STM32, LPC, etc.) reducen el error del 1,36% a menos del 0,1% a 115200 baudios
Preguntas Frecuentes
Shop Components
As an Amazon Associate we earn from qualifying purchases.
Calculadoras relacionadas
Comms
Pull-up I2C
Calcula el valor óptimo de resistencias pull-up para buses I2C según velocidad y capacitancia.
General
Constante de Tiempo RC
Calcula la constante de tiempo tau, frecuencia de corte y respuesta temporal de circuitos RC.
Comms
Jitter Reloj
Calcula el presupuesto de temporización del árbol de reloj para diseños de FPGA y SoC.
Comms
Temporización SPI
Calcula parámetros de temporización del bus SPI: frecuencia de reloj, modos CPOL/CPHA y tiempos de setup.