基于单片机的交通灯控制器的研究与设计.doc

基于MSC-51单片机控制的交通灯控制器的设计

收藏

压缩包内文档预览:(预览前20页/共33页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:6699550    类型:共享资源    大小:189.86KB    格式:RAR    上传时间:2017-12-19 上传人:专业****设计 IP属地:江苏
30
积分
关 键 词:
定做请加QQ: 1060741974 参考网站 http://www.bysj360.com/ http://www.bylw520.net/ http://www.bysj360.com/cat.asp?id=25
资源描述:
基于MSC-51单片机控制的交通灯控制器的设计,定做请加QQ:,1060741974, ,参考网站 ,/, ,/, ,/cat.asp?id=25
内容简介:
重庆三峡学院毕业论文论文题目:基于单片机的交通灯控制器的研究与设计专业:计算机科学与技术年级:2001级学号:42106042作者:唐波指导教师:蒋万君(副教授)完成时间:2005年6月目录摘要IAbstractII1引言12单片机概述13芯片的选者与简介13.1MSC-51芯片简介13.28255芯片简介43.3其他器件54控制器硬件的设计54.1交通管理方案论证54.2系统硬件设计.64.2.1交通灯系统框图.64.2.2交通灯控制线路图74.2.3系统工作原理.85控制器的软件设计85.1每秒钟的设定85.2计数器的硬件延时.85.2.1计数器初值计算85.2.2计算公式85.2.3设置1秒的方法85.2.4相应代码程序95.3软件延时95.4时间及信号灯的显示.105.4.18031并行口扩展105.4.2显示原理.105.4.38255输出信号的放大.105.4.48255输出信号与信号灯的连接115.4.58255与8031的连接115.5程序设计115.5.1流程图如图所示.115.5.2程序源代码.126看门狗硬件电路设计166.1软件看门狗.176.2硬件看门狗.177单片机开发系统198实验平台208.1实验平台.208.2实验步骤.208.3系统编程信息.208.3.1系统内存分配和I/0接口使用.218.3.2实验程序原代码.219结论.2610致谢.26参考文献.27I基于单片机的交通灯控制器的设计与实现唐波(重庆三峡学院数学与计算机科学学院计算机科学与技术专业教育专业2001级,重庆万州404000)摘要:近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月异更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MSC-51系列单片机Intel8031和可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制器,实现了能根据实际车流量通过8031芯片的P1口设置红、绿灯燃亮时间的功能;为了系统稳定可靠采用了MAX629“看门狗”芯片,避免了系统因为死机而停止工作的情况发生;显示时间直接通过8255的PA、PB口输出;交通灯信号通过PC口输出;交通灯的点亮采用VT双向晶闸管来控制,直接采用220V交流电源驱动,系统实用性强、操作简单、扩展性强。关键词:单片机交通灯控制器设计实现IIBasedonthedesignofthecontroleroftrafficlightsofsingleflatmachinewithrealizationTANGBo(Grade2001,ComputerScienceandTechnologyEducationaldirection,CollegeofMathematicsandComputerScience,ChongqingThreeGorgesUniversity,Wanzhou,Chongqing404000)Abstract:Inrecentyearsalongwithscienceandtechnologydevelopfast,theapplicationofsingleflatmachineismovingtowardsthoroughcontinuously,atthesametimedrivetraditionalcontroldetectiondaythebenefitofnewmoonupdate.Intheonlyflatmachineapplicationsystemoftheautomaticcontrolanddetectionofrealtime,onlyflatmachineisoftentouseasakeyparts,onlysingleflatmachineaspectknowledgeisinsufficient,returnshouldbasisspecificlyhardwarestructure,aswellasaimatthesoftwarethatappliesobjectcharacteristicspecificlycombination,perfect.Crossroadsvehiclewearcomb,pedestrianXiRang,turntobeallrightlane,personpedestriansays,methodically.Doyouleanwhattorealizethisorderlyorder?Whatleanisthattheautomaticcommandsystemoftrafficsignallamp.Trafficsignallampcontrolwayismany.ThissystemadoptsMSC-51seriesonlyflatmachineIntel8031withbutprogrammingparallelinterfacechip8255AofI/Oiscentraldevicethedesigncontroleroftrafficlights,haverealizedcanmeasureaccordingtoactualwagonflowtheP1installationbonusandgreenlightthatpassesthrough8031chipsburntolightthefunctionoftime;ForsystemstabilizereliablehaveadoptedMAX629thechipdoglooksafterthehouse,haveavoidedthatsystemstopsworkingconditionbecauseofhaltingtooccur;ShowthattimeisdirectlyexportedthroughPBandPAof8255;ThesignaloftrafficlightsisexportedthroughusuallyPCmouth;ThepointoftrafficlightslighttoadoptVTtwo-wayJingfloodgatepipecometocontrol,directlydrivewiththealternatingcurrentsourceof220V,practicalityisstrong,operatingissimple.Keywords:OnlyflatmachineTrafficlightsControlerDesignRealize2001级计算科学与技术(教育)专业毕业论文第1页共27页1引言再今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。1914年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。2单片机概述单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。3芯片的选择与简介3.1MSC-51芯片简介MCS-51单片机内部结构8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:唐波:基于单片机的交通灯控制器的研究与设计第2页共27页中央处理器:中央处理器(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。2001级计算科学与技术(教育)专业毕业论文第3页共27页图2MCS-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图3Pin9:RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-唐波:基于单片机的交通灯控制器的研究与设计第4页共27页R7)的状态,8051的初始态。8051的复位方式可以是自动复位,也可以是手动复位,见下图4。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。图4Pin30: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的编程电压。3.28255芯片简介8255可编程并行接口芯片简介:8255可编程并行接口芯片有三个输入输出端口,即A口、B口和C口,对应于引脚PA7PA0、PB7PB0和PC7PC0。其内部还有一个控制寄存器,即控制口。通常A口、B口作为输入输出的数据端口。C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。它们分别与端口A配合使用,可以用作控制信号输出或作为状态信号输入。8255可编程并行接口芯片方式控制字格式说明:8255有两种控制命令字;一个是方式选择控制字;另一个是C口按位置位复位控制字。其中C口按位置位复位控制字方式使用较为繁难,说明也较冗长,故在此不作叙述,需要时用户可自行查找有关资料。方式控制字格式说明如表1:表1D7:设定工作方式标志,1有效。D6、D5:A口方式选择D7D6D5D4D3D2D1D02001级计算科学与技术(教育)专业毕业论文第5页共27页00方式001方式11方式2D4:A口功能(1=输入,0=输出)D3:C口高4位功能(1=输入,0=输出)D2:B口方式选择(0=方式0,1=方式1)D1:B口功能(1=输入,0=输出)D0:C口低4位功能(1=输入,0=输出)8255可编程并行接口芯片工作方式说明:方式0:基本输入输出方式。适用于三个端口中的任何一个。每一个端口都可以用作输入或输出。输出可被锁存,输入不能锁存。方式1:选通输入输出方式。这时A口或B口的8位外设线用作输入或输出,C口的4条线中三条用作数据传输的联络信号和中断请求信号。方式2:双向总线方式。只有A口具备双向总线方式,8位外设线用作输入或输出,此时C口的5条线用作通讯联络信号和中断请求信号。3.3其他器件数共阴极的七段数码管。如图5图5VT为双向晶闸管,当门极为高电平时晶闸管导通,该支路指示灯亮;当门极为低电平时晶闸管关断,该支路指示灯灭。4控制器硬件系统设计4.1交通管理的方案论证A、B两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为A、B两干道的公共停车时间。设A道比B道的车流量大,指示灯燃亮的方案如表2。唐波:基于单片机的交通灯控制器的研究与设计第6页共27页表2此表2说明:(1)当为黄灯时A、B两道同时为黄灯;以提示行人或车辆下一个灯色即将到来时间3秒。(2)当A到为红灯,A道车辆禁止通行,A道行人可通过;B道为绿灯,B道车辆通过,行人禁止通行。时间为60秒。(3)当A道绿灯,A道车辆通行;B道为红灯,B道车辆禁止通过,行人通行。时间为80秒。A道车流大通行时间长(4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。(5)此表可根据车流量动态设定4.2系统硬件设计选用设备8031单片机一片选用设备:8031弹片机一片,8255并行通用接口芯片一片,74LS07两片,MAX692看门狗一片,共阴极的七段数码管两个双向晶闸管若干,7805三端稳压电源一个,红、黄、绿交通灯各两个,开关键盘、连线若干。421系统总框图如下:图6360380360A道黄灯亮红灯亮黄灯亮绿灯亮黄灯亮红灯亮B道黄灯亮绿灯亮黄灯亮红灯亮黄灯亮绿灯亮2001级计算科学与技术(教育)专业毕业论文第7页共27页422交通灯控制线路图唐波:基于单片机的交通灯控制器的研究与设计第8页共27页423系统工作原理(1)开关键盘输入交通灯初始时间,通过8031单片机P1输入到系统(2)由8031单片机的定时器每秒钟通过P0口向8255的数据口送信息,由8255的PC口显示红、绿、黄灯的燃亮情况;由8255的PA、PB口显示每个灯的燃亮时间。(3)8031通过设置各个信号等的燃亮时间、通过8031设置,黄、绿、红时间依次为3秒、60秒、3秒、80秒、3秒循环由8031的P0口向8255的数据口输出。(4)通过8031单片机的P3.0位来控制系统是工作或设置初值,当.牌位0就对系统进行初始化,为1系统就开始工作。(5)8255口用于输出时间的个位,口用于输出时间的十位,由747S07驱动芯片驱动;而口用于输出各个灯的情况,它的末段连接双向晶闸管采用220V交流电压驱动。(6)在交通控制程序中加入看门狗指令,当系统出现异常看门狗将发出溢出中断。通过专用端口输入到MAX692看门狗芯片的WDI引角引起RESET复位信号复位系统控制器的软件设计5.1每秒钟的设定延时方法可以有两种一中是利用MCS-51内部定时器才生溢出中断来确定1秒的时间,另一种是采用软延时的方法。5.2计数器硬件延时5.2.1计数器初值计算定时器工作时必须给计数器送计数器初值,这个值是送到TH和TL中的。他是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值设定为C和计数初值设定为TC可得到如下计算通式:TC=M-C式中,M为计数器摸值,该值和计数器工作方式有关。在方式0时M为213;在方式1时M的值为216;在方式2和3为285.2.2计算公式T=(MTC)T计数或T计数T计数是单片机时钟周期的倍;为定时初值如单片机的主脉冲频率为,经过分频方式213微秒毫秒方式216微秒毫秒显然秒钟已经超过了计数器的最大定时间,所以我们只有采用定时器和软件相结合的办法才能解决这个问题5.2.3秒的方法我们采用在主程序中设定一个初值为的软件计数器和使定时毫秒这样每当到毫秒时就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,先使软件计数器减,然后判断它是否为零。为零表示秒已到可以返回到输出时2001级计算科学与技术(教育)专业毕业论文第9页共27页间显示程序。5.2.4相应程序代码()主程序定时器需定时毫秒,故工作于方式。初值:T计数ms/1us=15536=3CBOHORG1000HSTART:MOVTMOD,#01H;令为定时器方式MOVTH0,#3CH;装入定时器初值MOVTL0,#BOH;MOVIE,#82H;开中断SEBTTO;启动计数器MOVRO,#14H;软件计数器赋初值LOOP:SJMP$;等待中断()中断服务子程序:DJNZ,AJMPTIME;跳转到时间及信号灯显示子程序DJNZ:,;恢复值MOVTH0,#3CH;重装入定时器初值MOVTL0,#BOH;MOVIE,#82H5.3软件延时MCS-51的工作频率为2-12MHZ,我们选用的8031单片机的工作频率为6MHZ。机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/6M)=2us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间。具体的延时程序分析:DELAY:MOVR4,#08H延时1秒子程序DE2:LCALLDELAY1DJNZR4,DE2RETDELAY1:MOVR6,#0延时125ms子程序MOVR5,#0DE1:DJNZR5,$唐波:基于单片机的交通灯控制器的研究与设计第10页共27页DJNZR6,DE1RETMOVRN,#DATA字节数数为2机器周期数为1所以此指令的执行时间为2msDELAY1为一个双重循坏循环次数为256*256=65536所以延时时间=65536*2=131072us约为125usDELAYR4设置的初值为8主延时程序循环8次,所以125us*8=1秒由于单片机的运行速度很快其他的指令执行时间可以忽略不计。5.4时间及信号灯的显示5.4.18031并行口的扩展8031虽然有4个8位I/O端口,但真正能提供借用的只有P1口,因为P2和P0口通常用于传送外部传送地址和数据,P3口也有它的第二功能。因此,8031通常需要扩展。由于我们用外输出时间时,时间的个位、十位、信号灯的显示都要用到一个I/O端口,显然8031的端口是不够,需要扩展。扩展的方法有两种:(1)借用外部RAM地址来扩展I/O端口;(2)采用I/O接口新片来扩充。,我们用8255并行接口信片来扩展I/O端口。5.4.2显示原理:当定时器定时为1秒,时程序跳转到时间显示及信号灯显示子程序,它将依次显示信号灯时间,同时一直显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个时间,这样依次把所有的灯色的时间显示完后在重新给时间计数器赋初值,重新进入循环。5.4.38255输出信号的放大:要使行人能看见信号灯的情况,必须把8255输出的信号进行放大,这里我们用VT为双向晶闸管,当门极为高电平时晶闸管导通,该支路指示灯亮;当门极为低电平时关断,该支路指示灯灭。如图2我们用连接7段数码管的方法来连接晶闸管5.4.48255输出信号与信号灯的连接:LED灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点量而显示不同的字形如SP,g,f,e,d,c,b,a管角上加上所以上为伏,不亮其余为高电平,全亮则显示为采用共阴级连接:其中PA0PB0-a,PA1PB1-b,PA2PB2-c,PA3PB3-d,PA4PB4-e,PA5PB5-f,2001级计算科学与技术(教育)专业毕业论文第11页共27页PA6PB6-gPA7PB7-SP接地显示数值dopgfedcba驱动代码(16进制)0001111113FH10000011006H2010110115BH3010011114FH40110011066H5011011006DH6011111007DH70000011107H8011111117FH表3驱动代码表5.4.58255与8031的连接:用8031的P0口的p0.7连接8255的片选信号cs我们用8031的地址采用全译码方式,当p0.7=0时片选有效,其他无效,p0.1p0.1用于选择8255端口P0.7p0.6p0.5p0.4p0.3p0.2P0.1P0.0A7A6A5A4A3A2A1A01XXXXX0000H为8255的PA口1XXXXX0101H为8255的PB口1XXXXX1002H为8255的PC口1XXXXX1103H为8255的控制口由于8031是分时对8255和储存器进行访问所以8031的P0口不会发生冲突5.5程序设计5.5.1流程图如图所示开始初始化等待键盘事件键盘事件处理显示程序处理唐波:基于单片机的交通灯控制器的研究与设计第12页共27页图8图9程序流程图5.5.2程序源代码R4存放黄灯时间303H(此时间可以动态设定)R5存放红灯时间603CHR6存放绿灯时间8050HPC0显示黄灯信号PC1显示红灯信号PC2显示黄灯信号8255工作于方式02001级计算科学与技术(教育)专业毕业论文第13页共27页8255PA、PB、PC口输出PC控制字为10000000B(80H)程序源代码:ORG0000HLJMPMAINORG0100HMAIN:MOVR1,#03H初始化8255MOVA,#80HMOVXR1,AAGAIN:MOVP3,#80H设置初值MOVA,P3JBACC.7,NEXT0AGAIN1:MOVP3,#40HMOVA,P3JBACC.6,REDMOVP3,#0FHMOVA,P3ANLA,#0FHMOVR3,AAJMPAGAIN1RED:MOVP3,#0FHMOVA,P3ANLA,#0FHMOVR2,AAJMPAGAIN唐波:基于单片机的交通灯控制器的研究与设计第14页共27页NEXT0:MOVR1,#03HNEXT1:MOVDPTR,#TAB显示黄灯个位MOVA,R1MOVCA,A+DPTRMOVR1,#00HMOVXR1,AMOVR1,#OMOVDPTR,#TAB显示黄灯十位MOVA,R0MOVCA,A+DPTRMOVR1,#01HMOVXR1,AMOVDPTR,#0C62H显示黄灯信号MOVA,#00HLCALL0F4E0HACALLDELAY延时1秒DJNZR0,NEXT1MOVA,R3MOVR0,ANEXT2:MOVDPTR,#TAB显示红灯个位MOVA,R0MOVCA,A+DPTRMOVR1,#00HMOVXR1,A2001级计算科学与技术(教育)专业毕业论文第15页共27页MOVDPTR,#TAB显示红灯十位MOVA,R0MOVCA,A+DPTRMOVR1,#01HMOVA,R0MOVXR1,R0MOVR1,#02H显示红灯信号MOVA,#02HMOVXR1,AACALLDELAY延时1秒DJNZR0,NEXT2MOVA,R2MOVR0,ANEXT3:MOVDPTR,#TAB显示绿灯个位MOVA,R0MOVCA,A+DPTRMOVR1,#00HMOVXR1,R0MOVDPTR,#TAB显示绿灯十位MOVA,R0MOVCA,A+DPTRMOVR1,#01HMOVA,R0MOVXR1,R0唐波:基于单片机的交通灯控制器的研究与设计第16页共27页MOVR1,#02H显示绿灯信号MOVA,#02HMOVXR1,AACALLDELAY延时1秒DJNZR0,NEXT3AJMPNEXT0DELAY:MOVR4,#08H延时1秒子程序DE2:LCALLDELAY1DJNZR4,DE2RETDELAY1:MOVR6,#0MOVR5,#0DE1:DJNZR5,$DJNZR6,DE1RETTAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H驱动代码表END6看门狗硬件电路由于单片机自身的抗干扰能力比较差,尤其在一些条件比较恶劣、噪声大的场合,常会出现单片机因为受外界干扰而导致死机的现象,造成系统不能正常工作。设置看门狗是为了防止单片机死机、提高单片机系统抗干扰性的一种重要途径。一个完整的单片机应用系统应该是一个软、硬件的结合体,在系统正常工作时,会受到各种外界干扰因素的影响。这种外界干扰轻者导致系统内部数据出错,重者将严重影响程序的运行。2001级计算科学与技术(教育)专业毕业论文第17页共27页因此单片机应用系统的开发一定要考虑系统可靠性的设计,以满足系统在现场苛刻环境下的正常运行,而“看门狗”则是系统可靠性设计的重要一环。在一个单片机应用系统中,所谓的“看门狗”是指在系统设计中通过软件或硬件方式在一定的周期内监控单片机或其他CPU的运行情况。如果在规定的时间内没有收到来自单片机或其他CPU的触发信号,则系统会强制复位,以保证系统在受到干扰时仍能够维持正常的工作状态。在单片机系统中,看门狗的设计一般采用硬件和软件结合两种方式。6.1软件看门狗软件看门狗是利用单片机片内闲置的定时器/计数器单元作为看门狗,在单片机程序中适当的插入监控指令,当程序出现异常或进入死循环时,利用软件将程序计数器PC赋予初始值,强制性的使程序重新开始运行。使用软件看门狗的具体实现方法如下。(1)首先在初始化程序中设置好定时器/计数器的方式控制寄存器(TMOD)和定时时间的初值,并开中断。(2)根据定时器的定时时间,在主程序中按一定的间隔插入复位定时器的指令,既插入监控指令,两条指令间的时间间隔应该小于定时时间,否则看门狗将发生错误动作。(3)在定时器的中断服务程序中设置一条无条件转移指令,将程序计数器PC转移到初始化程序的入口。软件看门狗的最大特点是无须外加硬件电路,经济性好。当然,如果片内的定时器/计数器被占用,就需要寻求其他的设计方式了。6.2硬件看门狗专用硬件看门狗是指一些集成化的或集成在单片机内的专用看门狗电路,它实际上是一个特殊的定时器,当定时时间到时,发出溢出脉冲。从实现角度上看,该方式是一种软件与片外专用电路相结合的技术,硬件电路连接好后,在程序中适当地插入一些看门狗复位的指令,保证程序正常运行时看门狗不溢出。而当程序运行异常时,看门狗超时发出溢出脉冲,通过单片机的RESET引脚使单片机复位。这种方式中,看门狗能否可靠有效地工作,与硬件组成及软件的控制策略都有密切的关系。目前常用的集成看门狗电路很多,如MAX705708、MAX813L、X5043/5045等。看门狗电路可以分为内看门狗和外看门狗。看门狗电路是指看门狗的硬件电路包含在单片机内部,如Microchip的16C5x系列,MOTOROLA的68C05系列,51内核中比较典型的有Atmel公司的AT89C55WD、AT89S8252,Winbond公司的W77E58,SST公司的SST89C58以及Philips公司87系列的多种型号的单片机等。对于没有看门狗定时器的单片机或是认为内部看门狗不可靠时,可以采用外部看门狗定时器。外部看门狗电路既可以用专用看门狗芯片,也可由普通芯片实现。这里,以专用芯片MAX692作为外部看门狗的电路。MAX692是微系统监控电路芯片,具有后备电池切换、掉电判别、看门狗监控等功能。其封装和引脚说明如图10所示。唐波:基于单片机的交通灯控制器的研究与设计第18页共27页图10MAX692封装和引脚VOUTVBATTVCCRESETGNDWDIPFI/PFDVOUT:电源输出引脚。VCC:接电源引脚,电源供电3.05.5V。GND:接地。PFI:电池故障输入。/PFO:电池故障输出。WDI:监视器输入引脚。/RESET:复位输出引脚,低电平有效。VBATT:后备电池输入端。MAX692在本文的单片机系统中的具体使用方法和电路原理图如图11所示。MAX692电路原理图如图其中WDI是看门狗监测输入脚,接到CPU的一个专用I/O口或一个总线上。/RESET是复位信号输出脚,接到CPU的复位输入脚。MAX692的WDI定时周期是1.6s,复位脉冲宽度是200ms。如果WDI保持高或低超过看门狗定时周期(1.6s),/RESET端将发生200ms的负脉冲使CPU复位MAX692123456782001级计算科学与技术(教育)专业毕业论文第19页共27页图11MAX692电路原理图7单片机开发系统单片机开发系统实际上也是一种计算机系统,是专门用来开发单片机应用系统的一种工具,它通常由一台系统机、一个通用再线仿真器和一个通用编程器构成如图用户目标系统通用编程器终图12在主机上运行开发软件(编辑软件、调试软件)就可以输入、删除、编辑和运行用户程序,也可以把用户目标代码通过串口传送到通用再线仿真器。编程器可以对EPROM进行编程和效验,也可以在主机对编程器进行操作仿真器又称模拟器,主要用来帮助设计者验证设计的正确性。在硬件系统设计的各个层次都要终端硬盘机主机打印机通用再线仿真器唐波:基于单片机的交通灯控制器的研究与设计第20页共27页用到仿真器。在数字系统设计中,硬件系统由数字逻辑器件以及它们之间的互连来表示。仿真器的用途是确定系统的输入/输出关系,所采用的方法是把每一个数字逻辑器件映射为一个或几个进程,把整个系统映射为由进程互连构成的进程网络,这种由进程互连组成的网络就是设计的仿真模型。pD7810/11单片机开发系统介绍:它是一种带A/D功能、接口众多、运算能力强的新型单片机开发系统,填补了国内这个系列单片机开发的空白。本系统处于国内先进水平,并且具有结构合理、软件配套、资源保护好等一系列特点。本系统主要技术指标:内存32K,其中24K有停电保护功能。有双EPOM读写功能,用户并行接口三个,A/D转换器为8位8通道。能和IBM机进行通讯,通讯方式和目标多个,包括内存、键盘、显示器、打印机通讯。可对pD7811的内部ROM进行破译。在开发出来的多种软件,包括汇编、反汇编、仿真程序。本成果可应用于单片机系统开发、生产过程控制器开发、智能仪表开发、家用电器电脑化、计算机外部设备开发等。8实验平台8.1实验平台我们采用西安唐都科教以器公司的态度TDN86/51教学实验系统系统简介:开启计算机及实验平台,进入TDN的子目录,键入MD51,选择11-COM1口进入系统集成软件功能介绍:F1-EDIT编辑可以对源程序进行编辑F2-MASM汇编源程序F3-LINK连接成可执行文件.HEXF5-LOAD将可执行文件载入实验系统F6-SAVE保存F8-EXIT推出系统8.2实验步骤1.按照系统硬件连线图连好说明:(1)由于此实验平台只提供了一个显示灯接口所以我们只用了8255的PA口,只用了一个显示等和3个LED灯,8031的P1口的低4位用于给系统赋初值P1.7用于控制系统工作或初始化.P1.6用于控制是对红灯、绿进行初始化。2.把编好的程序进行汇编对输入单片机8031仿真器和对8255进行初始化。3通过平台上的开关来设定红、绿等的初值。4先使K7拨为0,观察LED灯和8段数码管的显示情况,拨K6为0设置拨K3、K2、K1、K0为0101即红灯时间为5秒,拨K6为1设置拨K3、K2、K1、K0为1001即绿灯时间为9秒,观察观察LED灯和8段数码管的显示与设置的时间和LED的颜色是否一致5不一致反复调试程序认识检查线路连接是否正确,直到与预定目的一致。2001级计算科学与技术(教育)专业毕业论文第21页共27页8.3系统编程信息8.3.1系统内存分配和I/0接口使用1程序空间(64k)地址使用情况芯片0000-3FFFH用户程序区U23RAM4000-DFFFH用户程序区E000-FFFFH系统保留ROM表52I/O接口使用用户程序区8255的端口地址如下表:信号线寄存器编址A口0C60HB口0C61HC口0C62HIOY3控制寄存器0C63H表6此I/O接口的地址不占51外部数据空间地址,所以使用时,需要通过特殊的调用功能程序来操纵这些接口电路,即:写数据到I/0口子程序调用为LCALL0F4E0H从某I/0端口读出数据为LCALL0F4E3H例如:将累加器A的数据12写入地址#0C63的I/O端口:MOVDPTR,#0C63HMOVA,#12HLCALL0F4E3H将地址#0C63的I/O端口状态读出到累加器A:MOVDPTR,#0C63HLCALL0F4E3H8.3.2实验程序原代码方法1.利用P1口输入开关量ORG0000HLJMPMAINORG0100HMAIN:MOVDPTR,#0C63HMOVA,#82HLCALL0F4E0H唐波:基于单片机的交通灯控制器的研究与设计第22页共27页AGAIN:MOVP1,#80HMOVA,P1JBACC.7,NEXT0AGAIN1:MOVP1,#40HMOVA,P1JBACC.6,REDMOVP1,#0FHMOVA,P1ANLA,#0FHMOVR3,AAJMPAGAIN1RED:MOVP1,#0FHMOVA,P1ANLA,#0FHMOVR2,AAJMPAGAINNEXT0:MOVR0,#03HNEXT1:MOVDPTR,#TABMOVA,R0MOVCA,A+DPTRMOVDPTR,#0C60HLCALL0F4E0HMOVDPTR,#0C62HMOVA,#00HLCALL0F4E0HACALLDELAYDJNZR0,NEXT1MOVA,R3MOVR0,ANEXT2:MOVDPTR,#TABMOVA,R0MOVCA,A+DPTRMOVDPTR,#0C60HLCALL0F4E0H2001级计算科学与技术(教育)专业毕
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:基于MSC-51单片机控制的交通灯控制器的设计
链接地址:https://www.renrendoc.com/p-6699550.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!