p3 Ex01 Upd
p3 Ex01 Upd
p3 Ex01 Upd
Date of Experiment-01/08/2021
Date of submission-10/08/2021
Marks obtained-………………………………………….
Signature of Examiner-…………………………………..
TITLE-
OBJECT-
COMPLETED AT………………………………………..
1
PERIPHERAL INTERFACING
APPARATUS REQUIRED
8085 Microprocessor trainer kit.
Traffic light controller.
Power Supply.
Flat Ribbon Cable.
DESCRIPTION
Combination of Red, Amber and Green LEDs are provided to indicate Halt, Wait
and Go states for vehicles. Combination of Red and Green LEDs are provided for
pedestrian crossing. 36 LEDs are arranged in the form of an intersection. At the left corner
of each road, a group of 5 LEDs (Red, Amber and Green) are arranged in the form of a T-
section to control the traffic of that road. Each road is named as North N, South S, East E
and West W.
L1,L10, L19 and L28 (Red) are for stop signal for the vehicles on the road N,S,W and
E respectively.
L2,L11,L20 and L29 (Amber) indicate wait state for the vehicles on the road N,S,E and
W respectively.
L3,L4 and L5 (Green) are for left, straight and right turn for the vehicles on the road
S.
Similarly L12 - L13 - L14 , L23 - L22 - L21 and L32 - L31 - L30 simulates same function for the
roads E, N & W respectively. A total of 16 LEDs (2 Red & 2 Green at each road) are
provided for pedestrian crossing. L7 - L9, L16 - L18, L25 - L27 & L34 - L36 (Green) when on
allows pedestrians to cross and L6 - L8, L15 - L17, L24 - L26 & L33 - L35 (Red) when on alarms the
pedestrians to wait.
To minimize the hardware pedestrians indicator LEDs (both Green and Red) are
connected to some port lines (PC 4 to PC7 ) with Red inverted. Red LED’s L 10 and L28 are
connected to port lines PC2 to PC3 while L1 and L19 are connected to lines PC0 and PC1
after inversion. All other LEDs (Amber and Green) are connected to Port A and port B.
INSTALLATION PROCEDURE
SDA_85M to NIFC_11 interface connection details:
1.Connect p3 on 85M to the connector C1 on the interface using a 26 core FRC.
Care should be taken such that, pin1 of P3 on the kit coincides with pin1 of cable
[Observe the notch on the cable connector]
2.Power connection:
Connect +5v,GND to the interface. Color codes of power connection on the
interface
+5v - Orange, Blue, White
GND - Black.
3.Enter the Program.
4.Now execute the program,
Go <Starting address> <EXE>
The LEDs on the interface glow according to certain sequence.
2
ASSEMBLY LANGUAGE PROGRAM
ADDRES LABEL MNEMONICS OPCODE/OPERAND
S
C000 MVI A,80H 3E 80
C002 OUT CWR D3 DB
C004 REPEAT MVI E,03H 06 03
C006 LXI H,C100H 21 00 C1
C009 NEXTSTAT MOV A,M 7E
C00A OUT PORTA D3 D8
C00C INX H 23
C00D MOV A,M 7E
C00E OUT PORTB D3 D9
C010 INX H 23
C011 MOV A,M 7E
C012 OUT PORTC D3 DA
C014 CALL DELAY CD 1F C0
C017 INX H 23
C018 DCR E 05
C019 JNZ NEXTSTAT C2 09 C0
C01C JMP REPEAT C3 04 C0
PORT B
PORT C
PROGRAM TRACE
LABEL MNEMONICS DESCRIPTION
MVI A,80H Initializing the ports of the PPI 8255 as O/P ports by
writing the control word as 80H.
DATA D7 D6 D5 D4 D3 D2 D1 D0
BITS 1 0 0 0 0 0 0 0
COMMENT I/O Mode0 PortA PortC Mode0 PortB PortC
mode O/P Upper O/P Lower
O/P O/P
OUT CWR Control word specify the I/O function for each ports of
8255.
REPEAT MVI E,03H Initialize E register with number of sequence.
REGISTERS
A 80 XX F
B XX XX C
XX 03 D E
XX XX H L
MEMORY
C100 BF HL memory pointer
C101 BF
C102 AF
C103 EE
C104 EE
REGISTERS
A BF XX F
B XX XX C
XX 03 D E
H L
C1 00
REGISTERS
A BF XX F
B XX XX C
XX 03 D E
C1 01 H L
MEMORY
C100 BF
C101 BF HL memory pointer
C102 AF
C103 EE
C104 EE
MEMORY
C100 BF
C101 BF
C102 AF HL memory pointer
C103 EE
C104 EE
REGISTERS
A AF XX F
B XX XX C
XX 03 D E
C1 02 H L
LED L33 L34 L24 L25 L15 L16 L6 L7 L28 L10 L19 L1
no L35 L36 L26 L27 L17 L18 L8 L9
LED 1 0 1 0 1 0 1 0 0 0 1 1
glow
PORTC 1 0 1 0 1 1 1 1
bits
AFH
LED L33,L35 L25,L27 L15,L17 L7,L9Will GLOW
status GLOW GLOW GLOW GLOW not
glow
OUT PORTC L1 L19 => glow; since positive logic. Only when ‘1’ is
present in this place the LED will glow.
L10 L28 => does not glow; since negative logic. This will
not glow because only when ‘0’ is present in this, the
LED will glow. Here ‘11’ is present hence it will not
glow.
MEMORY
C100 BF
C101 BF
C102 AF
C103 EE HL memory pointer
C104 EE
When E=02
PORTS CONFIGURATION & DISPLAY.
PORTA bits 1 1 1 0 1 1 1 0
EEH
LED status Will not GLOW Will not GLOW
glow Since glow Since
Negative Negative
logic logic
LED glow 1 0 1 0 1 0 1 0 0 0 1 1
PORTC bits 1 1 1 1 1 1 0 0
ACH
LED status L33,L35 L24,L26 L15,L17 L6 L8 Will not glow
GLOW GLOW GLOW GLOW
WAITING SEQUENCE
Now the next sequence is being traced.
When E=01
PORTS CONFIGURATION & DISPLAY.
LED L33 L34 L24 L25 L15 L16 L6 L7 L28 L10 L19 L1
no L35 L36 L26 L27 L17 L18 L8 L9
LED glow 1 0 1 0 1 0 1 0 0 0 1 1
PORTC bits 50H 0 1 0 1 0 0 0 0
LED status L34,L36 L24,L26 L16,L18 L6 L8 GLOW Will
GLOW GLOW GLOW GLOW not
glow
Thus the LEDs glow, when E=00 the sequence is terminated and next cycle starts.
NS S N
DELAY SUBPROGRAM
DELAY LXI Initialize the memory pointer at C100H .i.e. loads the
D,3000H 16-bit data in the register pair designated.
REGISTERS
A XX XXF
B XX XXC
30 00 D E
XX XX H L
L1 DCR C
Move FFH immediately in to C register.
REGISTERS
A XX XXF
B XX FEC
30 00 D E
XX XX H L
REGISTERS
FF XX A F
XX XX B C
2F FF D E
XX XX H L
JNZ L2 Only when DE=0000,this loop will end.
RET Return to main program
EXECUTION
ADDRE DATA
SS
C100 BF H
C101 BF H
C102 AF H
C103 EE H
C104 EE H
C105 FC H
C106 FB H
C107 FB H
C108 50 H
VERIFICATION