智能交通灯控制系统设计.doc

上传人:豆**** 文档编号:28531234 上传时间:2022-07-28 格式:DOC 页数:13 大小:265KB
返回 下载 相关 举报
智能交通灯控制系统设计.doc_第1页
第1页 / 共13页
智能交通灯控制系统设计.doc_第2页
第2页 / 共13页
点击查看更多>>
资源描述

《智能交通灯控制系统设计.doc》由会员分享,可在线阅读,更多相关《智能交通灯控制系统设计.doc(13页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、精品文档,仅供学习与交流,如有侵权请联系网站删除目 录1 智能交通灯系统总体介绍11.1设计要求11.2控制系统电路模块组成11.3系统设计基本原理11.3.1主体电路11.3.2软件功能实现22 系统硬件设计32.1主要器件简介32.1.1 AT89C51单片机简介32.1.2 8255芯片简介42.1.3 74LS373简介52.1.4 LED简介52.1.5 交通灯简介62.2器件选择63 系统软件设计73.1程序设计73.2交通灯及数码管显示设计83.3特殊情况控制电路83.4每秒钟设定103.5 120秒与60秒选择设计103.6 复位电路设计124 系统仿真13总结与体会15参看文

2、献16【精品文档】第 1 页1 智能交通灯系统总体介绍1.1设计要求智能交通灯控制系统的设计功能要求如下:该控制系统能控制东西南北四个路口的红黄绿灯正常工作。东西和南北方向分时准行和禁行,两垂直方向的准行时间均为60s或120s,可以进行控制转换,准行方向亮绿灯与禁行方向亮绿灯55s后,四个产品同时加亮一黄灯进行闪烁,以警告车辆及行人,准行方向与禁行方向即将改变。四个道口无用数码管显示六人行或禁行的剩余时间,在交通情况特殊情况下可以通过K1、K2、K3按键对交通灯进行控制。实现当有紧急情况发生时按下K1四个路口同时加亮黄灯进行闪灯(闪灯时间为5s)且倒计时显示关闭。黄灯闪烁完毕后四路口全变红灯

3、禁行,处理紧急情况。有某方向上车辆过多 ,可以使用K2、K3键控制东西或南北方向通行,另一方向禁行。按下控制键后先在四个路口加5s的黄灯闪烁。1.2控制系统电路模块组成端口扩展电路:74LS373,8255A。设计控制部分:主要由AT89C51单片机以及外部中断电路组成。设计显示部分:交通灯显示部分,LED数码显示部分,LED数码显示部分由七段数码显示管组成。振荡器、时钟电路、复位电路:这部分电路主要由AT89C51单片机和一些电容、晶振组成。1.3系统设计基本原理1.3.1主体电路交通灯自动控制模块。这部分电路主要由AT89C51单片机的I/O端口、定时器、外部中断扩展,端口扩展电路,复位电

4、路等组成。本设计先是从普通三色灯的指示开始进行设计,用PA口作为输出。程序的初始化是南北方向红灯,东西方向绿灯,由状态选择开关,55秒或115秒后四个路口黄灯闪亮5秒,然后南北方向红灯灯亮,东西方向绿灯亮。重复执行。倒计时用到定时器T0,用P1,P2,PB口作为LED的显示。为突发事件的处理,本设计主要用到外部中断EX0。用按钮作为中断信号,实际中可以接其它可以产生中断信号的信号源,如果电路出现异常,或突发紧急事件,可以应急改变交通顺序,然后用复位电路可以让交通恢复正常。1.3.2软件功能实现在每个状态子程序前面设计入口标志R7,通过查询R7的具体数值,可以知道现在程序的状态,从而完成每个状态

5、的显示,并且防止子程序调用出现紊乱,使显示出现错误。突发情况可以利用外部中断来控制交通灯的状态,然后通过复位电路让程序复位,完成对事件的处理。60秒和120秒的转换,可以通过查询P3.5的状态来实现,使程序初始化时完成两个状态的选择。2 系统硬件设计2.1主要器件简介2.1.1 AT89C51单片机简介图2-1 AT89C51单片机引脚图单片微机简称为单片机。它在一块芯片上集中成了中央处理单元CPU、随机存储器RAM、只读存储器ROM、定时/计数和多功能输入输出I/O口,如并行口I/O、串行口I/O和转换A/D等。就其组成而言,一块单片机就是一台计算机。其典型结构如图所示。由于它具有体积小、功

6、能强和价格便宜等优点,因而被广泛地应用于产品智能化和工业控制自动化上。AT89C51是MCS-51系列单片机的典型产品, AT89C51单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(RAM):AT89C51内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的

7、,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。 定时/计数器(ROM):AT89C51有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(I/O)口:AT89C51共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。全双工串行口:AT89C51内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统:AT89C51具备较完善的中断功能,有两个外中断、两

8、个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。时钟电路:AT89C51内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但AT89C51单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿结构。INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。2.1.2 8255芯片简介8255可编程并行接口芯片有三个输入输出端口,即A口、B口和C口,对应于引脚P

9、A7PA0、PB7PB0和PC7PC0。其内部还有一个控制寄存器,即控制口。通常A口、B口作为输入输出的数据端口。C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。它们分别与端口A配合使用,可以用作控制信号输出或作为状态信号输入。8255引脚图如图2-2所示。图2-2 8255A引脚图8255可编程并行接口芯片方式控制字格式说明:8255有两种控制命令字;一个是方式选择控制字;另一个是C口按位置位复位控制字。其中C口按位置位复位控制字方式使用。8255可编程并行接口芯片工作方式说明,方式0:基本输入输出方式。适用于三个端口中的任何一个。每一个端口

10、都可以用作输入或输出。输出可被锁存,输入不能锁存。方式1:选通输入输出方式。这时A口或B口的8位外设线用作输入或输出,C口的4条线中三条用作数据传输的联络信号和中断请求信号。方式2:双向总线方式。只有A口具备双向总线方式,8位外设线用作输入或输出,此时C口的5条线用作通讯联络信号和中断请求信号。2.1.3 74LS373简介74LS373 是一种带三态门的8D锁存器,其中:D0-D7为8个输入端,Q0-Q7为8个输出端,LE为数据打入端,当LE为“1”时,锁存器输出状态同输入状态;当LE由“1”变“0”时,数据打入锁存器偶尔为输出允许端:当=0时,三态门打开,当=1时,三态门关闭,输出高阻。7

11、4LS373引脚图如图2-3所示。图2-3 74LS373引脚图2.1.4 LED简介 LED显示器是由发光二极管构成的,常用的LED 显示器为8段,每一段对应一个发光二极管,这种显示器由共阴极和共阳极两种。共阴极LED 显示器的发光二极管的阴极连接在一起,当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。图2-4就是一个共阴极的数码管。为了使LED显示器显示不同的符号或数字,要把不同段的发光二极管点亮,这样就要为LED显示器提供代码,这些代码可使LED相应的段发光,从而显示不同的字符。图2-4 共阴极数码管外观图2.1.5 交通灯简介图2-5为交通灯器件,从左至右依次为红灯,

12、黄灯,绿灯。只要给引脚高电平,该引脚所对应的灯发光。图2-5 交通显示灯外观图2.2器件选择AT89C51单片机,8255A,74LS373,BUTTON按钮、三输入与门、LED发光二极管、发光二极管、红色共阴极数码管。系统硬件电路图见附录。3 系统软件设计3.1程序设计总电路功能介绍:由状态选择开关,55秒或115秒后四个路口黄灯闪亮5秒,然后南北方向红灯灯亮,东西方向绿灯亮,重复执行。用按钮作为中断信号,处理突发事件,用复位电路可以让交通恢复正常。交通灯状态转换流程图如图3-1所示。开始初始化程序东西道口红灯亮,南北道口绿灯亮,55秒倒计时显示东西南北5秒倒计时显示,黄灯闪烁东西道口绿灯亮

13、,南北道口红灯亮55秒倒计时显示东西南北5秒倒计时显示,黄灯闪烁图3-1 交通灯状态转换流程图3.2交通灯及数码管显示设计程序初始化完成后,进入显示程序,60秒显示时程序扫描40H,41H,两个数据单元,并把数据送到P1口、P2口,再在数码管上显示出来,120秒状态时,添加扫描60H单元,送至8255A芯片的PB口,再显示出来,定时器定时为0.1秒,定时器中断十次时,程序跳入中断内子程序,修改数据缓冲区参数,并且寄存器R0加一,计数次数完成后,跳入下一个状态。40H,41H单元数据扫程序如下。HERE:MOV A,41HMOV P2,ALCALL DELMOV A,40HMOV P1,ALCA

14、LL DELLJMP HEREDEL:MOV R4,#2DEL1:MOV R5,#126DEL2:DJNZ R5,DEL2 DJNZ R4,DEL1RET每个状态在选中时,都会通过PC口让交通灯显示相应的颜色,南北路红灯,东西路红灯,两路均黄灯,送数据分别为:#21 H,#0CH,#12H,四路口均黄灯显示子程序如下。MOV DPTR, #0FF7CHMOV A,#12HMOVX DPTR,A3.3特殊情况控制电路 中断是一项重要的计算机技术,是处理正常工作与紧急状态的好办法,是实现人机实时交互的重要途径,在单片机应用系统中,中断技术得到了广泛应用。下面详细介绍单片机中断系统基本结构、与中断相

15、关的特殊寄存器的设置及中断应用系统编程方法。当CPU查询到系统有中断请求时,如果系统处于中断允许状态,CPU将停止当前的工作,响应中断请求,转向中断服务,中断服务完成后,返回原程序继续执行当前任务,这叫单片机中断。AT89C51系列单片机中断系统结构如图3.7所示。能让CPU产生中断的信号源叫中断源。AT89C51单片机有NT0、INT1、T0、T1、TI、RI六个中断源,但只有EX0、ET0、EX1、ET1、ES五个向量,下面简要介绍其中两个外部中断源。INT0、INT1:外部中断源,由P3.2和P3.2引脚输入。具有低电平和脉冲两种触发方式,在每个机器周期的S5P2采样引脚信号,如有效则由

16、硬件将它的中断请求标志IE置1,请求中断。当CPU响应中断时,由硬件复位。CPU在执行程序的过程中,在每个机器周期对中断标志位按中断优先级进行查询,一旦查询到有中断请求,CPU只要不在执行同级或高级的中断服务程序和当前指令(RETI指令或访问IE、IP的指令除外)执行完毕两种情况,则响应中断。如果当前正在执行的指令是RETI或访问IE、IP的指令,则当前指令执行完毕后,CPU才可响应中断。中断响应时间可以从中断信号被查询开始算起,中断响应时间在以下三种情况下,响应时间还会更长:CPU正在执行一个比要响应的中断源优先级相等或更高的中断源的中断服务程序,此时须等到中断服务程序执行完毕才可中断响应。

17、正在执行的当前指令不是在最后一个机器周期,只有指令执行完后才响应中断。如果当前执行的是RETI或访问IE、IP的指令,则当前指令执行完毕后,CPU需再执行一条指令才可以中断响应,因此附加等待响应时间不会超过5个机器周期。开关对电路的控制,本系统利用开关实现对外部中断0的启动,然后进入中断子程序,修改R7的值,来控制子程序调用时入口,防止进入其他子程序,从而完成对电路的控制。中断开关程序如下。INP0:MOV DPTR,#0FF7EHMOVX A,DPTRCJNE A,#7FH,Z1MOV R0,#00HMOV R7,#04HMOV B,#01HZ1:CJNE A,#0BFH,Z2MOV R0,

18、#00HMOV R7,#06HMOV B,#01HZ2:CJNE A,#0DFH,Z3MOV R0,#00HMOV R7,#08HMOV B,#01HZ3:RETI中断处理开关设计如图3-2所示。图3-2 中断处理开关设计3.4每秒钟设定 利用MCS-51内部定时器才生溢出中断来确定0.1秒的时间,再用十次中断来控制,可以得到一秒的定时。3.5 120秒与60秒选择设计利用P3.5状态进行数据选择,初始化时,P3.5为电平,则装载入120秒初始数据,P3.5为高电平。则装载入60秒初始数据。选择分支程序如下。MAIN:MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0H

19、MOV P0,#0FFHMOV B,#0AHMOV R7,#00HMOV P3,#0FFHJNB P3.5,BAIMOV R0,#00HMOV 40H,#6DHMOV 41H,#6DHMOV 42H,#00HMOV 43H,#00HMOV 50H,#04HMOV 51H,#03HMOV 52H,#0AHMOV 53H,#03HMOV 54H,#03HMOV 55H,#03HMOV 56H,#03HMOV R1,#00HMOV R6,#00HLJMP ZHONGBAI:MOV R1,#01HMOV R0,#00HMOV 40H,#06HMOV 41H,#6DHMOV 42H,#00HMOV 43

20、H,#00HMOV 50H,#08HMOV 51H,#03HMOV 52H,#0AHMOV 53H,#03HMOV 54H,#03HMOV 55H,#03HMOV 56H,#03HMOV 60H,#01HMOV DPTR,#0FF7DHMOV A,60HMOVX DPTR,AZHONG:SETB EASETB ET0SETB EX0SETB IT0SETB TR0MOV DPTR,#0FF7FHMOV A,#89HMOVX DPTR,A3.6 复位电路设计给RST端持续高电平,超过两个时钟周期,则AT89C51单片机复位。复位电路如图3-3所示。图3-3 复位电路4 系统仿真由程序一开始可以看

21、到,程序装载完成后进入初始状态,即一路为红灯,另一路为绿灯,同时数码管的五十五秒倒计时显示,仿真结果如图4-1所示。图4-1 55秒时数码管状态55秒以后,最低位显示5秒倒计时,让后重复55秒倒计时,没有开关按下一直循环下去。指示灯的状态在,红灯,黄灯,绿灯间转换,且仅有黄灯时,两路口指示灯颜色一致。灯的三种状态如图4-2,图4-3和图4-4所示。图4-2 南北路绿灯,东西路红灯图4-3 南北路黄灯,东西路黄灯图4-4 南北路红灯,东西路绿灯当有开关按下时,全部显示图8状态,只是黄灯闪烁,然后变为各自已设定好的状态,当按复位键时,程序从开始部分开始执行。如果为120秒状态,则图6的最高位会显示

22、0或1,来指示百位数。120秒出状态显示如图4-5所示。图4-5 115秒显示状态总结与体会这次课程设计是一次对书本知识综合运用的机会,在这两个星期里,通过对本课程专题的研究与学习,让我明白理论到实践之间的差距,以及自己在平时的学习中懒于动手的缺点。也从中深切体会到自己知识的零散性和不完备,同时也看到了自己的动手实践经验的过度缺乏和学以致用的差距,将理论联系和实际联系起来解决实际的能力还急需提高。这次设计就我个人而言,有欢乐也有忧伤,而且对每个同学来说是共同的感觉,让我们在每一次设计的进步有欢笑的时候,每个人的欢笑不仅仅自己的一分,还有来自其他队员的每一份快乐。当忧伤的时候,每个人的忧伤是共同的,却在彼此的坚定的眼神里变得微不足道。相互帮助,配合默契,成为我们这次设计的一个团队的共同的生活记忆。亲切,让我们团队的所有人再一次感觉到了前所未有的亲近感。所以这次的学习不仅仅是技能的知识,更重要的是那份在技能的提高中所获得的成就感。这也将对我后面两年的学习有重要的指导作用。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com