Skip to content
Related Articles
Open in App
Not now

Related Articles

Microprocessor | 8255 (programmable peripheral interface)

Improve Article
Save Article
  • Difficulty Level : Easy
  • Last Updated : 29 Jun, 2021
Improve Article
Save Article

8255 is a popularly used parallel, programmable input-output device. It can be used to transfer data under various condition from simple input-output to interrupt input-output. This is economical, functional, flexible but is a little complex and general purpose i/o device that can be used with almost any microprocessor. 

8255 pin diagram – 
It has 24 pins that can be grouped in two 8-bit parallel ports: A and B called Port A(PA) and Port B(PB) with the remaining eight known as Port C(PC). Port C can be further divided into groups of 4-bits ports named Cupper(Cu) and Clower(Cl). There are 40 pins and operates in +5 regulated power supply. 


Modes of 8255 – It works in two modes: 

  1. Bit set reset (BSR) mode
  2. Input/output (I/O) mode

To know in which mode the interface is working we need to know the value of Control word. Control word is a part of control register in 8255 which specify an I/O function for each port. This is format of control word 8255. 


If the most significant bit of control word or D7 is 1 then 8255 works in I/O mode else, if it’s value is 0 it works in BSR mode. 

  1. BSR Mode – When MSB of the control register is zero(0), 8255 works in Bit Set-Reset this only PC bit are used for set and reset. 
  2. I/O Mode – When MSB of the control register is one(1), 8255 works in Input-Output is further divided into three categories. 
  3. Mode 0 – In this mode all three ports (PA, PB, PC) can work as simple input function or output function also in this mode there is no interrupt handling capabilities. 
  4. Mode 1 – In this either port A or port B can work and port C bits are used as Handshake signal before actual data transmission plus it has interrupt handling capabilities. 
  5. Mode 2 – In this only port A works and port B can work either in Mode 0 or Mode 1 and the 6 bits of port C are used as Handshake signal plus it also has to interrupt handling capability. 

To communicate with peripherals through 8255 three steps are necessary: 

  1. Determine the addresses of Port A, B, C and Control register according to Chip Select Logic and the Address lines A0 and A1.
  2. Write a control word in control register.
  3. Write I/O instructions to communicate with peripherals through port A, B, C.

The common applications of 8255 are: 

  • Traffic light control
  • Generating square wave
  • Interfacing with DC motors and stepper motors


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!