#微机型交通信号灯实时控制系统的模拟设计.docx
《#微机型交通信号灯实时控制系统的模拟设计.docx》由会员分享,可在线阅读,更多相关《#微机型交通信号灯实时控制系统的模拟设计.docx(13页珍藏版)》请在冰豆网上搜索。
#微机型交通信号灯实时控制系统的模拟设计
微机型交通信号灯实时控制系统的模拟设计
1.摘要…………………………………………………………………………………..1
2.引言…………………………………………………………………………………..1
3.单片机概述…………………………………………………………………………..2
4.实验目的……………………………………………………………………………..2
5.实验任务……………………………………………………………………………..2
6.实验设备器材………………………………………………………………………..3
7.实验原理……………………………………………………………………………..3
8.实验流程图…………………………………………………………………………..5
9.实验主程序…………………………………………………………………………..6
10.心得体会……………………………………………………………………………..9
1.摘要:
近年来随着科技的飞速发展,单片机的使用正在不断深入,同时带动传统控制检测技术日益更新。
在实时检测和自动控制的单片机使用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。
十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。
那么靠什么来实现这井然秩序呢?
靠的就是交通信号灯的自动指挥系统。
交通信号灯控制方式很多。
本系统采用MSC-51系列单片机ATSC51为中心器件来设计交通灯控制器,实现了能根据实际车流量通过8051芯片的P1口设置红、黄、绿灯燃亮时间的功能。
本系统实用性强、操作简单、扩展功能强。
2.引言
当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。
但这一技术在19世纪就已出现了。
1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。
这是世界上最早的交通信号灯。
1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。
它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。
1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。
电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。
红灯亮表示“停止”,绿灯亮表示“通行”。
1918年,又出现了带控制的红绿灯和红外线红绿灯。
带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。
红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。
红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。
信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。
绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。
左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。
红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。
黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。
3.单片机概述
单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:
中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。
MSC-51芯片简介
MCS-51单片机内部结构
8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。
8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:
·中央处理器:
中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。
·数据存储器(RAM)
8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。
图1
·程序存储器(ROM):
8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。
·定时/计数器(ROM):
8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。
·并行输入输出(I/O)口:
8051共有4组8位I/O口(P0、P1、P2或P3),用于对外部数据的传输。
·全双工串行口:
8051内置一个全双工串行通信口,用于和其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。
·中断系统:
8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。
·时钟电路:
8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。
单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器和数据存储器合二为一的结构,即普林斯顿(Princeton)结构。
INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。
下图是MCS-51系列单片机的内部结构示意图2。
图2
MCS-51的引脚说明:
MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线和P3口线复用。
现在我们对这些引脚的功能加以说明:
MCS-51的引脚说明:
MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线和P3口线复用。
现在我们对这些引脚的功能加以说明:
如图3
图3
Pin9:
RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。
初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。
RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。
然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8051的初始态。
8051的复位方式可以是自动复位,也可以是手动复位,见下图4。
此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。
图4
·Pin30:
ALE/
当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。
而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。
更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。
如果单片机是EPROM,在编程其间,
将用于输入编程脉冲。
·Pin29:
当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。
·Pin31:
EA/Vpp程序存储器的内外部选通线,8051和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。
如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。
显然,对内部无程序存储器的8031,EA端必须接地。
在编程时,EA/Vpp脚还需加上21V的编程电压。
4、实验目的
现代城市交通日益拥挤,为保证交通安全,防止交通堵塞,使城市井然有序,交通信号灯在城市交通管理中的作用越来越重要。
通过本实验:
⒈掌握交通信号灯实时控制系统的设计思想和实现方法。
⒉掌握定时/计时器和并行接口在实时控制系统中的使用。
⒊加深对定时/计时器和并行接口芯片的工作方式和编程方法的了解。
⒋加深对中断机理及使用方法的了解。
5、实验任务
设计制作一个交通信号灯实时控制系统。
要求:
⒈在一个十字路口的一条主干道和一条支干道上分别装一套红,黄,绿3种信号灯;用钮开关模拟十字路口的车辆检测传感器信号。
⒉在一般情况下,主干道上的绿灯常亮,而支干道上总是红灯。
⒊当检测到支干道上来车时(用按键开关模拟),主干道的绿灯转为黄,持续3秒后,又变成红灯,同时支干道由红灯变为绿灯。
⒋支干道绿灯亮后,或者检测到主干道上来了3辆车(用3个钮子开关模拟),或者虽未来3辆车,但绿灯已持续了20秒,则支干道立即变为黄灯,3秒后转为红灯,同时主干道由红灯变为绿灯。
6、实验设备器材
⒈CPU选用51系列单片机。
⒉51系列单片机综合实验开发平台。
⒊定时/计时器和并行接口芯片。
⒋按键开关1个,拨动开关3个,红、黄、绿发光二极管各1只。
7、实验原理
根据实验任务要求,在本实验系统中,单片机需要检测4个开关送来的主,支干道车辆到达信号,并按一定的条件发出主,支干道6个信号灯的控制信号。
令端口P1工作于方式0的无条件数据输出方式,用以控制交通灯的亮灭;端口P3工作于方式1的输入方式,并设置为允许中断;将端口P2的P3.2接到中断请求线上,使得当支干道上有车来时,由中断请求线向CPU发出中断,CPU响应中断后发出控制信号来控制主,支干道交通灯变换状态。
端口P2的高3位用作输入口,从P2.7,P2.6,P3.3接入3个钮子开关,当钮子开关打到高电平时,表示主干道有车辆到来。
具体设置如下:
有关定时/计时器的功能,可以采用8253计时/定时器结合中断服务程序计数的方法来实现。
可设想用8253来产生秒时钟信号,为此可以设置8253的定时器0工作方式1,定时器1工作于方式1,输入6MHz频率脉冲。
这样,就可以做到让定时器0每隔100ms产生1次溢出,产生30次后就是时间3s。
定时器1每隔100ms产生1次溢出,200次后就是20s。
另外发光二极管显示原理:
从I/O口的P1.0,P1.1,P1.2接支干3个二极管(红,黄,绿),P1.3,P1.4,P1.5接主干3个二极管(红,黄,绿),由程序输出高电平点亮相应端口的二极管。
综上所述,本试验系统的硬件结构框架如下图所示:
8253通道0的定时器0端口为P3.4,通道1的定时器1端口为P3.5。
8.流程图:
9.实验主程序:
ORG0000H
LJMPMAIN
ORG0003H
LJMPINTT0
ORG000BH
LJMPT0
ORG0013H
LJMPINTT1
ORG001BH
LJMPT1
MAIN:
MOVSP,#60H
MOVTMOD,#99H
MOVTH0,#3CH;定时器0产生100ms的溢出
MOVTL0,#0B0H
MOVTH1,#3CH;定时器1产生100ms溢出
MOVTL1,#0B0H
MOVP1,#21H
SETBEA
SETBIT0
SETBEX0
INTT0:
MOVR1,#30
MOVR2,#200
MOVPCC
MOVPSW
CLREX0
MOVP1,#11H
SETBET0
T0:
DJNZR1,GOON
MOVP1,#0CH
MOVR1,#30
CLRET0
SETBET1
GOON:
MOVTH0,#3CH
MOVTL0,#0B0H
RETI
INTT1:
JNBP2.6,T1
JNBP2.7,T1
SJMPGOOT
T1:
SETBEX1
JBP3.3,INTT1
DJNZR2,GOON2
MOVR2,#200
SJMPGOOT
CLRET1
GOOT:
MOVP1,#09H
SETBET0
POPPSW
POPACC
RETI
END
10心得体会:
通过这次课程设计,加强了我们动手、思考和解决问题的能力。
我沉得做课程设计同时也是对课本知识的巩固和加强,由于课本上的知识太多,平时课间的学习并不能很好的理解和运用各个元件的功能,而且测试内容有限,所以在这次课程设计过程中,我们了解了很多元件的功能,并且对于其在电路中的使用有了更多的认识。
此次课程设计,学到了很多课内学不到的东西,比如独立思考解决问题,出现差错的随机应变,和和人合作共同提高,都受益非浅,今后的制作应该更轻松,自己也都能扛的起并高质量的完成项目。