单片机 课程设计 交通灯
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机原理及系统课程设计
专业:自动化
班级:动092
姓名:
学号:
指导教师:
兰州交通大学自动化与电气工程学院
2012 年 7月 1日
目录
1.引言 (2)
2.设计方案及原理 (2)
2.1设计方案 (2)
2.2设计原理 (2)
3.硬件设计 (3)
3.1硬件连接图 (3)
4.软件设计 (3)
4.1信号灯控制码表 (3)
4.2设计流程图 (4)
5.总结 (4)
6.参考文献 (5)
7.附录 (5)
1.引言
交通是城市经济活动的命脉,对城市经济发展、人民生活水平的提高起着十
分重要的作用。城市交通问题是困扰城市发展、制约城市经济建设的重要因素。城市道路增长的有限与车辆增加的无限这一对矛盾是导致城市交通拥挤的根本原因。城市街道网络上的交通容量的不断增加,表明车辆对道路容量的要求仍然很高,短期内还不可能改变。自从开始使用计算机控制系统后,不管在控制硬件里取得什么样的实际进展,交通控制领域的控制逻辑方面始终没能取得重大突破。
随着科技的飞速发展,单片机的应用不断深入,往往作为控制的核心部件。同时,单片机作为自动化专业的基础学科,仅仅有软件的知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。交通灯的出现,使交通得以有效管制,对于疏导交通有着重要的作用。本系统采用80C51为中心器件来设计交通灯控制器,系统适用性强、操作简单。
2.设计方案及原理
2.1设计方案
用80C51单片机控制一个交通信号灯系统。设A(南北)车道与B(东西)车道交叉组成十字路口,通过三色LED的亮灭来控制各车道的通行。A、B两车道轮流放行。A车道放行25s(绿灯亮),警告5s(黄灯闪烁);此时B车道为禁止(红灯亮)。30s后A、B的状态进行对换,按这种方式往复进行。
2.2设计原理
通过对单片机定时器的控制,使交通灯按给定的时序工作。本设计是以模拟的方式进行说明,所谓模拟就是以红、黄、绿三支共四组发光二级管表示模拟灯。假定以P1口接12支发光二级管(即交通信号灯)。所以口线输出高电平则“信号灯”亮,口线输出地低电平则“信号灯”熄。按照要求搭建硬件仿真连接图(图1),为了实现控制要求P1口共输出四种控制码(表1)。
3.硬件设计
3.1硬件连接图
图1仿真硬件连接图4.软件设计
4.1信号灯控制码表
4.2设计流程图
图2 设计流程图
5.总结
课程设计的目的是为了让我们对平时所学的理论知识与实际操作相结合,学会用知识解决实际问题。在编写软件过程中,使我更加熟练掌握汇编语言指令的使用方法,掌握了keil软件的使用。在软件调试的过程中,使我又一次复习了keil 和proteus联合使用的方法。在编程的过程中,经常会出现错误提示。但是,通过
一遍遍的编译调试,错误逐渐的减少,直到错误消失。在做proteus仿真时,由于我的粗心从而导致线路运行不正常,经过仔细的排查才使得仿真得以正常运行。
通过这次课程设计,我基本掌握了用单片机控制交通灯的基本方法,增强了我寻找问题,解决问题的能力。培养了我的实际思维,此次课程设计的成功不仅帮助我更好地掌握书本知识,尤其重要的是增强了我的自信,培养了我独立思考的能力。但是,在我此次设计中也存在着许多不足:我仅仅可以实现基本的红绿灯的控制,而没有倒计时数字牌、人行道的控制灯、左右转弯等等。在今后的学习中我要努力完善这些存在的问题。
6.参考文献
[1] 李华.王思明.张金敏.单片机原理及应用.兰州:兰州大学出版社,2001
7.附录
程序代码
ORG 0000H
START:AJMP MAIN
ORG 0100H
MAIN: MOV P1,#0CH ;A线绿灯亮B线红灯亮
MOV R7,#19H ;循环25次
MAIN1:LCALL DELAY ;调用1S的延时子程序
DJNZ R7,MAIN1
MOV P1,#0AH ;A线黄灯闪烁B线红灯亮
LCALL FBA ;调用5S,1HZ的子程序
MOV P1,#21H ;B线绿灯亮A线红灯亮
MOV R7,#19H ;循环25次
MAIN2:LCALL DELAY ;调用1S的延时子程序
DJNZ R7,MAIN2 ;循环25次
MOV P1,#11H ;B线黄灯闪烁A线红灯亮
LCALL FBB ;调用5S,1HZ的子程
LJMP START ;实现循环
********************************************************************* A路黄灯的5S时间频率1HZ子程序
FBA: MOV TMOD,#10H
MOV TH1,#03CH
MOV TL1,#0B0H
MOV IE,#00H
MOV R1,#05H
MOV R0,#0AH
SETB TR1
LOOP2:JBC TF1,LOOP3
JMP LOOP2
LOOP3:MOV TH1,#03CH
MOV TL1,#0B0H
DJNZ R1,LOOP2
CPL P1.1
MOV R1,#05H
DJNZ R0,LOOP2
RET
********************************************************************* B路黄灯的5S时间频率1HZ子程序
FBB: MOV TMOD,#10H
MOV TH1,#03CH
MOV TL1,#0B0H
MOV IE,#00H
MOV R1,#05H
MOV R0,#0AH
SETB TR1
LOOP4:JBC TF1,LOOP5
JMP LOOP4
LOOP5:MOV TH1,#03CH
MOV TL1,#0B0H
DJNZ R1,LOOP4
CPL P1.4
MOV R1,#05H
DJNZ R0,LOOP4
RET
********************************************************************* 1秒的延时子程序
DELAY:MOV TMOD,#01H
MOV TH0,#03CH
MOV TL0,#0B0H
MOV IE,#00H
MOV R3,#0AH
SETB TR0
LOOP: JBC TF0,LOOP1
JMP LOOP
LOOP1:MOV TH0,#03CH
MOV TL0,#0B0H