Can we use 8255A (programmable peripheral interface) as a 24 bit input or 24 bit output? we know there are 3 ports PORT A,B and C each of 8 bits. How they can be used as 24 bits I/O ports?
Asked
Active
Viewed 483 times
0
-
3Have you tried reading the data sheet? – WhatRoughBeast May 03 '16 at 16:26
-
8255 of the 8085 family circa 1980 or earlier. Is it really worth a question? – StainlessSteelRat May 03 '16 at 16:54
-
@StainlessSteelRat We seem to get 8085 questions from time to time (if you search for 8085, you will get around 100 results). Seems somewhere there are EE course(s) (such as [this one](http://electronics.stackexchange.com/questions/219048/building-an-intel-8085-trainer) that haven't upgraded their material and/or lab equipment for 30 years. – tcrosley May 03 '16 at 17:04
-
My comment was with respect to 24 bits. For me, it is not a logical question. It is not reasonable to expect a device with 40 pins to have 24 bit ports. – StainlessSteelRat May 03 '16 at 17:14
1 Answers
1
You cannot address all 24 bits at the same time (e.g. a 24-bit data bus). Only one of the eight-bit three ports (A, B, C) an be addressed at a time. This is done using address bits A0 and A1. The data bus of the 8255 is only 8-bits wide (D0 through D7).
A1 A0
-----
0 0 Port A
0 1 Port B
1 0 Port C
1 1 control register
The control register determines whether the bits in the various register are used as input or output or handshaking.

tcrosley
- 47,708
- 5
- 97
- 161
-
if the source sends 32 bits data at a time, is there any way to receive it by slicing into 8 bits into the ports? @tcrosley – user6149854 May 03 '16 at 16:58
-
That would take some external circuitry, with some sort of two-bit counter to sequence the A0-A1 leads. – tcrosley May 03 '16 at 17:02
-
-
1@user6149854 Is this for homework? In any case, we are not a circuit design service (that's something I do for a living). It doesn't make any sense to build something like this, since the first step would be to latch all 24 data bits into a set of 24 latches so they could be read out 8 bits at a time -- which in that case the 8255 would be completely redundant. – tcrosley May 03 '16 at 17:14