O UART (Universal Asynchronous Receiver/Transmitter) é o circuito de hardware dedicado — seja um CI discreto (ex.: 16550, 16C550, SC16IS7xx) ou um bloco IP dentro de um microcontrolador/SoC — que implementa o protocolo serial assíncrono (bit de start, 5–9 bits de dados, paridade, bits de stop) e gerencia a sinalização elétrica (RS-232, RS-485, TTL, LVTTL).
| Offset (DLAB=0) | Registrador | Função |
|---|---|---|
| 0x00 | RBR / THR | Buffer de Recepção / Holding de Transmissão |
| 0x01 | IER | Habilitação de Interrupção (RX, TX, Status Linha, Status Modem) |
| 0x02 | IIR / FCR | ID de Interrupção (Leitura) / Controle FIFO (Escrita) |
| 0x03 | LCR | Controle de Linha (Comprimento Palavra, Stop Bits, Paridade, DLAB, Break) |
| 0x04 | MCR | Controle de Modem (DTR, RTS, OUT1, OUT2, Loop) |
| 0x05 | LSR | Status Linha (DR, OE, PE, FE, BI, THRE, TEMT, FIFOERR) |
| 0x06 | MSR | Status Modem (DCD, RI, DSR, CTS, bits Delta) |
| 0x07 | SCR | Scratchpad |
| 0x00/0x01 (DLAB=1) | DLL / DLM | Divisor Latch Low/High (Taxa Baud) |
Conclusão: O UART é o cavalo de batalha do silício; a porta serial é a abstração do SO. Sem UART = sem comunicações seriais (exceto bit-banging GPIO).
Tecnologia Eletrônica © [www.351231.com]