Microprocessors and Interfacing

8085 Pin Diagram; Control and Status Signals; Interrupts in 8085

C-CAT

8085 Pin Diagram

The 8085 is a 40-pin IC operating on +5 V at 3 MHz. Pins are grouped into six functional categories:

8.1 Pin Groups

GroupPinsFunction
Address busA8–A15, AD0–AD7 (multiplexed)16-bit address
Data busAD0–AD7 (shared with address low)8-bit data
Control & statusALE, RD', WR', IO/M', S1, S0Bus control
Power & clockVCC (+5V), VSS (GND), X1, X2, CLK OUTPower and crystal oscillator
Externally initiatedTRAP, RST 7.5, RST 6.5, RST 5.5, INTR, INTA', RESET IN, RESET OUT, READY, HOLD, HLDAInterrupts, reset, DMA, wait
Serial I/OSID, SODSerial input/output data

8.2 Multiplexed Address/Data Lines (AD0–AD7)

During T1 of a machine cycle, AD0–AD7 carry the lower 8 address bits. ALE goes HIGH → external latch (e.g., 74LS373) captures the address. When ALE goes LOW, the same pins carry data. This multiplexing saves pins — without it, a separate 8-bit data bus plus 16-bit address would need more pins.

8.3 Clock Pins

  • X1, X2: Crystal connections (typically 6 MHz crystal; internally divided by 2 → 3 MHz operating frequency)
  • CLK OUT: Clock output for peripheral synchronization

Control and Status Signals

9.1 RD' (Read)

  • Active LOW
  • Indicates CPU wants to read from memory or I/O
  • Data must be valid on the bus when RD' is asserted

9.2 WR' (Write)

  • Active LOW
  • Indicates CPU will write data to memory or I/O
  • Data is placed on bus by CPU during WR'

9.3 ALE (Address Latch Enable)

  • Positive pulse at start of each machine cycle
  • ALE = 1 (HIGH): Address is present on AD0–AD7 — latch it
  • ALE = 0 (LOW): Data phase — AD0–AD7 carry data

9.4 IO/M' (Input-Output / Memory)

  • IO/M' = 1 (HIGH): Current operation is I/O
  • IO/M' = 0 (LOW): Current operation is Memory
  • Combined with RD'/WR' to fully decode bus cycle type

9.5 S0 and S1 (Status)

  • Identify the type of machine cycle in progress
  • Used with IO/M' by external decoding logic to generate chip selects

Interrupts in 8085

An interrupt is a signal from an external device (or software instruction) that temporarily suspends the current program, saves return address on stack and branches to an Interrupt Service Routine (ISR).

10.1 Five Hardware Interrupts

InterruptTypeMaskable?Vector addressPriority
TRAPHardwareNon-maskable0024HHighest (1)
RST 7.5HardwareMaskable003CH2
RST 6.5HardwareMaskable0034H3
RST 5.5HardwareMaskable002CH4
INTRHardwareMaskableSupplied externallyLowest (5)

10.2 Vector vs Non-Vector Interrupts

TypeAddress known?Examples
VectoredYes — fixed ISR addressTRAP, RST 7.5, RST 6.5, RST 5.5
Non-vectoredNo — device sends address during INTA cycleINTR

10.3 Eight Software Interrupts (RST 0 – RST 7)

Software interrupts are invoked by RST n instructions (one-byte opcodes):

InstructionVector addressHex offset
RST 00000H0 × 8
RST 10008H1 × 8
RST 20010H2 × 8
RST 30018H3 × 8
RST 40020H4 × 8
RST 50028H5 × 8
RST 60030H6 × 8
RST 70038H7 × 8

Pattern: Vector address = n × 8 (in hex: n × 08H)

10.4 Interrupt Processing Steps

  1. Current PC is pushed onto the stack
  2. PC is loaded with vector address

ISR executes at that address 4. RET (or RTI equivalent) pops return address and resumes main program

10.5 Interrupt Control Instructions

InstructionFunction
EI (Enable Interrupts)Sets interrupt enable flip-flop; allows maskable interrupts
DI (Disable Interrupts)Resets interrupt enable; blocks maskable interrupts
RIM (Read Interrupt Mask)Reads interrupt mask status and serial input (SID)
SIM (Set Interrupt Mask)Masks/unmasks RST 7.5/6.5/5.5; controls SOD serial output

10.6 TRAP — Special Properties

  • Non-maskable — cannot be disabled by DI
  • Edge and level triggered
  • Highest priority — used for catastrophic events (power failure backup, critical fault)
  • Jumps to 0024H

Continue learning

Related notes

Put this topic into timed practice

Open mock tests when you want full-exam pacing, or keep drilling in practice mode.