- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
交通信号灯模拟控制器文档
昆明冶金高等专科学校教学教案
课题: 编程实例2
教学时数:2学时
教学目的:
1、通过交通灯控制的编程掌握单片机的编程方法
2、学习中断服务程序的编写方法。
重点、难点:
中断服务程序的编写。
主要教学内容(提纲):
一、课题内容
二、编程指导
三、参考程序
教学方法、手段:
课堂讲授,学生练习
课内外练习
将所编程序在实验仪验证.
课后小结
讲授要点
一、课题内容
编写一程序实现城市“十字”路口正常情况下以及特殊情况和紧急情况下交通信号灯的模拟控制。
1、在十字路口东西南北各设置红、黄、绿三种信号灯,如图1所示。正常情况下,东西、南北方向轮流放行。当东西方向(A线)放行、南北方向(B线)禁行时,东西方向(A线)绿灯亮25秒,然后黄灯亮5秒,南北方向(B线)红灯亮30秒;当南北方向(B线)放行、东西方向(A线)禁行时,南北方向(B线)绿灯亮25秒,然后黄灯亮5秒,东西方向(A线)红灯亮30秒。如此循环,实现交通灯定时控制。
2、有急救车优先通过功能。当有急救车到达时,路口的信号灯全部变红灯,以便急救车通过,急救车的通行时间为10秒,急救车过后,交通灯恢复先前状态。
3、交通灯在红、绿灯交替点亮中,用两个数码管显示点亮的灯还能持续的时间。
北
北
西
东
南
图1 交通灯布置示意图
二、编程指导
1、电路图
交通灯控制电路的核心元件采用单片机芯片AT89C51,其内部带有4KB的ROM,无须扩展存储器。
信号灯的控制由单片机的P1.0~P1.5控制,6只信号灯以共阴极方式连接,当P1口输出为高电平时,信号灯点亮,为实现上述控制要求,P1口共输出四种控制码,如表1所示。
表1:交通灯信号控制码
空
空
B道绿灯
B道黄灯
B道红灯
A道绿灯
A道黄灯
A道红灯
控制码
P1.7
P1.6
P1.5
P1.4
P1.3
P1.2
P1.1
P1.0
状态说明
0
0
0
0
1
1
0
0
0CH
A道放行、B道禁止
0
0
0
0
1
0
1
0
0AH
A道警告、B道禁止
0
0
1
0
0
0
0
1
21H
A道禁止、B道放行
0
0
0
1
0
0
0
1
11H
A道禁止、B道警告
2、控制程序
流程图
软件包括主程序、延时、显示子程序、中断服务程序,各程序流程图如图2所示。
图2 程序流程图
三、参考程序
主程序:
ORG 2000H
MAIN:
MOV DPTR,#7F00H
MOV A,#0BH
;PA、PC口均为输出
MOVX @DPTR,A
MAIN:
SETB EA
;开中断
SETB EX0
MOV 50H,#1FH
;设置时间显示初值
MOV P1,#0CH
;A道放行,B道禁行
MOV R7,#19H
;延时秒数
MAIN1:
LCALL DISP
;调1秒延时、及显示子程序
DJNZ R7,MAIN1
MOV P1,#0AH
;A道警告,B道禁行
MOV R7,#05H
;延时秒数
MAIN2:
LCALL DISP
DJNZ R7,MAIN2
MOV 50H,#1FH
;设置时间显示初值
MOV P1,#21H
;A道禁行,B道放行
MOV R7,#19H
;延时秒数
MAIN3:
LCALL DISP
DJNZ R7,MAIN3
MOV P1,#11H
;A道禁行,B道警告
MOV R7,#05H
;延时秒数
MAIN4:
LCALL DISP
DJNZ R7,MAIN4
AJMP MAIN
;循环
延时、显示子程序:
ORG 2000H
DISP:
MOV R6,#01H
;设置显示位寄存器初值(右边一位
MOV TMOD,#01H
;定时器T0设置为定时方式的模式1
MOV R5,#0AH
;定时器操作循环10次
DEL1:
MOV TH0,#3CH
;定时器100ms计数器的初始值
MOV TL0,#B0H
SETB TR0
;启动定时器
DEL2:
DEC 50H
;显示秒数减1
MOV A,50H
MOV B,#0AH
DIV B
;拆分秒数
ADD A,#2BH
MOVC A,@A+PC
;查表个位数的字形码
MOV R1,A
;个位数字形码送R1
MOV A,B
ADD A,#25H
MOVC A,@A+PC
;查表十位数的字形码
MOV R2,A
;十位数字形码送R2
MOV A,R6
;位控码
MOV DRTP,#7F03H
MOVX @DPTR,A
MOV A,R1
;送个位数显示
MOV DPTR,#7F01H
MOVX @
您可能关注的文档
最近下载
- 广东省百师联盟2025届高三一轮复习联考四历史试卷(含答案).pdf VIP
- 2025《神经病学》考试试题及参考答案.pdf
- 2024年托幼机构卫生保健人员考核测试卷(含答案).pdf
- 2024年职工职业技能大赛数控铣工赛项理论考试题库-下(多选、判断题汇总).docx
- MT 872-2000煤矿用带式输送机保护装置技术条件.pdf VIP
- GB/T 7025.1-2023 电梯主参数及轿厢、井道、机房的型式与尺寸 第1部分:Ⅰ、Ⅱ、Ⅲ、Ⅵ类电梯(2).pdf
- 小学语文部编版1-6年级古诗文129篇背诵过关表.docx
- 慢性萎缩性胃炎.ppt VIP
- 老年康复习题.pdf VIP
- 新改版教科版四年级下册科学活动手册答案.pdf
文档评论(0)