Free online calculator
UART baud-rate error calculator
A UART divides the MCU clock by an integer: , where OSR is the oversampling factor chosen below. That rounding is the whole source of the error: under ~2% total is fine, past ~3.5% frames start corrupting — which is why 115200 from an 8 MHz part misbehaves.
The port then runs at , and the Error column is . The divisor is never taken below 1, so a clock too slow for the rate lands as a large negative error rather than a division by zero.
With the clock as read:
What you enter
- MCU clock (Hz)
- Oversampling




