单片机系统设计十字路口红绿灯控制本科学位论文Word下载.docx
- 文档编号:21358120
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:13
- 大小:540.92KB
单片机系统设计十字路口红绿灯控制本科学位论文Word下载.docx
《单片机系统设计十字路口红绿灯控制本科学位论文Word下载.docx》由会员分享,可在线阅读,更多相关《单片机系统设计十字路口红绿灯控制本科学位论文Word下载.docx(13页珍藏版)》请在冰豆网上搜索。
目前,全国大中城市普遍存在着道路拥挤、车辆堵塞、交通秩序混乱的现象,交通事故频发,这给人民的生命财产安全带来了极大的损失。
如何解决城市交通问题已成为全社会关注的焦点和大众的迫切呼声。
为了确保十字路口的行人和车辆顺利、畅通地通过,往往采用电子控制的交通信号来进行指挥。
1.2本文设计任务
设计一个能够控制十二盏交通信号灯的模拟系统。
利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄火,并用LED灯显示倒计时间。
假设一个十字路口为东南西北走向。
初始状态0为东西南北都红灯亮。
然后转状态1南北绿灯通车,东西红灯亮。
过一段时间后,转状态2,南北绿灯灭,黄灯闪几下,东西还是红灯。
再转状态3,南北红灯亮,东西绿灯通车。
过一段时间后转状态4,东西绿灯灭,闪几个黄灯,南北还是为红灯亮,一段时间后,又循环至状态1。
通过对发光二极管的控制,来模拟交通信号灯的管理。
每延时一段时间,灯的显示情况都会按交通灯的显示规律进行状态转换,并添加其倒计时间的显示功能。
1.3本课程设计目的
(1)掌握十字路口交通灯控制的设计原理,并能够运用VHDL编程语言编写出实验程序,进一步对所学的知识进行掌握与实际应用。
(2)学会在MAX+plusⅡ软件环境中仿真,熟悉软件的基本操作的运行环境。
(3)锻炼自己获取信息的能力,以及能够独立自主地思考和解决问题的能力。
2.系统方案设计与原理
2.1设计思路
在交通灯控制系统中,东西南北四个方向各有红黄绿三种颜色的指示灯各一盏,共计12盏指示灯,用以来指挥车辆和行人交通安全通行。
当红色指示灯亮的时候表示禁止该方向的车辆和行人通行,当黄色指示灯亮的时候提示人们红、绿灯的状态即将切换。
并且黄灯燃亮时为东西和南北两干道的公共停车时间。
然后转为状态1南北绿灯通车,东西红灯亮。
过一段时间后,转为状态2,南北绿灯灭,黄灯闪几下,东西还是红灯。
再转为状态3,南北红灯亮,东西绿灯通车。
过一段时间后转为状态4,东西绿灯灭,闪几个黄灯,南北还是为红灯亮,一段时间后,又循环至状态1。
为了达到上述设计要求,可以用一片AT89C51单片机实现。
可以用一个AT89C51的P0口(P0.0-P0.5)分别接上垂直两个道口的6盏信号灯,由AT89C51单片机的定时器每秒钟通过P0口输送交通信号信息,在我的这个系统中采取的是共阳极发光二极管,所以当P0口的各引脚输出为低电平时,显示红、绿、黄、灯的燃亮情况。
用AT89C51的P1、P2口显示每个灯的燃亮的倒计时时间,时间由定时器来控制,由P1口的输出作为倒计时时间的十位数码,P2口输出作为倒计时时间的个位数码,用四个数码管的显示用动态显示方法实现。
P3口用来接应急开关K2、K3,用来实现对特殊情况的处理,当按下开关时交通显示灯全变为红灯,是特殊车辆通过。
2.2设计系统的运行过程
一般十字路口的交通灯控制系统的工作过程如下:
(1)图中南北车道绿灯亮,东西车道红灯亮。
表示南北车道上的车辆允许通行,东西车道禁止通行。
绿灯亮足25s时,控制器发出状态信号,转到下一工作状态。
(2)南北车道黄灯亮,东西车道红灯亮。
表示南北车道上未过停车线的车止通行,已过停车线的车辆继续通行,东西车道禁止通行。
黄灯亮足5s时,控制器发出状态转换信号,转到下一工作状态。
(3)南北车道红灯亮,东西车道绿灯亮。
表示南北车道禁止通行,东西车道上的车辆允许通行。
绿灯亮足25s时,控制器发出状态转换信号,转到下一工作状态。
(4)南北车道红灯亮,东西车道黄灯亮。
表示南北车道禁止通行,东西车道上未过停车线的车辆停止通行,已过停车线的车辆继续通行。
黄灯亮足5s时,控制器发出状态转换信号,系统又转到第
(1)种工作状态,就这样依次循环的进行运行。
在实际中,东西和南北两方向车道交通灯的4种运行状态的具体显示,如图2-1所示
图2-1四种状态的交通灯显示
3.硬件设计
3.1十字路口交通灯控制系统的硬件电路设计图
根据以上的设计思路分析,可以得到十字路口交通灯控制系统的硬件电路设计图如3-1所示
图3-1十字路口交通灯控制系统的硬件电路设计图
3.2硬件的功能分析
AT89C51单片机是交通灯控制系统的核心,主要用来驱动数码显示管、实现晶振电路和发光二极管等部件的控制,本设计中用到了P0,P1和P2口,用89C51的P0口(P0.0-P0.5)分别接上垂直两个道口的6盏信号灯,P1口的输出作为倒计时时间的十位数码,P2口输出作为倒计时时间的个位数码,所以其实现了对整个系统的控制。
十字路口要有数字显示装置,作为时间提示,以便人们更直观地把握时间。
具体要求为:
当某方向绿灯亮时,置定时器为某一个数值,然后以每秒减1的计数方式工作,直至减到数为0,十字路口红、绿灯交换,一次工作循环结束,进入另一个方向的工作循环。
数码显示管就是用来显示东西和南北两个道口的红黄绿三种颜色的灯的倒计时时间。
通过89C51单片机的RESET位来控制系统是工作或设置初值,当复位信号为1时就对系统进行初始化,系统就开始工作,复位开关K1就是用来实现对整个系统的初始化和复位工作。
在东西和南北两方向垂直的十字路口上,共有12盏交通灯,但有东西整个道上的分析一样,南北整个道上的分析一样,所以在设计时可用6盏灯来完成整个道路的设计,所以用3盏灯来显示南北方向红黄绿,用三盏灯来显示东西方向的红黄绿。
应急开关K2、K3借用P3口,用来实现对特殊情况的处理,当按下开关时交通显示灯全变为红灯时特殊车辆通过。
整个设计满足了任务要求,即完成了四个状态的转换,完成了倒计时数码管的显示,所以这个系统的设计足以控制十字路口的交通灯正常变换,保证各道车辆的畅通运行。
4.软件设计
4.1主流程图
通过设计思路的分析,得到主流程如图4-1所示。
图4-1主程序流程图
4.2倒计时显示流程图
在整个交通灯的设计过程中,LED显示是主要设计的内容之一,在这个系统中,用到30S和25s两个时间段,用定时器0的工作方式1的时候,其最大设定时间只能为131ms(
)的时间,所以我用到了定时器和计数器来完成这一功能,为了计算的方便,选择定时时间为125ms,即满8次为1s,依此循环使其计够30s或25s,其中R6和R7就是存储30s和25s的倒计时时间的寄存器,整个运行过程是个比较复杂的内容,故将其流程图列画如下图所示。
图4-2倒计时显示流程图
4.3状态地址分配
设计任务中描述了十字路口交通灯的四种不同的状态,在整个的运行过程中要求四个状态进行切换,因此在程序设计中必须给四个状态分配不同的地址来进行驱动,由于P0上的灯用低电平“0”来驱动点亮,所以其具体点的状态地址分配如表4-1所示。
表4-1状态地址分配表
4.4LED的字形代码表
LED显示器的发光二极管用共阴极连接时,其十六进制数字形代码表如表4-2所示。
表4-2LED的字形代码表
4.5程序清单
ORG0000H
MOVP0,#00H;
确保P0为低电位
LJMPMAIN0
ORG0030H
MAIN0:
MOV30H,#08H
MOVR6,#00H
MOVR7,#00H
MOVDPTR,#TABLE;
取数码管的译码
MOVTMOD,#01H;
设计定时方式为定时器0的方1
MOVTL0,#0CDH;
定时时间为125ms
MOVTH0,#0BH
SETBTR0;
启动定时器
SETBEA;
开总中断
SETBEX0;
允许外部中断0
SETBEX1
CLRIT0
MAIN:
MOVP0,#0F3H;
南北绿灯,东西红灯
MOVR6,#1EH;
红灯30s倒计时
MOVR7,#19H;
绿灯25s倒计时
MAIN1:
CALLDELAY;
1s延时子程序
CJNER7,#00H,MAIN1;
判断绿灯25s是否倒计完
MOVP0,#0F5H;
南北黄灯,东西红灯
MAIN2:
CALLDELAY
MOVR7,#00H;
红灯继续倒计时,黄灯闪烁
CPLP0.1;
黄灯闪烁
CJNER6,#00H,MAIN2;
判断红灯是否倒计时完
MOVP0,#0DEH;
南北红灯,东西绿灯
MOVR7,#1EH
MOVR6,#19H
MAIN3:
CJNER6,#00H,MAIN3
MOVP0,#EEH
MAIN4:
CPLP0.4
CJNER6,#00H,MAIN4
JMPMAIN
DELAY:
MOVA,R6;
进行南北方向倒计时时间的十进制调整
MOVB,#0AH
DIVAB
MOVCA,@A+DPTR;
找寻相应的数码管代码
MOVP1,A;
输出个位
MOVR4,#4;
降低动态显示频率
LOOP2:
MOVR3,#125
LOOP3:
DJNZR3,LOOP3
DJNZR4,LOOP2
MOVA,B
MOVCA,@A+DPTR
MOVP2,A;
输出十位
MOVR4,#4
LOOP4:
LOOP5:
DJNZR3,LOOP5
DJNZR4,LOOP4
MOVA,R7;
进行东西方向倒计时时间的十进制调整
MOVP1,A
MOVR4,#4
LOOP6:
LOOP7:
DJNZR3,LOOP7
DJNZR4,LOOP6
MOVP2,A
LOOP8:
LOOP9:
DJNZR3,LOOP9
DJNZR4,LOOP8
JBCTF0,LOOP;
判断是否计满125ms
AJMPDELAY
LOOP:
MOVTL0,#0CDH;
计满125ms重新给定时器赋值
MOVTH0,#0BH
MOVA,30H
DECA
MOV30H,A
JNZDELAY;
判断是否计满8次125ms,即1s
DECR7
MOV30H,#08H;
重新1s次数,重新计时
RET
TABLE:
DB03FH,06H,05BH,04FH,66H;
相应数值的数码管代码
DB6DH,7DH,07H,7FH,6FH,00H
END
5.运行与调试
在单片机仿真软件Proteus.Professional.7.1.SP2中进行仿真,在初始状态下的情况如图5-1所示。
图5-1十字路口初始状态的交通灯图
经过编译后,在得到状态1(东西红,南北绿)情况下的仿真结果如图5-2所示。
图5-2状态1情况下的仿真结果
经过编译后,运行一段时间后,我们得到状态3(东西绿,南北红)情况下的仿真结果如图5-3所示。
图5-3状态3情况下的仿真结果
设计完成后,由于各种原因,在实验室的硬件上未能正确的完成模拟,但在单片机仿真软件Proteus.Professional.7.1.SP2上我通过画外部接线图,装载程序等步骤进行了仿真,最终仿真结果能按照设计的四种状态依次循环的进行运行,当按下复位键时其重新开始仿真,当按下应急键时南北东西的红灯全亮,禁止车辆运行,仿真结果令人满意。
6.心得体会
本次设计任务巩固和加深了《单片机原理与应用》以及《嵌入式系统设计》课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后工作打下一定的基础。
在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。
交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
通过这次任务的实践过程,我对单片机的结构和功能已有了大体的了解和认识。
单片机在交通控制中起到了举足轻重的作用,掌握了单片机的工作原理也就基本了解了交通灯的运作原理。
在做课程设计的过程中,我通过图书和上网查阅资料,不仅了解了很多单片机的知识,而且锻炼了我自学和独立思考的能力。
我们先通过题目的要求构思出大体的思路,画出主程序的流程图和细节的复杂过程流程图,如倒计时显示的流程图,然后根据四个不同状态逐个编写程序,在编程时加入了适当的注释,以防止长时间遗忘,或者防止别人看不懂,同时也可以在调试的过程中程序出错时便于检查。
根据所设计的程序,画出外部硬件的接线图是主要完成的内容之一。
顺利完成这次课程设计给了我很大的信心,但我感觉到自己很多的不足和对知识理解的不全面,但我始终相信发现问题,面对问题,才可能解决问题。
今后的学习中,我将更加的努力,使自己更上一层楼。
相信凡事踏踏实实做好做扎实,我们一定会随后收获很多,因为“千里之行,始于足下”是至高无上的真理。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 系统 设计 十字路口 红绿灯 控制 本科 学位 论文
![提示](https://static.bdocx.com/images/bang_tan.gif)