Universal Asynchronous Receiver-Transmitter (UART) is one of the most common hardware communication protocols used in embedded systems. However, "Baud Rate" (bits per second) is not the same as your actual data throughput (bytes per second) because of protocol overhead.
Understanding the UART Frame
Because UART is asynchronous (no shared clock line), data is sent in packets or "frames". A standard UART frame consists of:
- 1 Start Bit: Pulls the line low to signal the receiver.
- 5 to 9 Data Bits: The actual payload (usually 8 bits / 1 Byte).
- 0 or 1 Parity Bit: Optional bit used for basic error checking.
- 1 to 2 Stop Bits: Pulls the line high to signal the end of the frame.
$$Throughput = \frac{Baud Rate}{Start + Data + Parity + Stop} \text{ (Bytes/sec)}$$
Use the calculator below to configure your UART parameters. It will automatically generate the frame structure, calculate the exact duration of each transmission, and show you your true data efficiency.
``