hardware//I/O//serial bus//UART
A UART (universal asynchronous receiver-transmitter) is the circuit that sends bytes one bit at a time over one wire in each direction with no shared clock, and it is the point-to-point serial port that connects a processor to a GNSS receiver, a telemetry radio, a debugging console or another board. Both ends agree beforehand on a rate (115 200 bit/s is the old default, a few Mbit/s are common today), and each byte travels framed: a start bit, eight data bits, an optional parity bit and a stop bit. The receiver resynchronizes on every start bit, so the two clocks only need to agree within a few percent over one frame.
A UART (universal asynchronous receiver-transmitter) is the circuit that sends bytes one bit at a time over one wire in each direction with no shared clock, and it is the point-to-point serial port that connects a processor to a GNSS receiver, a telemetry radio, a debugging console or another board. Both ends agree beforehand on a rate (115 200 bit/s is the old default, a few Mbit/s are common today), and each byte travels framed: a start bit, eight data bits, an optional parity bit and a stop bit. The receiver resynchronizes on every start bit, so the two clocks only need to agree within a few percent over one frame.
The framing has a cost a serial bus budget must count: ten bits on the wire for every eight of data, so 115 200 bit/s carries about 11.5 kB/s. A GNSS receiver sending a few hundred bytes of position, velocity and status ten times a second fits easily; a camera stream does not.
It is point to point: two devices, crossed wires (one's transmit to the other's receive) and a common ground. A UART says nothing about voltage levels or distance. The same logic drives logic levels on a board, RS-232 to a laptop, or the differential pair of RS-485 to reach hundreds of metres with several devices on one line.
Nothing in the link checks the message. Parity catches a single flipped bit at best, so the protocols on top (NMEA sentences from a GPS, MAVLink from an autopilot) add their own checksums and sequence numbers, and a receive buffer that overflows leaves only a silent gap.
Bytes arrive when the sender has finished computing them. The moment they come in says little about the moment the quantity was measured, which is why the timing of a UART device is usually carried separately (time synchronization).