基于单片机控制的交通灯摘要:本系统采用MSC-51系列单片机以89C52为中心器件来设计交通灯控制器,实现了能通过89C52芯片设置红绿灯的亮和暗顺序;能通过中断的方式根据实际车流量在线修改交通灯亮暗的时间和在紧急情况时实现交通灯的转换;为了更有效的管理十字路口通行秩序,该芯片通过外接数码管的方法来显示各个方向通行的剩余时间,还通过外接ISD1420外部语音芯片来播放提醒群众通行秩序的录音.该系统具有很强的实用性和扩展性,操作简单能有效的实现各种功能.1.引言利用先进的信息技术改造城市交通系统已成为城市交通管理者的共识。目前,国内交通控制系统有两种:英国的SCOOT系统外公认较好的城市和澳大利亚的SCAT系统。随着城市化进程的加快,城市道路交通拥挤阻塞和环境问题已经成为倍受社会关注的热点问题之一。道路信号的交通控制方法是从管理角度缓解交通拥挤问题的有效措施之一。建立单个道路信号交叉口的智能型交通控制方法,使道路信号交叉口的信号,适时考虑道路中交通流变化的不确定性,使道路信号交叉口交通控制方案更具有自适应性,以减少车辆延误、提高通行能力。因此,积极探索新的、智能化、行之有效的交通控制方法十分必要。目前JK-C1型信号机是我国比较先进的机箱一体化的交通信号灯控制机。八十年代以来,世界一些发达国家纷纷投入智能交通系统(ITS)的研究与开发,并已形成二十一世纪交通运输系统的发展方向。美国科罗拉多州春天城在许多交通路口控制器中使用了MDS扩频无线电台,利用先进技术进行交通管理,成为同行之中的领先者。上述系统均以精确的数学模型或预设的方案为基础。而我国的城市交通尤其是中小城市的交通车辆种类繁多,随机性大、影响因素多,因而难以用精确的数学模型描述。我国目前各大、中城市都更新替换了原始的交通信号灯,即不仅有灯的转换,而且增加了计时系统,为广大群众行驶提供了方便。交通信号灯的设计方法很多,常用的是通过数字电路设计,大量集成块组合、连接,来实现的。它的特点是电路复杂、计时系统的可靠性差,显示效果的更改力差,没有可编程性。本文提供的是利用单片机控制的交通信号灯,它是在硬件电路基础上,通过软件编程即可完成的设计,它的特点是用软件设计替代了硬件设计,电路结构简单,提高了系统的可靠性和系统的性能与价格比。22单片机与芯片的概述2.1单片机的概述单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种.单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器.通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器,存储器和I/O接口电路等.因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统.单片机经过1,2,3,3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗.2.289C52的概述图2-1AT89C52管脚图2.3ISD1420语音芯片的概括美国信息存贮器件公司ISD1420单片语音录放电路采用在E2PROM中直接模拟量存贮技术(DAS),省去数字存贮器、数据转换及备用电源等外围电路,具有低功耗、零功率存贮信息、无需编辑开发机、高保真语音录放等特点。●采用直接模拟量存贮技术DAST(DirectAnalogStrorageTechnology),再现优质原声。●零功率信息存贮,省掉备用电源。●信息可保存10年以上,可反复录放达10万次之多。●语音固化无需专用编程或开发装置。●较强的选址能力,可把存储器分成160段来进行管理●具有自动省电模式,此时仅需0.5µA的保持电流。●单一电源供电。ISD1420电气特性如下:●工作电压VDD:5V.●静态电流ISTB:典型值0.85µA,最大值为2µA.●工作电流IOP:典型值15mA,最大值30mA.43.硬件介绍3.189C52硬件介绍Vcc:+5V电源电压。Vss:电路接地端。P0.0~P0.7:通道0,它是8位漏极开路的双向I/O通道,当扩展外部存贮器时,这也是低八位地址和数据总线,在编程校验期间,它输入和输出字节代码,通道0吸收/发出二个TTL负载。P1.0~P1.7:通道1是8位拟双向I/O通道,在编程和校验时,它发出低8位地址。通道1吸收/发出一个TTL负载。P2.0~P2.7:通道2是8位拟双向I/O通道,当访问外部存贮器时,用作高8位地址总线。通道2能吸收/发出一个TTL负载。P3.0~P3.7:通道3准双向I/O通道。通道3能吸收/发出一个TTL负载,P3通道的每一根线还有另一种功能:P3.0:RXD,串行输入口。P3.1:TXD,串行输出口。P3.2:INT0,外部中断0输入口。P3.3:INT1,外部中断1输入口。P3.4:T0,定时器/计数器0外部事件脉冲输入端。P3.5:T1,定时器/计数器1外部事件脉冲输入端P1.0—140--VCCP1.1—239--P0.0/AD0P1.2—338--P0.1/AD1P1.3—437--P0.2/AD2P1.4—536--P0.3/AD3P1.5—635--P0.4/AD4RTSP1.6—734--P0.5/AD5CTSP1.7—833--P0.6/AD6RST/Vpp--932--P0.7/AD7I/ORXD/P3.0—1031--EA/VPPDATATXD/P3.1—1130--ALE/PLOGINT0/P3.2—1229--PSENINT1/P3.3—1328--P2.7/A15T0/P3.4—1427--P2.6/A14SCLKT1/P3.5—1526--P2.5/A13WR/P3.6—1625--P2.4/A12RD/P3.7—1724--P2.3/A11XTAL1—1823--P2.2/A10XTAL2—1922--P2.1/A9VSS2021--P2.0/A8P3.6:WR,外部数据存贮器写脉冲。P3.7:RD,外部数据存贮器读脉冲。5Pin9:RESET/Vpd复位信号复用脚,当89C52通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位.初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清0.RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序.然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态.89C52的复位方式可以是自动复位,也可以是手动复位,RESET/Vpd还是一复用脚,Vcc掉电期间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失.·Pin30:ALE/当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节.而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出.更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲.如果单片机是EPROM,在编程其间,将用于输入编程脉冲.·Pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行.·Pin31:EA/Vpp程序存储器的内外部选通线,89C52和8751单片机,内置有8kB的程序存储器,当EA为高电平并且程序地址小于8kB时,读取内部程序存储器指令数据,而超过8kB地址则读取外部指令数据.如EA为低电平,则不管地址大小,一律读取外部程序存储器指令.显然,对内部无程序存储器的8031,EA端必须接地.在编程时,EA/Vpp脚还需加上21V的编程电压.3.2ISD1420硬件介绍VCCD:数字电路电源;VCCA:模拟电路电源;VSSD:数字地;VSSA:模拟地;SP+:喇叭(+);SP-:喇叭(-);SCLK:外接时钟(可选);ANAIN:模拟量输入;ANAOUT:模拟量输出;AGC:自动增益控制;MIC:驻极体话筒输入;MICREF:驻极体话筒参考输入;PLAYE:边沿触发放音;PLAYL:电平触发放音;REC:录音触发;RECLED:发光二极管接口;NC:空脚ISD1420地址输入端具有双重功能,根据地址中的A6、A7的电平状态决定A0~A7的功能。如果A6、A7有一个低电平,A0~A7输入全解释为地址位,作为起始地址用,此时地址线仅作为输入端,在操作过程中不能输出内部地址信息。根据PLAYE、PLAYL或REC的下降沿信号,地址输入被锁定。如果A6、7同为高电平时,它们即为模式位。使用操作模式有两点要注意:(1)所有初始操作都是从0地址开始。0地址是ISD1420存储空间的起始端,后面的操作可模拟模式的不同,而从不同的地址开始工作。当电路中录放音转换将进入省电状态时,地址计数器复位为60.(2)当PLAYE、PLAYL或REC变为低电平,同时A6、A7为高电平时,执行地址线所对应的操作模式。这种操作模式一直执行到下一个低电平控制输入信号出现为止。操作模式可以与微控制器一起使用,也可用硬件连线得到所需系统操作。A0:信息检索(仅用于放音工作状态)。不知道每个信息的实际地址,A0使操作者快速检索每条信息,A0每输入一个低脉冲,可使利内部地址计数器跳到下一个信息。这种模式仅用于放音工作,通常与A4操作同时应用。A1:用于删除EOM标志(仅用于录音工作状态)。A1可使录入的分段信息成为连续的信息,使用A1可删除掉每段中间信息捷的EOM标志,仅在所有信息后留一个EOM标志。当这个操作模式完成时,录放的所有信息就作为一个连续的信息放出。A3:用于循环重放信息(仅用于放音工作状态)。A3可使存于存储空间始端的信息自动地连续重放。一条信息可以完全占满存储空间,那么循环就可以众头至尾进行工作,并由始至终反复重放。A4:连续寻址。在正常操作中,当一个信息放完,遇到一个EOM标志时,地址计数器就会复位。A4可防止地址计数器复位,使得信息连续不断地放出。A2、A5未用。图4是ISD1420(1416)典型应用电路图,图中的“PLAYL”、“PLAYE”键只需选接一个即可,地址输入端A0~A7有效值范围为00000000~10011111,这表明最多可被划分为160个存贮单元,可录放多达160段语音信息。由A0~A7决定每段语音的起始地址,而起始地址又直接反映了录放的起始时间。其关系见公式:TQ=0.125s×(128A7+64A6+32A5+16A4+8A3+4A2+2A1+0)图3-1ISD1420典型应用电路74.设计思路传统的交通信号灯控制电路一般由数字电路构成,电路复杂、体积大、成本高。采用单片机控制交通信号,不仅可以简化电路结构、降低成本、减小体积,而且,根据主、支干道车流量发生变化的实际情况,通过拨动开关可以很方便地进行主、支干道通车时间的设定。有一条主干道和一条次干道的城市交叉路口,每边(共4边)都设置红、绿、黄色信号灯,红灯亮表示禁止通行;绿灯亮表示可以通过;在绿灯亮转变为红灯亮之前,先要求黄灯亮几秒钟,以便让交叉路口停车线以外的车辆停止运行,而交叉路口停车线以内的车辆快速通过交叉路口。每一边的红、绿、黄色信号灯亮的顺序是红→绿→黄→红→绿→黄……。主干道红灯亮时,对应次干道的绿灯亮、黄灯亮;主干道绿灯亮、黄灯亮时,对应次干道的红灯亮。这样就要求主干道红灯亮的时间,应等于次干道绿灯亮与黄灯亮的时间之和;同理,次干道红灯亮的时间,应等于主干道绿灯亮与黄灯亮的时间之和。有的时候,红、绿、黄色信号灯亮的时间,要求采用倒计时的方式,用十进制数字显示出来,以便司机和行人一目了然,心中有数。具体有以下功能:1、在十字路口东西南北各设置红、黄、绿三种信号灯,如图1所示。正常情况下,东西、南北方向轮流放行。当东西方向(A线)放行、南北方向(B线)禁行时,东西方向(A线)绿灯亮16秒,然后绿灯闪3下,黄灯亮1秒;当南北方向(B线)放行、东西方向(A线)禁行时,南北方向(B线)绿灯亮16秒,然后绿灯闪3下,黄灯亮1秒。如此