交通灯汇编代码.docx

上传人:牧羊曲112 文档编号:3241459 上传时间:2023-03-12 格式:DOCX 页数:3 大小:37.03KB
返回 下载 相关 举报
交通灯汇编代码.docx_第1页
第1页 / 共3页
交通灯汇编代码.docx_第2页
第2页 / 共3页
交通灯汇编代码.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《交通灯汇编代码.docx》由会员分享,可在线阅读,更多相关《交通灯汇编代码.docx(3页珍藏版)》请在三一办公上搜索。

1、交通灯汇编代码;=交通灯控制器 = JS EQU 30H ;东西路口计时寄存器 DXR BIT P1.1 ;东西路口红灯 DXY BIT P1.4 ;东西路口黄灯 DXG BIT P1.7 ;东西路口绿灯 NBR BIT P3.1 ;南北路口红灯 NBY BIT P3.4 ;南北路口黄灯 NBG BIT P3.7 ;南北路口绿灯 ORG 0000H LJMP START ORG 0100H START: MOV TMOD,#01H ;置T0为工作方式1 MOV TH0,#3CH ;置T0定时初值50ms MOV TL0,#0B0H CLR TF0 SETB TR0 ;启动T0 ;*东西绿灯,南

2、北红灯* LOOP: MOV R2,#20 ;置1s计数初值,50ms*20=1s MOV R3,#10 ;灯亮10s MOV JS,#13 ;东西路口计时显示初值13s LCALL DISPLAY SETB DXR ;东西红灯灭-用于循环(WAIT4)后 SETB NBY ;南北黄灯灭-用于循环(WAIT4)后 CLR DXG ;东西路口绿灯亮 CLR NBR ;南北路口红灯亮 WAIT1: JNB TF0,WAIT1 ;查询50ms到否 / CLR TF0 MOV TH0,#3CH ;恢复T0定时初值50ms MOV TL0,#0B0H DJNZ R2,WAIT1 ;1s MOV R2,#

3、20 ;置50ms计数初值 DEC JS ;东西路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT1 ;状态1维持20s ;*东西黄灯(闪),南北红灯(闪)* MOV R2,#5 ;置50ms计数初值 5*4=20 MOV R3,#3 ;灯闪3s MOV R4,#4 ;闪一次200ms LCALL DISPLAY SETB DXG ;东西绿灯灭 CLR DXY ;东西路口黄灯闪 WAIT2: JNB TF0,WAIT2 ;查询50ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值50ms MOV TL0,#0B0H DJNZ R4,WAIT2 ;200

4、ms CPL DXY ;东西黄灯反相 CPL NBR ;南北红灯反相 MOV R4,#4 ;闪烁间隔200ms DJNZ R2,WAIT2 ;1s 标志 MOV R2,#5 ;置50ms计数初值 DEC JS ;东西路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT2 ;状态2维持3s ;*东西红灯,南北绿灯* MOV R2,#20 ;置50ms计数初值 MOV R3,#15 ;灯亮15s MOV JS,#18 ;东西路口计时显示初值18s LCALL DISPLAY SETB DXY ;东西黄灯灭 SETB NBR ;南北红灯灭 WAIT3: CLR DXR ;东西红灯

5、亮 CLR NBG ;南北绿灯亮 JNB TF0,WAIT3 ;查询50ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值100ms MOV TL0,#0B0H DJNZ R2,WAIT3 ;1s标记 MOV R2,#20 ;置50ms计数初值 DEC JS ;东西路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT3 ;状态4维持20s ;*东西红灯(闪),南北黄灯(闪)* MOV R2,#5 ;置50ms计数初值 MOV R3,#3 ;总共闪3s MOV R4,#4 ;灯闪一次20ms ; LCALL DISPLAY SETB NBG ;南北绿灯灭

6、CLR NBY ;南北黄灯亮 CLR DXR ;东西红灯亮 WAIT4: JNB TF0,WAIT4 ;查询50ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值50ms MOV TL0,#0B0H DJNZ R4,WAIT4 ;200ms CPL NBY ;反相,南北黄灯闪 CPL DXR ;反相,东西红灯闪 MOV R4,#4 ;闪烁200ms DJNZ R2,WAIT4 ;1s MOV R2,#5 ;置50ms计数初值 DEC JS ;东西路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT4 ;状态5维持3s LJMP LOOP ;进入下一次循环 ;*数码显示* DISPLAY: MOV A,JS MOV B,#10 DIV AB MOV DPTR,#TAB MOVC A,A+DPTR MOV P0,A MOV A,B MOVC A,A+DPTR MOV P2,A RET TAB: DB 3FH,06H,5BH,4FH,66H DB 6DH,7DH,07H,7FH,6FH END ;显示高位 ;显示低位 ;0,1,2,3,4 ;5, 6,7,8,9

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号