4.2 晶振电路
图4-2 晶振电路
单片机必须在时钟的驱动下才能进行工作。AT89C51单片机内部具有一个时钟振荡电路,只需要外接振荡器,即可为各部分提供时钟信号。
使用晶振电路时,只要在引脚XTAL1和XTAL2上外接定时反馈回路,振荡器OSC就能自激振荡,产生矩形时钟脉冲序列。定时反馈回路常由石英晶振和微调电容组成,其中石英晶振的频率是单片机的重要性能指标之一,时钟频率越高,单片机控制器的控制节拍就越快,运算速度也就越快。该电路是用12MHz的石英晶振和两个30p的电容器。石英晶振的频率选为典型值12MHz,这样有得于得到没有误差的波特率。电容器C2和C3是起稳定振荡频率、快速起振的作用。
11
4.3倒计时显示电路
图4-3 倒计时显示电路图
该交通灯控制系统在正常工作情况下,每15s循环变换一次,为方便提示路上的行人及车辆交通灯转换的剩余时间,专门为控制系统设计了一个倒计时显示装置。该显示装置选用七段数码管来显示交通灯的剩余时间。本来根据控制要求,每个路口需要两个数码管,这样四个路口就需要八个数码管,但由于四组显示的倒计时时间都是一样所以只需使用一组数码管即可。由于AT89C51单片机的I/O作为输出时,具有较大的吸收电流能力,因此我们可以选用共阳型数码管,这样由单片机的I/O就可以直接驱动,从而简化硬件电路的设计。而在电路中是用阻值为4.7k的排电路作为上位电路,限流电阻却用阻值为200的电阻。如图3-3所示。
12
4.4 交通灯电路
东西方向 单片机的I/O接口直接和交通灯(LED)连接。在十字路口的四组红、黄、绿
三色交通灯中,东西方向道路上的两组同色灯连接在一起,南北方向道路上的两组同色灯连接在一起,受单片机P1.0~P1.5控制。12个发光二极管采用了共阳极的连接方式,因此I/O口输出低电平时,与之相连的LED会亮,I/O口输出高电平时,与之相连的LED会灭。交通灯电路如图4-4所示。
南北方向
图4-4 交通灯电路图
13
4.5 紧急通行电路
图3-5 紧急通行电路
该系统的K1、K2、K3三个键分别与单片机的P3.0、P3.1、P3.6相接,它们
可以在特殊的交通情况下使用。例如,当有紧急情况发生时:
按下K1键,四个路口同时加亮黄灯进行闪烁5s后,并且关闭倒计装置,四个路口信号灯同时转为红灯,从而保证紧急车辆通过。松开K1键,交通灯系统恢复正常工作状态;
按下K2键,四个路口同时加亮黄灯进行闪烁5s后,并且关闭倒计装置,只允许东西方向车辆通行,南北方向禁行。松开K2键,交通灯系统恢复正常工作状态;
按下K3键,四个路口同时加亮黄灯进行闪烁5s后,并且关闭倒计装置,只允许南北方向车辆通行,东西方向禁行。松开K3键,交通灯系统恢复正常工作状态
14
五,系统程序设计
5.1 主程序流程图
该智能交通灯控制系统的软件设计采用的是顺序执行并反复循环的方法。智能交通灯控制系统在正常的情况下,每15s循环变化一次。每个循环周期在还剩余5s时,四个路口的黄灯同时点亮并开始闪烁,以提醒行人及车辆,交通灯将发生转换。要程序中定时扫描P3口,若有键按下,则调用键盘子程序进行相应也处理;若无,则程序继续执行。主程序流程图如图5-1所示。
开 始
初始化 是 纵向通行 显示状态 否 5s到?
15s到? 黄灯闪显 示子程序 是 黄灯闪显 示子程序 15s到? 是 否 否 5s到? 是 横向通行 显示状态 主程序流程图5-1
15