Home » Embedded Systems

The I/O Mode of 8255 PPI (Programmable peripheral interface)

In this article, we are going to study the working of 8255 PPI in the Input-Output mode (I/O mode). We will first learn how the pins of the 8255 IC are set or reset while it is in the I/O mode and what functionalities can be performed by it in this mode and what are the further categories of it?
Submitted by Monika Sharma, on August 22, 2019

The Most Significant Bit (MSB) of the Control word decides the mode in which the 8255 IC will be. For the IC to be in the Input-Output mode, the MSB must be set, i.e. it must be 1. There are further 3 modes which fall under the I/O mode category. They are:

i) Mode 0: Simple Input- Output Mode or IO without Handshake

No port, in this case, performs the handshaking function and all the ports, i.e. port A, port B and port C act as an Input-Output port for transferring the data. This mode is capable of handling the interrupts.

ii) Mode 1: I/O with Handshake or Strobed I/O

In this mode, the port A and port C act as the Input-Output ports but the port C is used for handshaking. Hence, the data in this mode can flow only through port A and port B. This mode is also capable of handling the interrupts. In this mode, both the sender and the receiver gets the time to time acknowledgment of data being received on the other end through the handshaking process.

iii) Mode 2: Bidirectional I/O

In this mode, the data transfer is bidirectional but only for port A. Simultaneously, the port B can either be in mode 1 or mode 0 and the port C performs its function of handshaking.

In this mode, the port A and the Port C- upper together form the Group A, and the Port B and Port C- Lower together are treated as Group B. Now, it is important to know that what the control word's value is when our IC works in the IO mode.

The following diagram illustrates the control word layout for the BSR mode,

The I/O Mode | 8255 PPI

Fig. Control Word Layout for 8255 PPI in the I/O mode








Comments and Discussions

Ad: Are you a blogger? Join our Blogging forum.
Learn PCB Designing: PCB DESIGNING TUTORIAL




Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates


© https://www.includehelp.com some rights reserved.