标题:
51单片机汇编语言完成的交通灯设计
[打印本页]
作者:
qingcaodeali
时间:
2018-6-17 17:44
标题:
51单片机汇编语言完成的交通灯设计
汇编语言完成的51单片机交通灯控制
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
QQ图片20180617174359.jpg
(453.48 KB, 下载次数: 26)
下载附件
2018-6-17 17:44 上传
单片机源程序如下:
#include <REGX51.H>
SECOND1 EQU 30H
SECOND2 EQU 31H
DBUF EQU 40H
TEMP EQU 44H
LED_G1 BIT P2.1
LED_Y1 BIT P2.2
LED_R1 BIT P2.3
LED_G2 BIT P2.4
LED_Y2 BIT P2.5
LED_R2 BIT P2.6
ORG 0000H
LJMP START
ORG 0100H
START:
MOV TMOD,#01H
MOV TH0,#3CH
MOV TL0,#0B0H
CLR TF0
SETB TR0
CLR A
MOV P2,A
LOOP:
MOV R2,#20
MOV R3,#20
MOV SECOND1,#25
MOV SECOND2,#25
LCALL DISPLAY
LCALL STATE1
WAIT1:
JNB TF0,WAIT1
CLR TF0
MOV TH0,#3CH
MOV TL0,#0B0H
DJNZ R2,WAIT1
MOV R2,#20
DEC SECOND1
DEC SECOND2
LCALL DISPLAY
DJNZ R3,WAIT1
MOV R2,#5
MOV R3,#3
MOV R4,#4
MOV SECOND1,#5
MOV SECOND2,#5
LCALL DISPLAY
WAIT2:
LCALL STATE2
JNB TF0,WAIT2
CLR TF0
MOV TH0,#3CH
MOV TL0,#0B0H
DJNZ R4,WAIT2
CPL LED_G1
MOV R4,#4
DJNZ R2,WAIT2
MOV R2,#5
DEC SECOND1
DEC SECOND2
LCALL DISPLAY
DJNZ R3,WAIT2
MOV R2,#20
MOV R3,#2
MOV SECOND1,#2
MOV SECOND2,#2
LCALL DISPLAY
WAIT3:
LCALL STATE3
JNB TF0,WAIT3
CLR TF0
MOV TH0,#3CH
MOV TL0,#0B0H
DJNZ R2,WAIT3
MOV R2,#20
DEC SECOND1
DEC SECOND2
LCALL DISPLAY
DJNZ R3,WAIT3
MOV R2,#20
MOV R3,#20
MOV SECOND1,#25
MOV SECOND2,#25
LCALL DISPLAY
WAIT4:
LCALL STATE4
JNB TF0,WAIT4
CLR TF0
MOV TH0,#3CH
MOV TL0,#0B0H
DJNZ R2,WAIT4
MOV R2,#20
DEC SECOND1
DEC SECOND2
LCALL DISPLAY
DJNZ R3,WAIT4
MOV R2,#5
MOV R4,#4
MOV R3,#3
MOV SECOND1,#5
MOV SECOND2,#5
LCALL DISPLAY
WAIT5:
LCALL STATE5
JNB TF0 ,WAIT5
CLR TF0
MOV TH0,#3CH
MOV TL0,#0B0H
DJNZ R4,WAIT5
CPL LED_G2
MOV R4,#4
DJNZ R2,WAIT5
MOV R2,#5
DEC SECOND1
DEC SECOND2
LCALL DISPLAY
DJNZ R3,WAIT5
MOV R2,#20
MOV R3,#2
MOV SECOND1,#2
MOV SECOND2,#2
LCALL DISPLAY
WAIT6:
LCALL STATE6
JNB TF0,WAIT6
CLR TF0
MOV TH0,#3CH
MOV TL0,#0B0H
DJNZ R2,WAIT6
MOV R2,#20
DEC SECOND1
DEC SECOND2
LCALL DISPLAY
DJNZ R3,WAIT6
LJMP LOOP
STATE1:
SETB LED_G1
CLR LED_Y1
CLR LED_R1
CLR LED_G2
CLR LED_Y2
SETB LED_R2
RET
STATE2:
CLR LED_Y1
CLR LED_R1
CLR LED_G2
CLR LED_Y2
SETB LED_R2
RET
STATE3:
CLR LED_G1
SETB LED_Y1
CLR LED_R1
CLR LED_G2
CLR LED_Y2
SETB LED_R2
RET
STATE4:
CLR LED_G1
CLR LED_Y1
SETB LED_R1
SETB LED_G2
CLR LED_Y2
CLR LED_R2
RET
STATE5:
CLR LED_G1
CLR LED_Y1
SETB LED_R1
CLR LED_Y2
CLR LED_R2
RET
STATE6:
CLR LED_G1
CLR LED_Y1
SETB LED_R1
CLR LED_G2
CLR LED_R2
SETB LED_Y2
RET
DISPLAY:
MOV A,SECOND1
MOV B,#10
DIV AB
MOV DBUF+3,A
MOV A,B
MOV DBUF+2,A
MOV A,SECOND2
MOV B,#10
DIV AB
MOV DBUF+1,A
MOV A,B
MOV DBUF,A
MOV R0,#DBUF
MOV R1,#TEMP
MOV R7,#4
DP10:
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
交通灯.rar
(173.86 KB, 下载次数: 47)
2018-6-17 17:40 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
zhuhuashi
时间:
2020-5-5 12:13
能发一下硬件软件设计吗
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1