交通灯论文参考.docx
- 文档编号:30741428
- 上传时间:2023-08-20
- 格式:DOCX
- 页数:39
- 大小:564.37KB
交通灯论文参考.docx
《交通灯论文参考.docx》由会员分享,可在线阅读,更多相关《交通灯论文参考.docx(39页珍藏版)》请在冰豆网上搜索。
交通灯论文参考
基于单片机控制的交通灯
摘要
近年来随着科技的飞速发展,一个以微电子技术、计算机技术和通信技术为先导的信息革命正在蓬勃发展。
计算机技术作为三者之一,怎样与实际应用更有效的结合并发挥其作用尤为重要。
单片机作为计算机技术的一个分支,正在不断的应用到实际生活中,同时带动传统控制检测的更新。
在实时检测和自动控制的应用系统中,单片机往往是作为一个核心部件使用,针对具体应用对象的特点,配以其它器件来加以完善。
十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。
那么靠什么来实现交通的井然秩序呢?
靠的是交通信号灯的自动指挥系统,来实现交通的井然有序。
交通信号灯控制方式很多,本系统采用美国ATMEL公司生产的单片机AT89S51,以及其它芯片来设计交通灯控制,实现了通过AT89S51芯片的P1口设置红、绿灯点亮的功能,通过AT89S51芯片的RXD、TXD输入、输出设置显示时间。
交通灯的点亮采用发光二极管实现,时间的显示采用七段数码管实现。
单片机系统采用的是5V直流电源供电。
为了系统稳定可靠,系统内集成了“看门狗”芯片,避免了系统因为死机而停止工作的情况发生。
系统实用性强、操作简单、扩展性好。
关键词:
单片机;交通灯;控制器
TheRrafficLightBasedonTheSingle-chipControl
ABSTRACT
Inrecentyearsalongwithtechnicalrapiddevelopment,Takemicroelectronictechnology,computertechnologyandcommunicationasforerunner'sinformationrevolutionvigorousdevelopment。
Thecomputertechnologytookthreeone,howwieldsitsfunctionconcurrentlywithapracticalapplicationmoreeffectiveunion。
Themonolithicintegratedcircuittookthecomputertechnologyabranch,intheunceasingapplicationpracticallife,simultaneouslyisleadingthetraditionalcontrolexaminationtherenewal。
Inthereal-timeexaminationandintheautomaticcontrolapplicationsystem,themonolithicintegratedcircuitoftentakesacorepartuse,inviewofconcreteapplicationobjectcharacteristic,Matchescomesbyothercomponentstoconsummate。
Theintersectionvehiclesshuttle,thepedestrianisbustling,cardealershiptrafficlane,humansidewalk,methodical.Whatthendependsontorealizethetransportationorderlyorder?
Dependsonisthestreet-trafficcontrollightsautomaticcommandsystem,realizestransportationsystematic。
Thestreet-trafficcontrollightscontrolmodeareverymany。
ThissystemusesmonolithicintegratedcircuitAT89S51whichAmericanATMELCorporationproduces,aswellasotherchipsdesignthetrafficlightcontrol。
RealizedmouthhasestablishedthefunctionthroughAT89S51thechipP1whichred,thegreenlightlightened,throughAT89S51chipRXD、TXDinput,outputestablishmentdemonstrationtime。
Thetrafficlightlightensusesthelightemitterdioderealization,thetimedemonstrationusessevensectionofnixietuberealizations。
Themonolithicintegratedcircuitsystemusesdirect-currentpowersupply。
Forsystemstablereliable,inthesystemintegrated“thewatch-dog”thechip,avoidedthesystembecauseofdyingmachinetheknockoffsituationoccurrence。
Thesystemusabilitystrong、theoperationsimple、theextensionisgood。
KEYWORD:
Onlyflatmachine;Trafficlights;Controller
目录
1前言1
2交通管理方案论证2
2.1设计任务2
2.2方案选择2
3交通灯系统硬件设计5
3.1单片机概述5
3.2系统构成5
3.3芯片选择与介绍6
3.3.1AT89S51芯片6
3.3.274LS164芯片9
3.3.374HC04输出信号与信号灯10
3.4LED数码管显示10
3.5交通灯控制线路图12
4交通灯系统软件设计14
4.1程序设计流程图14
4.2延时的设定15
4.2.1计数器初值计算15
4.2.2相应程序代码16
4.3程序的主控制循环调用17
4.4对现有程序的扩充18
5实验调试19
5.1实验平台19
5.2实验步骤19
5.2.1编写程序代码19
5.2.2调试出现的问题及解决过程19
5.3仿真调试21
5.4实物功能图24
6结束语26
参考文献27
致谢28
附录A29
附录B34
1前言
今天,红绿灯安装在各个路口上,已经成为疏导交通车辆最常见和最有效的手段。
但这一技术在19世纪就已经出现了。
1914年,电气启动的交通灯出现在美国。
这种交通灯由红绿黄三色圆形的投光器组成,安装在纽约市5号大街的一座高塔上。
红灯亮表示“停止”,绿灯亮表示“通行”。
信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。
绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。
左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行道的行人优先通行。
红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。
黄灯是警告信号,面对黄灯的车辆不能越过停车线,如果车辆已十分接近停车线而不能安全停车时可以进入交叉路口[1]。
当今时代是一个自动化时代,交通灯控制等很多行业的设备都与单片机密切相关。
因此,一个好的交通灯控制系统,将给道路拥挤、违章控制等交通管理方面带来技术革新。
随着大规模集成电路和单片机技术的迅速发展,以及人工智能在控制技术方面的广泛运用,交通灯智能控制是现代交通管理发展的一个主流方向。
中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的作用。
智能交通灯的管理比重修一条马路无论在经济、交通运行速率上都有很好的效益,而且更加节约资源,使交管人员有更多的精力投入到管理整个城市交通控制,带来更大的经济和社会效益,为创造美好的城市交通形象发挥更多的作用。
2交通管理方案论证
2.1设计任务
东西、南北两干道交于一个十字路口,各干道有一组红、左转绿、绿三个指示灯指挥车辆和行人安全通行。
红灯亮表示禁止通行,绿灯亮表示允许通行。
红灯的设计时间为40秒,绿灯及左转绿灯的计时时间各为20秒。
本系统利用单片机的定时器定时,控制十字路口的红绿灯交替点亮和熄灭,并且用LED数码管显示时间。
把设计任务细化为四个状态,其对应状态,如图2.1所示:
东西道为40秒红灯,南北道为20秒绿灯
东西道为20秒红灯,南北道为20秒左转绿灯
东西道为20秒绿灯,南北道为40秒红灯
东西道为20秒左转绿灯,南北道为20秒红灯
图2.1状态转换图
整个交通灯设计任务由四个状态组成,可以用程序设计实现。
2.2方案选择
方案一:
采用分模块设计思想,程序设计实现的基本思想是一个计数器,选用一个单片机,其内部为一个十六位计数器,模块化后,通过设置和程序清除来实现状态的转换,由于每一个模块的计数都不相同,各个模块是以预置数和计数器计数共同来实现的,所以要考虑增加一个置数模块。
置数模块的主要功能为:
对不同的状态输入要产生相应状态的下一个状态的预置数,如表2.1中东西道和南北道,分别为主干道的置数选择和次干道的置数选择。
以主干道为例,简述其设计思想。
如前分析,已经确定该系统有四个状态,而置数子模块要将下一状态的预置数准备好,所以很容易得到主干道的置数表,如表2.1所示:
表2.1置数表
状态
主干道预置数
次干道预置数
00
40
20
01
20
20(左转)
10
20
40
11
20(左转)
20
通过表2.1得出可以利用程序循环的方法设计该模块,主要思想是通过数据判断指令和跳转指令实现,由主控制器计时和中断产生的四个状态去译码,从而得到不同的输出,也就是预置数。
由上分析得出可以用一个计数器和跳转指令去完成预置数,而红绿灯的显示也是一样,由状态分析可以得出红绿灯的变化表,如表2.2所示:
表2.2红绿灯变化表
状态
主干道灯显示
次干道灯显示
00
红灯
绿灯
01
红灯
左转绿灯
10
绿灯
红灯
11
左转绿灯
红灯
通过表2.2可以得出用组合电路能实现该功能。
使用数据选择器的思想,在本系统中,直接通过门电路的译码。
接下来就是计数模块,它主要的功能为:
要从预置数开始递减计数,一个状态结束,通过判断,通知主控制模块,使之进入下一模块。
还有一个必须考虑到的就是预置数必须在下一个状态来之前准备好,而红绿灯的状态变化,必须和计数状态同步,于是引起预置数变化的程序要超前于系统本身的状态变化。
所以,系统中的两个状态转换时,在上一状态结束时设置预置数,而控制红绿灯的是随着系统本身状态的变化而变化,体现在要有两组电路去判断符合的状态。
方案二:
方案二设计状态的转换表,如表2.3所示:
表2.3状态转换表
状态
主干道灯显示
次干道灯显示
00(15S)
红灯
绿灯
01(05S)
红灯
黄灯
10(15S)
绿灯
红灯
11(05S)
黄灯
红灯
本方案分三步:
(1)要建立三路信号灯的控制系统,本设计采用7408芯片通过组合逻辑控制三路灯的显示关系。
(2)建立显示控制系统,本设计采用74190芯片倒计时控制,每个方向用两片来相连实现。
另外使用74153芯片,因为设置的时间末位均为5,所以只要用一片74153对高位置位,将低位的初值预置锁定为5,而高位则根据需要由反馈部分提供预置值。
(3)建立反馈和细节连接部分,本部分主要解决显示和灯控的同步问题。
本系统采用倒计时系统减为0,如当系统减为0时通过两个D触发器得到两个变量,也就是前面分析中的状态,通过它的变化可以得到不同的逻辑关系来驱动74153控制哪组灯亮(对应关系如表2.3所示),另外它还要同步反馈到显示系统的置数环节。
综上所述,方案一采用了分模块设计,在设计上显得较简单,设计纯朴,便于测试。
方案二采用的是一般设计,首先将许多逻辑关系简化到极点,而后将其一起集成用较少的芯片去完成所需功能。
相比之下方案一有较强的可读性和较强的可修改性。
因此,交通灯控制系统最终的设计应该使用方案一所述的分模块化设计。
对工程设计人员来说,采取分模块设计的产品无论从维修上还是升级上考虑都有好处。
3交通灯系统硬件设计
3.1单片机概述
单片机是由运算器、控制器、存储器、输入设备以及输出设备共五个基本部分组成。
它把运算器、控制器、少量的存储器、最基本的输入输出口电路、串行口电路、中断和定时电路等都集成在一个尺寸有限的芯片上。
通常,单片机由单个集成电路芯片构成,内部包含有计算机的基本功能部件:
中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可以构成一个单片机控制系统。
单片机经过1、2、3、3代的发展,目前正朝着高性能和多品种方向发展。
它的CPU功能在增强,内部资源在增多,引脚越来越多功能化。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
它主要是作为控制部分的核心部件。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师[2]。
3.2系统构成
本系统的主要元件包括:
电路板一块,AT89S51单片机一片,74LS164芯片八片,七段数码管八个。
74HC04反向器一片,发光二极管12个(8个绿的,4个红的用于交通控制),一个按键(用于控制返回)。
交通灯系统的结构框图,如图3.1所示:
图3.1系统结构框图
系统各部分工作:
(1)程序设置初始时间,通过AT89S51单片机内部相应寄存器来实现。
(2)由AT89S51单片机的定时器每秒钟通过P3.0口向74LS164的数据端口送信息,由74LS164的输出口显示红灯、绿灯、左转绿灯的点亮时间情况;由AT89S51的P1.0、P1.1、P1.2、P1.3口显示每个灯的点亮情况。
(3)AT89S51通过程序设置各个信号灯的点亮时间,通过程序设置红灯、绿灯、左转绿灯的时间依次为40秒、20秒、20秒循环,由AT89S51的P3口向74LS164的数据口输出。
(4)74LS164的A、B口用于串行输出时间位,经过串并转换送到七段数码管的八个引脚,而P1口用于输出控制信号,通过74HC04反向器实现控制各个灯的情况。
它采用5V的直流电来驱动二极管。
(5)AT89S51本身集成了看门狗指令,当系统出现异常,看门狗将发出溢出中断。
通过专用端口输出,引起RESET复位信号复位系统。
3.3芯片选择与介绍
3.3.1AT89S51芯片
选用的AT89S51与同系列的AT89C51在功能上有明显的提高,最突出是的可以实
现在线的编程。
用于实现系统的总的控制。
其主要功能列举如下:
1、为一般控制应用的8位单片机;
2、晶片内部具有时钟振荡器(传统最高工作频率可至33MHz);
3、内部程式存储器(ROM)为4KB;
4、内部数据存储器(RAM)为128B;
5、外部程序存储器可扩充至64KB;
6、外部数据存储器可扩充至64KB;
7、32条双向输入输出线,且每条均可以单独做I/O的控制;
8、5个中断向量源;
9、2组独立的16位定时器;
10、1个全双工串行通信端口;
11、8751及8752单芯片具有数据保密的功能;
12、单芯片提供位逻辑运算指令。
AT89S51各引脚功能介绍,如图3.2所示:
图3.2AT89S51引脚图
VCC:
AT89S51电源正端输入,接+5V。
VSS:
电源地端。
XTAL1:
单芯片系统时钟的反向放大器输入端。
XTAL2:
单片机系统时钟的反向放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英振荡晶体系统就可以运作了,此外可以在两个引脚与地之间加入一个20
的小电容,可以使系统更稳定,避免噪声干扰而死机。
RESET:
AT89S51的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器的内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。
EA/Vpp:
"EA"为英文"ExternalAccess"的缩写,表示存取外部程序代码之意,低电平工作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。
因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。
如果是使用8751内部程序空间时,此引脚要接成高电平。
此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(Vpp)。
ALE/PROG:
ALE是英文"AddressLatchEnable"的缩写,表示地址锁存器启用信号。
AT89S51可以利用这个引脚来触发外部的8位锁存器(如74LS373),将端口0的地址总线(A0~A7)锁进锁存器中,因为AT89S51是以多工的方式送出地址及数据。
平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6,因此可以用来驱动其他周边晶片的输入。
此外在烧录8751程序代码时,此引脚会被当成程序规划的特殊功能来使用。
PSEN:
此为"ProgramStoreEnable"的缩写,其意为程序储存启用,当8051被设成为读取外部程序代码工作模式时(EA=0),会送出此信号以便取得程序代码,通常这支脚是接到EPROM的OE脚。
AT89S51可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用64K的地址范围。
PORT0(P0.0~P0.7):
端口0是一个8位宽的开路电极(OpenDrain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。
其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当作I/O用时可以推动8个LS的TTL负载。
如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0~A7)及数据总线(D0~D7)。
设计者必须外加一个锁存器将端口0送出的地址锁住成为A0~A7,再配合端口2所送出的A8~A15合成一组完整的16位地址总线,而定位地址到64K的外部存储器空间。
PORT2(P2.0~P2.7):
端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。
P2除了当作一般I/O端口使用外,若是在AT89S51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这个时候P2便不能当作I/O来使用了。
PORT1(P1.0~P1.7):
端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LS的TTL负载,同样地,若将端口1的输出设为高电平,便是由此端口来输入数据。
如果是使用8052或是8032的话,P1.0又当作定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发引脚。
PORT3(P3.0~P3.7):
端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、定时计数控制及外部数据存储器内容的读取或写入控制等功能。
其引脚分配如下:
P3.0:
RXD,串行通信输入。
P3.1:
TXD,串行通信输出。
P3.2:
INT0,外部中断0输入。
P3.3:
INT1,外部中断1输入。
P3.4:
T0,计时计数器0输入。
P3.5:
T1,计时计数器1输入。
P3.6:
WR:
外部数据存储器的写入信号。
P3.7:
RD,外部数据存储器的读取信号[3]。
3.3.274LS164芯片
74LS164为串行输入、并行输出移位寄存器,也是单向总线驱动器。
74LS164在串行口为方式0状态,即工作在移位寄存器方式,波特率为振荡频率的十二分之一。
器件执行任何一条将SBUF作为目的寄存器的命令时,数据便开始从RXD端发送。
在写信号有效时,相隔一个机器周期后发送控制端SEND有效,即允许RXD发送数据,同时,允许从TXD端输出移位脉冲。
第一帧(8位)数据发送完毕时,各个控制信号均恢复原状态,只有TI保持高电平,呈中断申请状态。
第一个74LS164把第一帧数据并行输出,LED1显示该数据。
然后,用软件将TI清0,发送第二帧数据。
第二帧数据发送完毕,LED1显示第二帧数据,第一帧数据串行输入给第二个74LS164,LED2显示第一帧数据。
依此类推,直到把数据区内所有数据发送出去。
应该注意,数据全部发送完后,第一帧数据在最后一个LED显示。
由于TXD端最多可以驱动8个TTL门[4]。
3.3.374HC04输出信号与信号灯
74HC04主要对信号起了反向作用。
要使行人能看见信号灯的情况,必须把P1口输出的信号进行放大,这里我们用74HC04反向器,当极性为高电平时晶闸管导通,该支路指示灯亮;当极性为低电平时晶闸管关断,该支路指示灯灭。
LED灯的显示原理:
通过同名管脚上所加电平的高低来控制发光二极管是否点亮。
七段数码管的显示及与74LS164的连接显示不同的数字如SP,g,f,e,d,c,b,a管角上加上0FEH,所以SP上为0伏时不亮,其余为TTL高电平时全亮,则显示为8[5]。
数字0-9与16进制的转换驱动代码表如表3.1所示:
表3.1驱动代码表
显示数值
abcdefgdop
驱动代码(16进制)
0
11111111
0FCH
1
00000110
60H
2
11011010
0DAH
3
11110010
0F2H
4
01100110
66H
5
10110110
0B6H
6
10111110
0BEH
7
11100000
0E0H
8
11111110
0FEH
9
11110110
0F6H
3.4LED数码管显示
考虑到成本问题,显示电路采用常用的74LS164驱动LED比较实用(74LS164是TTL八位串行入/并行输出移位寄存器)。
串入并出移位寄存器,在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交通灯 论文 参考