Side-by-side comparison
| Parameter | 8251 USART | 8255 PPI |
|---|---|---|
| Full name | Universal Synchronous Asynchronous Receiver Transmitter | Programmable Peripheral Interface |
| Interface type | Serial — one bit at a time on TxD/RxD lines | Parallel — 8-bit data on Port A, B, C simultaneously |
| Number of I/O ports | Single serial channel (TxD, RxD, control lines) | Three 8-bit ports: Port A, Port B, Port C (24 bits total) |
| Operating modes | Synchronous (internal/external sync), Asynchronous (×1, ×16, ×64 baud rate factor) | Mode 0 (simple I/O), Mode 1 (strobed), Mode 2 (bidirectional), BSR mode |
| Control word | Two-step: Mode instruction word then Command instruction word | Single control word written to control register (A7=1 for mode, A7=0 for BSR) |
| Pin count | 28 pins | 40 pins |
| Chip select / address | One CS line; C/D pin selects control or data register | One CS line; A1, A0 select Port A, B, C, or Control register |
| Baud rate generation | External clock (TxC, RxC) or internal timer; supports 110 to 19200 baud with 8253 | Not applicable — parallel, clocked by system bus |
| Handshake signals | DTR, DSR, RTS, CTS for RS-232 modem control | STB, IBF, ACK, OBF for Mode 1 and Mode 2 handshaking |
| Typical application with 8085 | Serial terminal, RS-232 PC link, modem interface | Keyboard scanning, LED display, relay control, ADC 0809 interface |
Key differences
The 8251 is a serial device: data moves one bit at a time on TxD and RxD, and you must initialise it in two steps — first write the mode word (sets baud rate factor, character length, parity, stop bits), then write the command word (enables Tx/Rx). The 8255 is parallel: all 24 I/O bits are available simultaneously. Port C in Mode 1 is split — upper nibble controls Port A handshake, lower nibble controls Port B. A critical difference: 8251 needs an external baud-rate clock from an 8253 timer IC; 8255 uses the system bus clock directly. In BSR mode, the 8255 can set or reset individual bits of Port C without affecting others.
When to use 8251 USART
Use the 8251 when your 8085 system needs serial communication — for example, connecting to an RS-232 terminal or transmitting sensor data to a PC at 9600 baud using the 8253 as a baud-rate generator.
When to use 8255 PPI
Use the 8255 when your 8085 system needs parallel I/O — for example, reading an 8-bit DIP switch on Port A in Mode 0 input, while driving a 7-segment display on Port B in Mode 0 output.
Recommendation
For microprocessor exam questions, choose 8255 for any parallel I/O interfacing problem and 8251 for any serial/RS-232 problem. Most university practicals use the 8255 — make sure you can write the control word for Mode 0 all-output (0x80) and Mode 1 Port A input with handshake.
Exam tip: Examiners ask you to write the control word for a specific 8255 port configuration — remember the format: D7=1, D6D5 set Mode for Group A, D4=Port A direction, D3=Port C upper, D2D1 set Mode for Group B, D1=Port B direction, D0=Port C lower.
Interview tip: Interviewers at embedded and VLSI companies ask you to explain the two-step initialisation of the 8251 — state that the first write is the mode word and the second is the command word, and that the IC determines which is which by the order of writes after reset.