基于单片机的交叉路口交通灯控制器
2017-11-30陆晓锋重庆交通大学
陆晓锋 重庆交通大学
基于单片机的交叉路口交通灯控制器
陆晓锋 重庆交通大学
本文介绍的是一款智能的交叉路口交通灯来指导人们有序的进行交通。基于AT89C51单片机交通灯控制器就很好的解决了道路拥堵这个问题。此控制器拥有红黄绿三种颜色信号控制灯,通过P.0~P.3口做控制显示输出,有精确的倒计时功能,同时能在LED灯上智能的显示出来,能在繁忙的都市给人们带来安全,满足人们的交通需要。
AT89C51 LED 二极管 交通灯
随着社会的进步,越来越多的人使用汽车出行造成拥堵的现象已经十分普遍,但是,车辆的增多给道路造成了拥堵和急需交通控制提出了更高要求。因此面对这种社会的需求,对传统的交通灯做了以下的改进:车辆通行时间固定,当主干道和次干道交通流量明显不一致时,造成了主干道通行时间过短车辆滞留,次干道车流量较小通行时间过长;从而通过有效的交通设施,将交通管理控制发挥到极致,进而在一定程度上提高道路的有效利用率,为人们来带方便。
1 总体设计
利用AT89C51单片机设计一十字路口交通灯控制系统。
①系统包含了数码管、显示单片机系统、交通灯演示系统组成。
②新增人行道的交通灯显示,以及对应的交通路口的红绿灯显示。
③数码管倒计时功能。
④要求甲乙车道的车辆交替运行,每次通行为60秒。为绿灯的车道先显示40秒的直行,再显示20秒的左行。
⑤黄灯先亮四秒之后才能变换车道,黄灯亮的时候需要进行闪烁提示。
(注:AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次)
2 它的工作状态情况如下
上电后,南北方向数码管显示40,东西方向数码管显示60,南北方向的直行绿灯亮,车辆可以直行可以右行,人行红灯亮行人不能通过;东西方向红灯亮车辆不能通行,人行绿灯亮人可以通行。当南北数码管显示为4时,直行绿灯熄灭,黄灯闪烁4秒,然后南北数码管显示20,左转绿灯亮车辆可以左行,人行灯和东西方向灯同上一状态,当数码管减到四时南北黄灯闪烁4秒,然后红灯亮,数码管显示60,南北车辆禁止通行,人行绿灯亮;南北数码管显示60的同时东西数码管显示40,直行绿灯亮,车辆可以直行可以右行,人行红灯亮,当东西数码管显示为4时,直行绿灯熄灭,黄灯闪烁4秒,然后东西数码管显示20,左转绿灯亮车辆可以左行,人行灯和南北方向灯同上一状态,当数码管减到4时东西黄灯闪烁4秒,然后红灯亮,东西数码管显示60,南北显示40,随后依次循环… …
3 程序的大体思路
给P2口赋初值,让数码管刚开始都不亮;给R2赋60,使东西的数码管显示初值为60;给R3赋40,使南北的数码管显示初值为40;使人形道的灯初始都不亮;给R5,R6赋初值0;定时器0工作方式1;给定时器赋初;调用东西判断函数;定时器中断里重现给定时器0赋初值;定时器中断一次50MS,中断一次R4+1;判断是不是加到20了,即定时器定时1S;R4加到20,则清0;要是定时1S到了,则把R2,和R3的值都减1;判断R5是不是等于1,不等于1跳到K1;而且R2等于4,则开启黄灯,关闭车道绿灯;要是R2小于4则闪烁绿灯;判断R2是不是等于0,等于0则让标志位+1;清黄灯,开车道的左行绿灯,置人行道红灯;CJNE这个指令比较好R5和1的值,要是R5大于1,则C=0,反之C=1,这里判断C是否等0既判断是否小于1,小于1执行下行,大于1则跳转K2;初值状态R2是60,判断R2是不是60,60的话开车道的红灯,开人行道的绿灯… …等等
4 结语
该系统虽然简单易操作,但大大的减少了设计的难度,而且设计的实用性强,程序可靠思路简洁,功能包括了交通灯的指交通灯的指示以及倒计时LED显示,通过该系统能够很方便地控制交通路口的参数,有效的提高紧急车辆通过的效率,具有一定的实际应用价值,且解决了交通繁忙路段拥挤的问题。
[1]王冬梅,张建秋,路敬祎.基于单片机的交通灯控制系统设计与实现[J].佳木斯大学学报(自然科学版),2009,27(1):94-96
[2]吴慎将,李党娟.智能交通灯控制器的设计[J].国外电子测量技术,2010,(11):51-53+67
[3]单片机原理及接口技术第二版李全利主编高等教育出版社