- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
模拟交通灯设计报告毕业设计
模拟交通灯设计报告
【摘要】
当今世界正处于一个自动化时代,交通灯控制等很多行业的设备都需要计算机来控制。因此,一个好的交通灯控制系统能在道路拥挤、违章控制等方面起到很大作用。
十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MSC-51系列单片机STC89C52为中心器件来设计交通灯控制器,实现了红、黄、绿灯燃亮功能;红黄绿灯循环点亮。实现模拟交通灯的功能。本系统实用性强、操作简单、扩展功能强。
关键词:单片机(89C52) 交通灯 数码管 LED
整体方案设计
基本要求
在十字路的东西南北方向各设置一组红黄绿灯以及一个转向灯并设置一个两位数码管,编程实现十字路口红黄绿灯交替点亮与数码管倒计时显示。
实现功能
正常情况
东西车道与南北车道交替通行,每次通行时间为20秒,东西方向红灯亮30秒同时其方位的数码管倒计时30秒,南北向绿灯亮20秒之后黄灯闪5秒同时其方位的数码管倒计时25秒,之后南北向转向灯亮5秒数码管倒计时5秒。东西向绿灯亮20秒之后黄灯闪5秒同时南北向红灯亮30秒。
紧急情况
通过按压“禁止通行键”可使东西南北全部红灯,即全都不通,以应付突发情况。
按压“东西紧急键”,则东西方向绿灯,南北方向红灯;再按一次解除东西紧急通行状态。按压“南北紧急键”,则南北方向绿灯,东西方向红灯;再按一次后解除南北紧急通状态。
按压“东西转向键”,则东西转向灯开;按压“南北转向键”,则南北转向灯开。
交通灯显示状态
东西方向(简称A方向)
南北方向(简称B方向)
状态说明
红灯
黄灯
绿灯
转向
红灯
黄灯
绿灯
转向
灭
灭
亮
灭
亮
灭
灭
灭
A方向通行,B方向禁行
灭
闪烁
灭
灭
亮
灭
灭
灭
A方向警告,B方向禁行
亮
灭
灭
亮
亮
灭
灭
灭
A方向左转
亮
灭
灭
灭
灭
灭
亮
灭
A方向禁行,B方向通行
亮
灭
灭
灭
灭
闪烁
灭
灭
A方向禁行,B方向警告
亮
灭
灭
灭
亮
灭
灭
亮
B方向左转
总体设计方案框图
5v
5v直流稳压电源
独立键盘控制
基于STC89C52的单片机最小系统
两位共阴极数码管
LED模拟交通灯
方案原理
采用单片机STC89C52的I/O口P1口通过锁存器控制共阴极数码管,,在十字路口的四组红、黄、绿交通灯及转向灯中,由单片机P0口管脚分别控制,由于交通灯为发光二极管且阳极通过限流电阻和电源正极连接,因此I/O口输出低电平时,与之相连的灯会亮,并通过数码管显示时间倒计时。紧急情况的工作模式转换由人工控制
计时是利用单片机内部的一个T0定时器/计数器来实现,它的处理过程如下:首先设定单片机内部的一个定时器/计数器工作于定时方式,先对它的定时进行校准,校准为50ms,之后以20个定时溢出为标准为1s进行计时同时根据条件语句与循环语句对数码管的计时及LED的燃亮进行调控。
本系统共用4个两位数码管,数码管显示的信息用8个内存单元存放,这8个内存单元称为显示缓冲区。在本系统中数码管显示采用软件译码动态显示。在存储器中首先建立一张显示信息的字段码表,显示时,先从显示缓冲区中取出显示的信息,然后通过查表程序在字段码表中查出所显示的信息的字段码,从P1口输出,同时在P2口将对应的位选码输出选中显示的数码管,就能在相应的数码管上显示显示缓冲区的内容。
硬件设计
单片机最小系统
89C52单片机是硬件电路最核心的部分,时钟电路晶振使用11.0592HZ
电源电路设计
电源使用自制+5V直流稳压电源
数码管显示电路
数码管采用两位共阴极数码管,东西南北各一个
LED交通灯电路
东西南北各三个红黄绿LED模拟交通灯,外加一个转向灯
软件设计
程序流程图
主程序
主程序
开始
设置中断工作方式、触发方式、初始化
是否有中断
运行过程
执行中断
Y
N
中断结束,退出中断,返回
N
N
Y
Y
N
Y
Y
N
N
Y
运行过程
SN:绿灯(20),EW:红灯(30)
Num60是否到10
SN:黄灯亮,EW:红灯
Num60是否到5
SN:黄灯灭,EW:红灯,转向亮(5)
Num60是否到0秒
N
EW:绿灯(20),SN:红灯(30)
Num60是否到40
EW:黄灯亮(5),SN:红灯
Num60是否到35
EW:黄灯灭,EW:红灯,EW转向亮(5)
Num60是否到30s秒
N
数码管显
示
缓
冲
区
Y
Y
Y
数码管显示程序
获取当前通行剩余时间送h、l
E/S/W/N状态送P1口
位选码送P3口
调用Delay延时
四位显示完?
返回主程序
T0
T0中断
定时计数初值
50ms计数(num)加1
判断1S(num=20?)到否
Num=0
Num60--
恢复现
文档评论(0)