8255 programmable peripheral interface-microprocessor, Assembly Language

8255 Programmable Peripheral Interface

Intel's 8255 A programmable peripheral interface provides a nice instance of a parallel  interface. As shown the interface have a control register and 3 separately addressable ports, denoted from A, B, and C. Whether or not an 8255A is being accessed is determined by the signal on the CS pin and the direction of the access is according to the WR and RD signals. Which of the 4 registers is being addressed is determined by the signals applied to the pins A0 and A1. So, the lowest port address assigned to an 8255 A might be divisible by 4. A review of the 8255 A's addressing is:

A1        A0        RD       WR      CS        Transfer Description

0          0          0          1          0          Port A to data bus

0          1          0          1          0          Port B to data bus

1          0          0          1          0          Port C to data bus

0          0          1          0          0          Data bus to port A

0          1          1          0          0          Data bus to port B

1          0          1          0          0          Data bus to port C

1          1          1          0          0          Data bus to control register if D7= 1; if D7=0 input from the data bus is treated as a Set/Reset instruction

x          x          x          x          1          D7-D0 go to high-impedance state

1          1          0          1          0          Illegal combination

x          x          1          1          0          D7-D0 go to high-impedance state

Where 0 is low and 1 is high

Because the bits in port C are sometimes utilized as control bits, the 8255 A is designed so that they may be output to separately by using a Reset/set instruction. When the 8255 A receives a byte that is directed to its control register, it checked data bit 7.If this bit is one, the data are transferred to the control register, but if it is zero, the data retreated as a Reset/set instruction and is utilized to clear or set the port C it denoted by the instruction. Bits 3-1 gives the bit number of the bit to be changed and bit 0 denote whether it is to be cleared or set. The remaining bits are not useful.

535_8255.jpg

The bits in the 3 ports are attached to pins that can be linked to the I/O device. These bits are divided into groups A & B, with group A consisting of the bits in port A and the 4 MSBs of port C and group b consisting of port B and the 4 LSBs of port C. the use of each of the 2 groups is controlled by the mode connected with it. Group A is connected with 1 of 3 modes, mode zero, mode one, and mode two, and group B with 1 of 2 modes, mode 0 and mode 1.

 

Posted Date: 10/10/2012 6:51:27 AM | Location : United States







Related Discussions:- 8255 programmable peripheral interface-microprocessor, Assignment Help, Ask Question on 8255 programmable peripheral interface-microprocessor, Get Answer, Expert's Help, 8255 programmable peripheral interface-microprocessor Discussions

Write discussion on 8255 programmable peripheral interface-microprocessor
Your posts are moderated
Related Questions
ORG : Origin:- The ORG directive directs the assembler to begin the memory allotment for the specific segment, code or block from the declared  address in the ORG  statement. W

Trying to convert small programs from C to 8086 assembly language using emu 8086 emulator. I converted to low level C, but struggling with converting to the Assembly language.

String Manipulation Instruction A series of words or data bytes are available in memory at consecutive locations, to be mention to individually or collectively, are known as by

Develop an assembly language program for the system and simulate it using MPLAB. From this produce a demo program (in Assembly language) that will run on the MatrixMultimedia Devel

this is my first project i dont know where to start

Open notepad and enter the code for a program that calculates the following arithmetic expression: x = a + b + c - d - e + f The operands a, b, c, d, e, f, and x should be declared

This is a short program to practice assembly language loops and if/else statements. You will use various jump commands and the cmp instruction. The program will generate a random

EVOLUTION OF MICROPROCESSOR : The digital circuits and systems may be broken into two part: 1) Sequential Circuit and 2) Combinational Circuits     Norm

SHORT  : The  SHORT operator denoted to the assembler that only one byte is needed to code the displacement for a jump (for example displacement is within -128 to +127 bytes fr

What is the hex for + and - under with a sum involved