单片机控制的智能交通灯系统实现

版权申诉
0 下载量 32 浏览量 更新于2024-06-25 收藏 2.06MB DOC 举报
"基于单片机的交通灯控制系统设计" 这篇文档详细介绍了基于单片机的交通灯控制系统的设计,主要使用MCS-51系列的AT89S52单片机作为控制核心。该系统旨在实现对东西南北四个方向的交通灯进行控制,包括左拐、右拐、直行及行人四种通行指示灯,并配备计时器显示剩余通行时间。在特殊情况下,如遇到119、120等特种车辆,系统能够自动调整为特种车辆优先通行模式。 在系统设计过程中,作者首先对功能需求进行了分析,并提出了三种可能的解决方案。经过对比评估后,选择了LED动态循环显示方案。硬件部分主要包括单片机最小系统、时间显示和交通灯显示。其中,时间显示采用三位LED显示器,而交通灯显示则通过红绿双色高亮发光二极管来模拟各个方向的交通信号。 软件设计方面,采用了模块化的方法,主要分为四个部分:主程序、定时器中断服务子程序、倒计时显示子程序和交通灯模拟显示子程序。这些子程序协同工作,确保系统的稳定运行和精确计时。 在实际操作中,作者在实验板上构建了交通灯控制系统的样机,并对硬件和软件进行了独立调试,最后进行了软硬件联调,以确保样机能够满足设计任务书中的所有要求。调试过程包含了静态检查、通电检查、仿真器选择、仿真过程以及各个模块的单独调试,如通行灯输出、时间显示和特种车中断程序等。实验结果显示,该系统能够成功完成预期功能。 此外,文档还提供了系统的电路原理图、PCB图和程序清单,为读者提供了完整的设计资料。这一设计不仅适用于学术研究,也为实际交通管理提供了一种可行的技术方案。
2023-02-27 上传
基于89C51的交通灯控制系统设计 目 录 摘 要 1 1.设计任务与要求 1 2.系统硬件设计 2 3.系统软件设计 5 4. Proteus软件仿真 6 5.设计心得 7 6.参考文献 7 附录 8 交通灯控制系统设计 摘 要 自从1858年英国人发明了原始的机械扳手交通灯之后,随后的一百多年里,交通灯改 变了交通路况,也在人们日常生活中占据了重要地位,随着人们社会活动日益增加,经 济发展,汽车数量急剧增加,城市道路日渐拥挤,交通灯更加显示出了它的功能,使得 交通得到有效管制,对于交通疏导,提高道路导通能力,减少交通事故有显著的效果。 近年来,随着科技的飞速发展,电子器件也随之广泛应用,其中单片机也不断深入人 民的生活当中。本模拟交通灯系统利用单片机AT89C51作为核心元件,实现了通过信号灯 对路面状况的智能控制。从一定程度上解决了交通路口堵塞、车辆停车等待时间不合理 、急车强通等问题。系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便 等优点,有广泛的应用前景。 本模拟系统由单片机硬/软件系统,两位8段数码管和LED灯显示系统等组成,较好的 模拟了交通路面的控制。 关键词:交通灯 单片机 数码管 LED灯 1.设计任务与要求 东西、南北两干道交于十字路口,各干道有一组红、绿、黄三个指示灯,指挥车辆和 行人安全通行。东西方向为主干道,通行时间为40秒;南北方向为支干道,通行时间为 30秒。通行时间最后3秒,绿灯灭,黄灯闪烁,黄灯闪烁完毕变更通行车道。通行时间由 数字显示器显示,黄灯3秒闪烁不单另计时。 2.系统硬件设计 根据上面的功能要求,硬件系统主要有单片机模块、指示灯模块和倒计时显示模块。 各模块选择如下: (1)单片机模块 主控芯片采用AT89C51单片机,其管脚图如图1所示。 图1 AT89C51引脚图 AT89C51是AT89C5X系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解 。AT89C51单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器 、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大 总线。 中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二 进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制 输入输出功能等操作。 AT89C51内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址 的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据 ,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义 的字型表。 AT89C51共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。 AT89C51有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序 转向。 AT89C51共有4组8位I/O口(P0、P1、P2或P3),用于对外部数据的传输。 AT89C51内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口 既可以用作异步通信收发器,也可以当同步移位器使用。 AT89C51具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中 断,可满足不同的控制要求,并具有2级的优先级别选择。 AT89C51内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但 AT89C51单片机需外置振荡电容。 本设计中,使单片机运行在最小系统。 时钟电路由两个20nF的微调电容和一个晶振组成。AT89C51内部有一个用于构成振荡 器的高增益反相放大器,它的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引 脚接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器。本系统采用12Hz的振荡 器,机器周期为1us。复位操作有上电自动复位、按键电平复位和外部脉冲复位三种方式 。本设计采用按键电平复位。按键电平复位是通过复位端经电阻与电源接通实现,如下 图2所示。 图2 AT89C51最小系统 (2)指示灯模块 设计电路中每个路口的控制信号灯应有三个,即红灯、黄灯、绿灯各一个。因此,本 电路的设计中应用到红灯、黄灯、绿灯个四个。同一方向的两个路口的同一颜色指示灯 是同时亮灭,为简化电路,可让这两个灯接同一引脚。这样可用P1口控制所有的指示灯 。 为简化设计,信号灯不采用当个的发光二极管,而采用现用的交通灯组件。该组件及 其与单片机引脚的接法如下: " "东西方向 "南北方向 " "指示灯"红灯"绿灯"黄灯"红灯"绿灯"黄灯" "引脚 "P1.3"P1.4"P1.5"P0.0"P1.1"P1.2" 图3 指示灯及其接线引脚 (3)倒计时显示模块 由于黄灯3秒闪