微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 51单片机控制交通灯的课程设计

51单片机控制交通灯的课程设计

时间:11-23 来源:互联网 点击:
51单片机控制交通灯的课设
程序如下:
ORG 00H
;************************************************************
;灯操作及数码管显示
;************************************************************
START:MOV DPTR,#TAB
MOV SCON,#00H
MOV P1,#6CH
MOV R0,#11
D1: DEC R0;自定义为10S
CJNE R0,#3,LP0
LCALL DBDB
MOV P1,#6CH
LCALL DISP1
D11:DEC R0
CJNE R0,#0,LP00
MOV P1,#6CH
LCALL DBDB
LCALL DISP
MOV P1,#0AAH
MOV R0,#04
D2: DEC R0
CJNE R0,#0,LP1
LCALL DBDB
LCALL DISP
MOV P1,#0C6H
MOV R0,#16 ; 自定义为15S
D3: DEC R0
CJNE R0,#3,LP2
LCALL DBDB
MOV P1,#0C6H
LCALL DISP1
D33:DEC R0
CJNE R0,#0,LP22
MOV P1,#0C6H
LCALL DBDB
LCALL DISP
MOV P1,#0AAH
MOV R0,#04
D4: DEC R0
CJNE R0,#0,LP3
LCALL DBDB
LCALL DISP
MOV P1,#6CH
MOV R0,#11
LJMP D1
LP0:LCALL DBDB
LCALL DISP
LJMP D1
LP00: LCALL DBDB
MOV P1,#6CH
LCALL DISP1
LJMP D11
LP1:LCALL DBDB
LCALL DISP
LJMP D2
LP2:LCALL DBDB
LCALL DISP
LJMP D3
LP22: LCALL DBDB
MOV P1,#0C6H
LCALL DISP1
LJMP D33
LP3:LCALL DBDB
LCALL DISP
LCALL D4
;************************************************************
;除10运算
;************************************************************
DBDB: MOV A,R0
MOV B,#10
div AB
MOV R1,A
MOV R2,B
RET
;************************************************************
;显示子程序
;************************************************************
DISP: MOV A,R2
MOVC A,@A+DPTR
MOV SBUF,A
JNB TI,$
CLR TI
MOV A,R1
MOVC A,@A+DPTR
MOV SBUF,A
JNB TI,$
CLR TI
LCALL DELAY
RET
DISP1: MOV A,R2
MOVC A,@A+DPTR
MOV SBUF,A
JNB TI,$
CLR TI
MOV A,R1
MOVC A,@A+DPTR
MOV SBUF,A
JNB TI,$
CLR TI
LCALL DELAY1
MOV P1,#0FFH
MOV A,#10
MOVC A,@A+DPTR
MOV SBUF,A
JNB TI,$
CLR TI
MOV SBUF,A
JNB TI,$
CLR TI
LCALL DELAY2
RET
;************************************************************
;延时子程序
;************************************************************
DELAY:MOV R3,#09H
K1: MOV R4,#100
K2: MOV R5,#250
K3: DJNZ R5,K3
DJNZ R4,K2
DJNZ R3,K1
RET
DELAY1:MOV R3,#09H
SS1: MOV R4,#80
SS2: MOV R5,#250
SS3: DJNZ R5,SS3
DJNZ R4,SS2
DJNZ R3,SS1
RET
DELAY2:MOV R3,#09H
AA1: MOV R4,#30
AA2: MOV R5,#250
AA3: DJNZ R5,AA3
DJNZ R4,AA2
DJNZ R3,AA1
RET
TAB:DB 3FH,06H,5BH
DB 4FH,66H
DB 6DH,7DH,07H
DB 7FH,6FH,00H

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top