Skip to main content

Short note: Programmable Peripheral Interface

Short answer

The Intel 8255A PPI provides 24 programmable I/O lines (Ports A, B, C) with modes 0 (simple I/O), 1 (strobed handshake), 2 (bidirectional on Port A), and BSR mode. It connects peripherals like keyboards and displays to the microprocessor via a control word.

Write a short note on Programmable Peripheral Interface (PPI).

The Programmable Peripheral Interface (PPI), Intel 8255A, is a general-purpose parallel I/O device used to connect the microprocessor with peripherals such as keyboards, displays, switches and LEDs. It is programmable: its function is selected by writing a control word.

Features

  • 24 I/O lines in three 8-bit ports: Port A, Port B, Port C (Port C can be split into upper PC7–PC4 and lower PC3–PC0).
  • Two groups: Group A (Port A + PC upper) and Group B (Port B + PC lower).
  • TTL compatible, single +5 V supply, 40-pin DIP.
 D0-D7 <-> [Data bus buffer] <-> Group A <-> PA0-PA7
 RD,WR  -> [Read/Write       ]            <-> PC4-PC7
 A0,A1  -> [control logic    ]  Group B <-> PC0-PC3
 CS,RESET                                <-> PB0-PB7

Port selection (CS = 0): A1A0 = 00 Port A, 01 Port B, 10 Port C, 11 control register.

Operating modes

  • Mode 0: simple I/O, no handshaking.
  • Mode 1: strobed I/O with handshake signals (Port C lines) and interrupts.
  • Mode 2: bidirectional bus on Port A with handshaking.
  • BSR mode: individual bits of Port C can be set or reset.

Control word (I/O mode): D7 = 1; D6D5 group A mode; D4 Port A (1 = input); D3 PC upper (1 = input); D2 group B mode; D1 Port B (1 = input); D0 PC lower (1 = input). Example: 90H = Port A input, Port B output, Port C output, mode 0.

Applications: interfacing keyboards, 7-segment displays, ADC/DAC, printers and stepper motors.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Microprocessor chapter 4 questions →