APP下载

实用交通灯控制电路设计论证

2009-06-28王俊芳王正欢

科教导刊 2009年9期
关键词:交通灯双色倒计时

王俊芳 王正欢

摘要本系统除了有基本交通灯功能外,还有对按键设置、紧急情况处理、分时段自动调整交通灯的点亮时间等功能。文章分析了各种设计方法,选取了一种设计思路新颖、效率较高的方案,并对其进行了综合性、创新性地设计。

关键词中断定时键盘LED显示

中图分类号:TM923文献标识码:A

本设计基于上海航虹高科技有限公司AEDK5196的实验系统,支持MCS-51系列和MCS-96系列微控制器实验和仿真开发。该设计可完成如下功能:利用单片机的定时器定时令十字路口的红绿灯交替;通过按键对红绿灯点亮时间进行调整及设置;能对红绿灯点亮时间进行倒计时显示;完成不同时间段交通灯显示规则不同的软件设计;在异常情况时,可进行紧急情况的人工处理控制;当专用车辆通过十字路口后,交通灯恢复常态运行规则。

1 方案比较和论证

1.1显示界面方案

方案一:完全采用数码管或完全采用点阵式LED 显示。但前者只显示有限的符号和字符,无法满足实际应用要求。后者虽可显示各种字符、图形等,但实现复杂,且须完成大量的软件工作。

方案二:采用数码管与双色LED 相结合的方法,因为设计既要求倒计时显示,又要求有状态灯输出等,所以用数码管与LED灯分别显示时间与提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。

1.2键盘、显示接口方案

方案一:采用8255和串行口扩展的键盘显示器电路。利用74LS164将单片机送来的8位串行数据变成并行数据,经驱动器送往键盘和显示器,做键盘的列扫描信号和显示器的位控制信号。键盘的行线与单片机的P1口相连接,提供行信号。8255的A口输出的数据经反相器送往显示器,作段码信号。这种方案硬件复杂,且软件编程麻烦。

方案二:采用可编程键盘显示器接口芯片8279,它能完成键盘输入和显示控制两种功能。其键盘部分提供一种扫描工作方式,能对键盘不断扫描,自动消抖,自动识别出按下的键并给出编码,能对双键或n键按下实行保护;显示部分为发光二极管,其提供了按扫描方式工作的显示接口,并为显示器提供多路复用信号,可显示多达16位的字符或数字。

2 系统硬件设计

2.1总体实现框图

系统采用74LS273作输出,控制4个双色LED模拟交通灯,采用8279同时完成键盘输入和七段数码管时间显示控制两个功能。

说明:锁存器74LS373的片选端CS接译码器输出端的8300H,为交通灯提供地址;开关K8接P3.2即外部中断0,首先将其拨到“1”位置,再拨一个来回(即先低后高模拟上升沿触发),即可产生中断请求信号,模拟专用车辆通过十字路口时的“异常情况”。K1接P1.1,CPU通过查询电平高低判断交通灯是按常规情况下工作,还是按键盘设置的时间工作。

2.2双色发光二极管的使用

双色发光二极管是将一个红色LED管芯和一个绿色LED管芯封装在一起、公用负端的一个集成器件。设计中,采用4只双色发光二极管(DLED)分别模拟安装在东、西、南、北4个路口上的4只交通灯,LED1—LED4分别位于北西东南方向。每只双色发光二极管由74LS240反向驱动器驱动,74LS240输入控制端为DR和DG,分别控制DLED红灯和黄灯的工作。电平高低与灯亮的具体控制如下:

DR示颜色红+绿=黄红绿不发光软件的设计

设计思路:用到了两个定时器T0和T1以及外部中断0,系统初始化及开启定时器T1中断后,即调用显示子程序,开始时钟显示;根据当前的时间与软件中规定的忙闲状态判断 交通状态是否处于高峰期,低峰期,正常状态,是则进入相应的状态处理子程序;根据K1的按键与否判断是按常规还是按键盘设置来显示红绿灯;同时根据K8的按键即外部中断0模拟的异常情况进入异常情况处理。

3 结语

本系统设计基于AEDK5196实验系统,下面就软件实现过程中一些需要注意的问题作如下总结:

3.1 对于资源利用

系统设计要求交通灯,倒计时显示,24小时时钟显示同步工作同时又能处理外部中断0模拟的异常情况处理,所以要求合理的利用资源以避免资源在使用过程中发生冲突而产生不可预料的结果。

3.2 对于中断优先级

系统用到了3个中断:定时器0,定时器1,外部中断0,此时中断的优先级尤为重要。定时器1是用来内部24小时计时的,即要求在不受任何其它中断的影响,所以要求其为最高中断优先级。为了避免中断与中断之间使用的混乱,尽量不用或少用中断嵌套。

3.3 对于多项功能的同步

两个定时器之间是相互独立的,在保证其模式相同的条件下很容易实现同步;而要实现交通灯的红绿灯状态与倒计时显示的同步,解决的方法是:在红绿灯的定时器延时中调用倒计时显示子程序。

猜你喜欢

交通灯双色倒计时
神奇的双色花
皇牌不败双色鞋
8月第一周 倒计时
8月第二周 倒计时
8月第三周 倒计时
8月第四周 倒计时
矿工灯
为什么交通灯是红黄蓝三种颜色?
双色木车模
荷兰小城为“低头族”设置专属路面交通灯