Existing Project:
1. Traffic Light Control System using MicroController ( Intel 8051 )
Code:
SECCOUNT EQU R4
LED1 EQU P2
LED2 EQU P0
SPORT EQU P3
RD1 EQU P2.2
RD2 EQU P2.5
RD3 EQU P0.7
RD4 EQU P0.4
G1 EQU P2.0
G2 EQU P2.3
G3 EQU P2.6
G4 EQU P0.6
Y1 EQU P2.1
Y2 EQU P2.4
Y3 EQU P2.7
Y4 EQU P0.5
ORG 00H
MOV DPTR,#SEGMENT
ACALL TURNREDLEDS
START: ACALL PATH1GO
ACALL PATH2GO
ACALL PATH3GO
ACALL PATH4GO
JMP START
TURNREDLEDS: MOV LED1,#0FFH
MOV LED2,#0FFH
CLR RD1
CLR RD2
CLR RD3
CLR RD4
RET
PATH1GO: ACALL DELAY
CLR G1
SETB RD1
SETB Y1
ACALL DELAY9S
SETB G1
SETB RD1
CLR Y1
ACALL DELAY4S
SETB G1
CLR RD1
SETB Y1
RET
PATH2GO: ACALL DELAY
CLR G2
SETB RD2
SETB Y2
ACALL DELAY9S
SETB G2
SETB RD2
CLR Y2
ACALL DELAY4S
SETB G2
CLR RD2
SETB Y2
RET
PATH3GO: ACALL DELAY
CLR G3
SETB RD3
SETB Y3
ACALL DELAY9S
SETB G3
SETB RD3
CLR Y3
ACALL DELAY4S
SETB G3
CLR RD3
SETB Y3
RET
PATH4GO: ACALL DELAY
CLR G4
SETB RD4
SETB Y4
ACALL DELAY9S
SETB G4
SETB RD4
CLR Y4
ACALL DELAY4S
SETB G4
CLR RD4
SETB Y4
RET
DELAY: MOV R5, #9
SDELAY: MOV R6, #250
DL2: MOV R7, #200
DL3: DJNZ R7, DL3
DJNZ R6, DL2
DJNZ R5, SDELAY
MOV R5, #01H
RET
DELAY4S: MOV SECCOUNT,#4
L1: ACALL DSEGMENT
ACALL DELAY
DJNZ SECCOUNT,L1
RET
DELAY9S: MOV SECCOUNT,#9
L2: ACALL DSEGMENT
ACALL DELAY
DJNZ SECCOUNT,L2
RET
DSEGMENT: MOV A,SECCOUNT
MOVC A,@A+DPTR
MOV SPORT,A
CLR A
RET
SEGMENT: DB 00110000B
DB 11110101B
DB 10010010B
DB 11010000B
DB 01010101B
DB 01011000B
DB 00011000B
DB 11110001B
DB 00010000B
DB 01010000B
END
No comments:
Post a Comment