Embedded Systems & Firmware

A small baud-rate mismatch between UART transmitter and receiver can garble characters. Why is the tolerance limited to roughly a few percent?

  1. AThe receiver aligns on the start bit and then samples each bit's center with its own clock, so the error accumulates over a character and fails once it exceeds half a bit by the last bit
  2. BA baud-rate mismatch lowers the transmitter's voltage
  3. CUARTs correct mismatches automatically, so there is effectively no limit
Show answer and explanation

Answer: A. The receiver aligns on the start bit and then samples each bit's center with its own clock, so the error accumulates over a character and fails once it exceeds half a bit by the last bit

The receiver aligns its timing at the start of the start bit and then counts at its own baud rate, sampling each bit at its center. A speed mismatch makes the sampling error accumulate bit by bit, and if it exceeds half a bit by the stop bit about 10 bits later, the receiver reads the wrong bit. So the combined error of both sides must stay within a few percent, which requires care with less accurate internal oscillators.

  • A. Correct. More than half a bit of drift over about 10 bits causes errors.
  • B. Voltage is unrelated.
  • C. An ordinary UART does not correct drift within a character.
Practice this topic Back to topic

More Embedded Systems & Firmware questions

  1. What is a characteristic of SPI communication?
  2. Which set of four signals is generally used by SPI?
  3. When an SPI part is connected but correct data cannot be read, which setting is most worth checking?
  4. What is a characteristic of I2C communication?
  5. In I2C, how does the receiver of a data byte acknowledge it?