交通灯汇编程序(带流程图及分析)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验要求:
以74LS273或pl 口作为输出口,控制4个双色LED 灯(可发红,绿,黄光)模拟 交通灯管理。按照交通灯的显示规律,相对的两个分别显示红、绿、黄。当外部 中断到来时,四个LED 全部显示红色,维持1秒钟后恢复中断前的状态。
本实验是交通灯是控制实验,所以要先理解实际交通灯的变化规律•假设一个 十字路口为东西南北走向.初始状态0为东西红灯,南北红灯.然后转状态1南北绿 灯通车,东西红灯•过一段时间转状态,南北绿灯闪几次转两黄灯,延时几秒,东西仍 然红灯,再转状态3,东西绿灯通车,南北红灯.过一段时间转状态4.东西绿灯山几次 转黄灯,延时几秒,南北仍然红灯,,最后循环至状态1。
在前面内容的基础上增加允许急救车先通过的要求.有急救车到达时,两项交 通信号为全红,以便让急救车通过.假定急救车通过路口时间为 10秒,急救车通过 后,交通恢复中断前状态.被实验已按键为终端申请,表示有急救车通过.
实验原理:
可以通过对P1 口赋值实现状态的改变,并采用延时使状态的时间达到要求, 闪烁通过多次赋值并调用短延时实现, 初始状态的全红也采用此方法,特殊情况 考虑用外部中断实现。
实验硬件图:
交通灯
r-
LK A
i-
Uh
” I
in
£
f r
1
KfAU
trAti'l 阳AM
PojuHn
呻诃閒 K>EU'i^U
F2.QXi
TH I4 r22iA.1Q
ALE
FA pi n Fi-di'mt] n.7wi
PU Pl.liTO
IM 3 P14 的4
Fl.4 舅l 由H
t H r FS HZ 岬 PI.7
•p
*
—11
a ,
MT
丁
3fl A
35
131
忖
33 17
K
____ 3;
■/■I
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP WINT
ORG 0030H MAIN:
SETB EX0
SETB IT0
SETB EA
MOV P1,#0FH
LCALL LOOP LOOP:MOV P1,#96H
LCALL DELAY
MOV P1,#06H
LCALL DELAY
MOV P1,#69H
LCALL DELAY
MOV P1,#09H
LCALL DELAY
SJMP LOOP DELAY:MOV R2,#100 LOP1:MOV R3,#100 LOP0:MOV R4,#100
DJNZ R4,$
DJNZ R3,LOP0
DJNZ R2,LOP1
RET
WINT:MOV P1,#0FH
LCALL DELAY
RETI
END