欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    交通灯控制系统设计论文.pdf

    • 资源ID:71671032       资源大小:1.64MB        全文页数:50页
    • 资源格式: PDF        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    交通灯控制系统设计论文.pdf

    -.基于 AT89C51 的交通灯控制系统的设计摘要交通灯控制系统是近现代社会随着物流、出行等交通发展产生的一套独特的公共管理系统。随着我国城市现代化进程的不断推进,交通是影响我国社会经济发展的严重问题,而城市交通问题的核心就是对十字路口交通信号的控制。因此,我国的城市交通问题的研究重点是交通灯控制系统的研究。本课题是根据单片机相关知识对简单交通灯控制系统的设计。本文首先介绍了交通灯的发展历史和研究现状,阐述了本课题的任务要求,并在交通管理系统知识的基础上,根据设计要求和实际应用情况,进行总体方案论述。接着,对单片机进行了简单介绍,然后通过对交通灯控制系统需完成的功能确定了控制系统中需要设计的模块,最后对每个模块进行硬件的选择与设计,完成了对交通灯控制系统的硬件设计。在软件设计部分,运用 Proteus 和 Keil 软件对交通控制系统编程与仿真,使交通灯控制系统功能达到任务要求。关键词:信号灯AT89C51倒计时控制-可修编.-.引言:在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。这一技术在 19 世纪就已出现了。早期的交通信号灯使用“固定配时”方式实行自动控制,这种方式对于早起交通流量不大的情况曾起过一定的作用。但随着汽车工业的发展,交通流量增加,随机变化增强,采用以往那种单一模式的“固定配时”方式已不能满足客观需要,于是一种多时段多方案的信号控制器开始出现并逐步取代了传统的只有一种控制方案的控制器。计算机的出现为交通控制技术的发展注入了新的活力。加拿大多伦多市于 1964年完成了计算机控制信号灯的实用化,建立了一套由 IBM650 型计算机控制的交通信号协调系统,成为世界上第一个具有电子数字计算机城市交通控制系统的城市。这是道路交通控制技术发展的里程碑。为此,设计一个关于交通灯控制系统,该设计以 AT89C51 单片机作为核心,功耗小可以方便以后研究。1.设计的要求与方案1.1根据上述交通灯控制系统的研究意义,本课题设计了适应当前交通管理的交通灯控制系统。此系统中除了具有基本的交通灯功能之外,还具有倒计时、时间设置、根据情况手动控制等功能。(1)在一般情况下,交通灯控制系统要求正常显示信号灯以及倒计时的时间变化:-可修编.-.当东西方向为绿灯时,南北方向为红灯;当东西方向绿灯变为黄灯,提示此方向即将禁止通行;当东西方向变为红灯,南北方向变为绿灯;当南北方向变为黄灯时,提示此方向即将禁止通行。在每个方向都要求有倒计时显示,提示通行时间和暂缓通行时间。(2)在特殊情况下,某一方向的车流量过多,按键设置通行时间和暂缓通行时间。综上所述,交通灯的发展带动了整个交通运输的发展。本章主要介绍了交通灯的发展现状和研究意义,提出了本课题的任务要求。-可修编.-.1.2系统设计的总体方案1.2.1 系统设计目标随着人们日常生活水平的提高,机动车辆不断增加,简单的交通控制系统已不能满足当前交通道路管理的需要。为了最大程度的满足交通管理的需要,为车辆提供准确的通行时间,本课题应结合先进的研究技术设计出功能完善的交通灯控制系统。此外,还需要充分考虑系统的可操作性,使控制系统具备与突发状况相适应的可调节能力。1.2.2 交通道路管理方案在设计交通灯控制系统之前,应明确交通道路中交通灯的管理方案。东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,以指挥车辆的安全通行。红灯亮禁止通行;绿灯亮允许通行;黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停车时间。信号灯指示方案如表1.2.1 所示。表表 1.2.11.2.1 信号灯指示方案信号灯指示方案状态S1S2S3S4信号灯显示东西方向绿灯 南北方向红灯东西方向黄灯 南北方向红灯东西方向红灯 南北方向绿灯东西方向红灯 南北方向黄灯1.2.3 系统设计总体方案根据交通系统管理方案和本课题任务的要求,该系统应具有交通灯的显示功能、倒计时功能和通行时间设置功能,所以把系统分为四个模块,包括单片机控制、信号灯显示、倒计时显示和键盘设置,系统硬件设计结构如图 2.1 所示。-可修编.-.初 始 参数 设 置键盘设置AT89C51单片机控制模块74LS245驱动倒计时显示模块信号灯显示模块图图 1.2.11.2.1 系统硬件设计结构系统硬件设计结构下面分别简单介绍这四个模块:(1)单片机控制模块:单片机将计算机的基本部件微型化并集成到一块芯片上,具有优异的性能价格比,控制功能强,这将使各模块功能的实现变得简单方便。本系统中,8051 单片机的 P0 口控制南北方向的时间显示;P1 口控制信号灯的点亮;P2口控制东西方向的时间显示;P3 口接入键盘开关,可设置适应当前状况的通行时间和暂缓通行时间。(2)信号灯显示模块:利用发光二极管代替交通信号灯,通过单片机控制使其按要求点亮。(3)倒计时显示模块:此模块有两种方案。第一种是采用数码管显示。该方案实现简单,但只能显示有限的符号和数码字符。第二种是采用点阵式 LED 显示。该方案实现复杂,须完成大量的软件工作,但功能强大,可方便的显示各种英文字符、汉字和图形。由于本控制系统只需显示倒计时时间,利用数码管即可完成此功能,因此本控制系统中利用 2 位一体的共阴数码管显示道路两个方向的通行时间和暂缓通行时间,通过单片机控制进行倒计时显示。(4)键盘设置模块:在交通道路突发情况时,可通过按键手动设置通行时间和暂缓通行时间,通过单片机控制进行时间设置。此模块有两种方案:第一种是采用 8255扩展 I/O 口及键盘、信号灯显示等。该方案使用灵活,可提供较多I/O 口,但操作复杂。另一种是直接在 I/O 口线上接上按键开关。该方案设计精简,但提供的 I/O 口数-可修编.-.量有限。由于本控制系统对于交通灯及数码管的控制只用单片机本身的 I/O 口就可实现,故选择第二种方案。综上所述,交通灯控制系统的总体方案已经确定,下面进行硬件设计。-可修编.-.2 交通灯控制系统硬件设计2.1 单片机简介8051 系列单片机是在美国 Intel 公司于 20 世纪 80 年代推出的 MCS-51 系列高性能 8 位单片机的基础上发展而来的,它在单一芯片内集成了并行 I/O 口、异步串行口、16 位定时器/计数器、中断系统、片内 RAM 和片内 ROM,以及其他一些功能部件5。单片机主要有如下特点:(1)有优异的性能价格比。(2)集成度高、体积小、有很高的可靠性。单片机把各功能部件集成在一块芯 片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了单片机的可靠性 与抗干扰能力。另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣的环境下工作。(3)控制功能强。为了满足工业控制的要求,一般单片机的指令系统中均有极丰富的转移指令、I/O 口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。(4)低功耗、低电压,便于生产便携式产品。(5)外部 总线 增加了IC(Inter-Integrated Circuit)及 SPI(Serial PeripheralInterface)等串行总线方式,进一步缩小了体积,简化了结构。(6)单片机的系统扩展和系统配置较典型、规 X,容易构成各种规模应用系统6。2.2 系统时钟电路晶振采用了内部时钟信号源的方式,如图 3.1 所示。8051 单片机内部有一个高增益反向放大器,用于构成振荡器,反向放大器的输入端为 XTAL1,输出端为 XTAL2,-可修编.-.分别是 8051 的第 19 和 18 脚。在 XTAL1 和 XTAL2 之间接 1 个石英晶体及 2 个电容,就可以构成稳定的自激振荡器,当震荡在 6MHz12 MHz 时通常取 30pF 左右的电容进行微调7。图图 3.13.1 系统时钟电路系统时钟电路2.3 信号灯显示电路在信号灯显示电路中,本控制系统选用了发光二极管代替信号灯。其中:红色发光二极管、黄色发光二极管和绿色发光二极管分别代替红灯、黄灯、绿灯。发光二极管是一种特殊的二极管,导通时会发光(发光二极管导通压降一般为1.5V 左右)8。此外,工作电流要满足该二极管的工作电流。一般发光二极管与I/O端口之间都会再连接一个电阻,其作用在于限制通过二极管的电流,从而达到减少功耗或者满足端口对最大电流的限制9。一般发光二极管的点亮电流为 515mA。控制系统中,信号灯指示电路如图 3.2 所示。-可修编.-.图图 3.23.2 信号灯显示电路信号灯显示电路在此信号灯显示电路中,每个发光二极管都与 1 个 220 的电阻相连接,起到限流作用。因为二极管的导通电压为 1.5V,电阻分得的电压为 5V1.5V=3.5V,当选择220 的电阻时发光二极管的电流为 3.5V/220,约为 15mA,此时发光二极管正常点亮。2.4 倒计时显示电路该交通灯控制系统的倒计时功能可以采用数码管显示,也可以采用点阵式LED显示。点阵式 LED 虽然功能强大,但是需要完成大量的软件工作,系统设计的复杂度会增加,因此本控制系统选择采用数码管来实现交通灯倒计时功能的显示。8段数码管又称为8字型数码管,分为8段:A、B、C、D、E、F、G、DP。其中,DP为小数点。数码管常用的有10根管脚,每一段有一根管脚,另外两根管脚为一个数码管的公共段,两根之间相互连通10-13。8段LED数码管,就是在一定形状的绝缘材料上,利用不同形状点划的发光二极管组合,排列成“8”字型的数码管,分别引出它们的电极,点亮相应的点划来显示09的数字14。数字显示代码如表3.1所示。表表3.13.1 数字显示驱动代码表数字显示驱动代码表-可修编.-.显示数值dop g f e d c b a驱动代码(16 进制)01234567800 1 1 1 1 1 10 0 0 0 0 1 1 001 0 1 1 0 1 101 0 0 1 1 1 101 1 0 0 1 1 001 1 0 1 1 0 001 1 1 1 1 0 000 0 0 0 1 1 101 1 1 1 1 1 13FH06H5BH4FH66H6DH7DH07H7FH本控制系统倒计时电路采用了 4 个 2 位一体的共阴数码管,此数码管在交通灯控制系统中便于观察倒计时显示,如图 3.3 所示。图图 2.22.2 位一体的共阴数码管位一体的共阴数码管这 4 个数码管分别与控制两干道倒计时显示的端口相连接,即可显示出信号灯的倒计时功能。以南北方向的数码管为例,如图3.4 所示。此数码管显示的数值从绿灯的设置时间最大值一直减,每秒钟减1,然后又从黄灯的设置时间一直减,再从红灯的设置时间一直减,接下来又显示绿灯时间,如此循环。图图 3.43.4 南北方向倒计时显示南北方向倒计时显示-可修编.-.2.5 键盘设置电路键盘设置电路中,采用独立式按键进行控制。独立式按键是直接用 I/O 口线构成的单个按键电路,其特点是每个按键单独占用一根 I/O 口线,每个按键的工作不会影响其它 I/O 口线的状态14。独立式按键的典型应用如图 3.5 所示:图图 3.53.5 独立式按键电路独立式按键电路独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根 I/O 口线,因此,在按键较多时,I/O 口线浪费较大,不宜采用。根据以上特点,本控制系统单片机的 I/O 口数可以满足该键盘,并且可以完成课题中所要求的手动设定时间的控制功能,所以本控制系统中应采用独立式键盘,键盘设置电路如图 2.6 所示。图图 2.62.6 键盘设置电路键盘设置电路2.6 单片机控制电路设计交通灯控制系统中,单片机控制模块是整个电路设计的主要部分。8051 单片机有 4 个并行 I/O 口 P0、P1、P2 和 P3,每个口都有 8 个引脚,共有 32 根 I/O 引脚,它们都是双向通道,每一条 I/O 引脚都能独立地用做输入和输出。本系统中,8051单片机的 P0 口控制南北方向的时间显示;P1 口控制信号灯的点亮;P2 口控制东西-可修编.-.方向的时间显示;P3 口接入键盘开关,可设置适应当前交通状况的通行时间和暂缓通行时间。另外,在 P0 口控制南北方向的时间显示中,利用 74LS245 芯片驱动数码管。74LS245 管脚结构如图 3.7 所示,它是常用的芯片,用来驱动 LED 或者其他的设备,是 8 路同相三态双向总线收发器,可双向传输数据15。8051 单片机 P0 口内部不带上拉电阻,输出只有电压没电流,接负载时要外接上拉电阻,即当 8051 单片机的 P0口总线负载达到或超过 P0 最大负载能力时,必须接入 74LS245 等总线驱动器。图图 3.73.774LS24574LS245 管脚结构管脚结构74LS245 芯片具有双向三态功能,既可以输出,也可以输入数据,74LS245 芯片内部结构如图 3.8 所示。图图 3.874LS2453.874LS245 内部结构内部结构当片选端CE低电平有效时,DIR=“0”,信号由 B 向 A 传输,即接收数据;DIR=“1”,信号由 A 向 B 传输,即发送数据。当CE为高电平时,A、B 均为高-可修编.-.阻态。所以,在本控制系统中需要用 74LS245 芯片对数码管进行驱动。本章对单片机进行了简单介绍,设计了交通灯控制系统硬件电路。接下来,还需要对软件部分进行设计,完成整个控制系统的设计要求。3 交通灯控制系统的软件设计硬件平台结构一旦确定,功能框架就已经形成。软件在硬件平台的基础上构筑,完成各部分硬件的控制和协调。系统是由软硬件共同实现的,由于软件的可伸缩性,最终实现的系统功能可强可弱,差别可能很大。因此,软件是本系统的灵魂。软件采用模块化设计方法,不仅易于编程和调试,也可减小软件故障率和提高软件的可靠性。同时,对软件进行全面测试也是检验错误排除故障的重要手段。3.1 软件设计环境简介3.1.1 Proteus 仿真软件简介Proteus ISIS 是英国 Labcenter 公司开发的电路分析与实物仿真软件。它运行于Windows 操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路16。该软件的特点是:(1)实现了单片机仿真和 SPICE 电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232 动态仿真、I2C 调试器、SPI调试器、键盘和 LCD 系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。(2)支持主流单片机系统的仿真。目前支持的单片机类型有:68000 系列、8051系列、AVR 系列、PIC12 系列、PIC16 系列、PIC18 系列、Z80 系列、HC11 系列以及各种外围芯片。-可修编.-.(3)提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如 Keil C51 uVision2 等软件。(4)具有强大的原理图绘制功能17。总之,该软件是一款集单片机和 SPICE 分析于一身的仿真软件,功能极其强大。-可修编.-.3.1.2KeilC51 编译软件简介目前流行的 51 系列单片机开发软件是德国 Keil 公司推出的 Keil C51 软件,它是一个基于 32 位 Windows 环境的应用程序,支持 C 语言和汇编语言编程,其 6.0 以上的版本将编译和仿真软件统一为 uVision(通常称为 uV2)18。Keil 提供包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,由以下几部分组成:uVision IDE 集成开发环境(包括工程管理器、源程序编辑器、程序调试器)、C51 编译器、A51 汇编器、LIB51 库管理器、BL51 连接/定位器、OH51目标文件生成器以及 Monitor-51、RTX51 实时操作系统19-21。3.2 交通灯系统主程序在交通灯控制系统的设计中,首先对交通灯进行初始参数设置,然后根据是否出现键盘事件,如出现键盘事件就启动键盘程序,进行键盘时间处理;若没有出现,继续进行由初始参数进行的控制程序。交通灯控制系统的设计流程如图 4.1 所示:开始初始化等待键盘事件键盘事件处理显示程序处理图图 4.14.1 交通灯控制系统设计流程交通灯控制系统设计流程3.3 交通灯延时程序延时方法可以有两种,一种是利用 MCS-51 内部定时器才生溢出中断来确定 1秒的延时时间,另一种是采用软件延时的方法。-可修编.-.3.3.1 计数器硬件延时(1)计数器初值计算定时器工作时必须给计数器初值,这个值是送到 TH 和 TL 中的。它是以加法计数的,并能从全 1 到全 0 时自动产生溢出中断请求22-26。因此,我们可以把计数器记满为零所需的计数值设定为 C 和计数初值设定为TC可得到如下计算通式:TC=MC式中,M 为计数器模值,该值和计数器工作方式有关。在方式 0 时 M 为 213;在方式 1 时 M 的值为 216;在方式 2 和 3 为 28。(2)计算公式TC=MT/T计数T计数是单片机时钟周期 TCLK的 12 倍;TC 为定时初值,如单片机的主脉冲频率 TCLK为 12MHZ,经过 12 分频:方式 0:TMAX=2131us=8.192ms方式 1:TMAX=2161us=65.536ms方式 2 和 3:TMAX=281us=0.256ms显然 1 秒钟已经超过了计数器的最大定时时间,所以只有采用定时器和软件相结合的办法才能解决这个问题。(3)延时 1 秒的方法系统中采用在主程序中设定一个初值为4000 的软件计数器和使定时器定时250us。这样每当 T0 到 250us 时 CPU 就响应它的溢出中断请求,进入它的中断服务子程序。在中断子程序中,CPU 先使软件计数器减 1,然后判断它是否为0。为0 表示 1 秒已到可以返回到输出时间显示程序。-可修编.-.(4)相应程序代码主程序中:定时器需要定时 250 us,故 T0 工作于方式 2。初值:TC=MT/T计数=28250us/1us=06HTMOD=0 x02;/设置定时器 0 为工作方式 2TH0=0 x06;TL0=0 x06;EA=1;ET0=1;TR0=1;/初始化 8 位定时器(2566)*4000=1s/总中断允许/T0 中断允许/打开 T0 中断3.3.2 软件延时软件延时需要通过编写延时程序进行延时。计算机执行一条指令需要一定的时间,由一些指令组成一段程序,并反复循环执行,利用计算机执行程序所用的时间来实现延时,这种程序称为延时程序27-28。如当系统使用 12MHz 晶振时,一个机器周期为 1us,执行一条双字双周期 DJNZ 指令的时间为 2us,因此执行该指令 50 万次,就可以实现延时 1s 的目的,对于 50 万次循环可采用外循环、中循环、内循环嵌套的多重循环结构。3.4 交通灯显示程序交通灯显示程序设计流程如图 4.2 所示。交通灯显示程序总共有 4 个状态 S1、S2、S3 和 S4,每个状态中发光二极管显示信号灯点亮情况,数码管来进行倒计时显示,完成这 4 个状态后再进入初始状态 S1,进行循环。-可修编.-.开始初始化,状态 S1延时,并显示时间延时,并显示时间状态 S2状态 S4延时,并显示时间延时,并显示时间状态 S3图图 4.24.2 交通灯显示设计流程交通灯显示设计流程3.5 按键处理程序键盘是人机进行交互的重要接口之一。用户通过对仪器下达命令,仪器获得相应的键值,并执行相应的命令程序29。键盘部分的软件设计主要是对键盘管理芯片 8051进行编程,从而成功地读取键盘值,实现相应功能。按键模块设计流程如图 4.3 所示。在系统中有3 个按键设置,分别为“设置键”、“增加键”、“减少键”。若“设置键”没有按下,不进行按键处理。若“设置键”按下,则按照到“设置键”程序处理,看是否有“增加键”和“减少键”被按下,若没有,不进行处理;若有,进行相应按键处理。-可修编.-.等 待 按 键 按设置键是否按Y设置键处理程序N增加键处理程序Y增加键是否按N减少键处理程序Y减少键是否按图图 4.34.3 按键模块设计流程按键模块设计流程3.5.1 设置键处理(1)设置键的功能设置键的功能是根据按键次数决定的,如表 4.1 所示。按下“设置键”1 次,则设置东西方向的绿灯点亮时间;按下“设置键”2 次,则设置东西方向黄灯点亮时间;按下“设置键”3 次,则设置南北方向的绿灯点亮时间;按下“设置键”4 次,则设置南北方向黄灯点亮时间;按下“设置键”5 次,则恢复交通灯工作状态,时间显示设置后的通行时间和暂缓通行时间。表表 4.14.1 设置键功能设置键功能按“设置键”次数调整内容第 1 次东西方向绿灯点亮时间第 2 次东西方向黄灯点亮时间第 3 次南北方向绿灯点亮时间第 4 次南北方向黄灯点亮时间第 5 次恢复交通灯工作状态(2)设置键设计流程-可修编.-.等待按键释放第 1 次按下NY东西向绿灯点亮,数码管闪烁,设置通行时间第 2 次按下NY东西向黄灯点亮,数码管闪烁,设置暂缓通行时间第 3 次按下NY南北向绿灯点亮,数码管闪烁,设置通行时间第 4 次按下NY南北向黄灯点亮,数码管闪烁,设置暂缓通行时间第 5 次按下Y交通灯正常显示,数码管显示设置好的时间返回等待图图 4.44.4 设置键设计流程设置键设计流程(3)设置键相关程序void setSecond(void)while(P3_4=0);tP3_4+;/标志设置键被按下的次数switch(tP3_4)case 1:tEW=5;/tEW 为东西向标志位P1=0 xf7;/东西向绿灯点亮break;case 2:tEW=1;P1=0 xef;/东西向黄灯点亮-可修编.-.break;case 3:tSN=1;/tSN 为南北向标志位P1=0 xfe;/南北向绿灯点亮break;case 4:tSN=3;P1=0 xfd;/南北向黄灯点亮break;增加键处理(1)增加键的功能当系统系统需要进行按键设置时,通过“增加键”可以改变东西方向和南北方向的通行时间和暂缓通行时间。此按键分为两个功能,一个是“加 1”功能,一个是“加10”功能。(2)增加键处理流程case 5:tEW=5;/东西方向和南北方向标志位都回到初始状态tSN=5;t_num=0;tP3_4=0;break;-可修编.-.延时延时Y按键是否还在按下N等待按键释放按键是否释放Y数码管值加 10数码管值加 1N按键是否还在按下N返回Y数码管加 10Y延时图图 4.54.5 增加键设计流程增加键设计流程(3)“增加键”相关程序秒数加 1 程序:void addSecond(void)while(P3_5=0);t_key=0;/记录长按键的参数清零switch(tP3_4)case 1:if(keyMemory!=greenEW+10)/判断按键是否已经加10,如果没有加10 则秒数加 1,如果已经加 10 则不加 1greenEW+;if(greenEW=90)-可修编.-.greenEW=0;/90 为秒数增加后的最大值,当超过 90s 后自动为 0scdEW=greenEW;scdSN=greenEW+yellowEW+1;break;/东西向绿灯显示时间设置case 2:if(yellowEW+=9)yellowEW=0;scdEW=yellowEW;break;/东西向黄灯显示时间设置case 3:if(keyMemory!=greenSN+10)greenSN+;if(greenSN=90)greenSN=0;scdEW=greenSN+yellowSN+1;scdSN=greenSN;break;/南北向绿灯显示时间设置case 4:-可修编.-.if(yellowSN+=9)yellowSN=0;scdSN=yellowSN;break;/南北向黄灯显示时间设置长按加 10s 程序:当长时间按下按键后,增加的时间为 10svoid add_10s(void)t_key=0;switch(tP3_4)case 1:/设置键按 1 次,设置东西方向绿灯显示时间greenEW=greenEW+10;/长按秒数加 10if(greenEW=90)greenEW=0;keyMemory=greenEW+10;/keyMemory 用来标记秒数已经加 10scdEW=greenEW;scdSN=greenEW+yellowEW+1;break;case 3:/设置键按 3 次,设置东西方向绿灯显示时间greenSN=greenSN+10;if(greenSN=90)-可修编.-.greenSN=0;keyMemory=greenSN+10;scdEW=greenSN+yellowSN+1;scdSN=greenSN;break;减少键处理“减少键”与“增加键”设计的流程基本相同,如图 4.6 所示。延时延时Y按键是否还在按下N等待按键释放按键是否释放Y数码管值减 10数码管值减 1N按键是否还在按下N返回Y数码管减 10Y延时图图“减少键”设计流程“减少键”设计流程交通灯控制系统仿真仿真开始时,东西方向为绿灯,数码管从 20s 开始倒计时;南北方向为红灯,数码管从 24s 开始倒计时。接着,东西方向为黄灯,数码管从 3s 开始倒计时;南北方向-可修编.-.还是红灯。过后,东西方向为红灯,数码管从30s 开始倒计时;南北方向为绿灯,数码管从 24s 开始倒计时。再接着,东西方向继续为红灯;南北方向为黄灯,数码管从5s 开始倒计时。最后,回到初始状态进行循环。当道路上出现突发状况时,按键设置通行时间后,交通灯信号灯显示状态不变,通行时间和暂缓通行时间变为按键设置后的时间。交通灯初始状态时的仿真初始状态下,东西方向显示绿灯,数码管从 20s 开始倒计时;南北方向显示红灯,禁止通行,数码管从 24s 开始倒计时。图图 4.74.7 交通灯初始状态的仿真交通灯初始状态的仿真东西向信号灯切换时仿真东西向绿灯变为黄灯,时间为 3s,南北方向为红灯。图图 4.84.8 东西向信号灯切换时的仿真东西向信号灯切换时的仿真键盘控制重设时间的仿真通过设置键、增加键、减少键对交通灯控制系统的通行时间和暂缓通行时间进行设置,东西方向的通行时间为 36s,南北方向等待通行时间为 40s。-可修编.-.图图 4.94.9 键盘控制重设时间的仿真键盘控制重设时间的仿真综上所述,该控制系统的软件设计极其重要。本章主要阐述了每个模块的设计流程,简单介绍了控制系统的程序设计,列出了本控制系统的仿真结果。4 交通灯控制系统调试因本设计本身要求有稳定性高、免维护、抗干扰能力强等功能,系统调试除了验证数据处理的精度,确保判断的准确性外,同时必须确认各项的功能的正常运行。根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。由于在系统设计中采用模块化设计,所以方便了对各电路功能模块的逐级测试,包括对:交通灯点亮功能调试,倒计时功能调试,键盘设置功能调试。单片机软件先在最小系统板上调试,确保工作正常之后,再与硬件系统联调。最后将各模块组合后进行整体测试,使系统的所有功能得以实现。4.1 硬件调试交通灯控制系统电路板焊接工作量非常大,电路焊接完成后,首先要进行检查,-可修编.-.即确认电路无虚焊,无短路,无断路,集成元件安装是否正确,之后进行电路功能模块的分级调试,根据电路功能逐级进行:(1)信号灯点亮功能调试:四种状态下的信号灯点亮情况和亮度的调试;(2)倒计时功能调试:包括数码管亮度调试和延时功能的调试;(3)键盘设置功能调试:包括按键功能调试及延时功能的调试;4.2 软件调试本系统的软件系统全部用 C 语言来编写,选用 Keil 对其进行调试。首先,对程序的语法进行检查。当确认程序没问题时,通过直接下载到单片机来调试。采取的是自下到上的调试方法,即单独调试好每一个模块,然后再连接成一个完整的系统,最后完成一个完整的系统调试。4.3 软硬件联调系统做好后,进行系统的完整调试。主要任务是检验实现的功能及其效果。调试时,单片机软件先在最小系统板上调试,确保工作正常之后,再与硬件系统联调。信号灯指示电路模块由 12 个发光二极管和 12 个 220 电阻组成。该模块接线繁琐,极易出错。当检查发光二极管无故障、导线无断线、连线接头无互相搭联后可先写一个软件调试程序,依次检查东南西北方向的信号灯(发光二极管)是否点亮;-可修编.-.若未点亮,则可能是连线接错。根据灯的亮灭情况依次查找错误,直到电路正常工作为止。倒计时显示电路模块由 4 个数码管组成。调试时,先检查数码管管脚是否与相应引脚相连,确认无误后,再将数码管与仿真器相连,编制一个简单的程序进行调试,直到数码管正常显示时间为止。键盘设置电路模块由 3 个按键和 3 个 1K 电阻组成。当检查按键无故障、导线连接无误后,用一个软件调试程序进一步检查按键设置电路。当各模块均调试好后,进行整机联调:将各模块连接起来,逐个进行检测。调试成功后再将程序写到单片机中进行调试,直至整个系统能够正常工作。此外,在电路抗干扰设计方面,硬件电路中采取了引线尽量短,减少交叉等措施。实践证明,这些措施对消除某些引脚引起的直流分量干扰起到了很好的效果。抗干扰设计是单片机应用系统设计的重要组成部分,没有良好的抗干扰措施,系统就无法安全可靠的工作。当然,本系统只能通过系统软件、硬件设计尽可能的减少干扰带来的影响,而不可能完全消除干扰。5 结论本系统采用了 8051 芯片和 74LS245 芯片为中心器件来设计交通灯控制系统,此系统通过 P1 口对交通灯燃亮情况进行了控制,而南北方向和东西方向的显示时间分别是通过 P0、P2 口进行了控制,键盘设置时间模块是由 P3.4、P3.5、P3.6 控制,该系统设计简便,实用性强,操作简单。但是本文所设计的交通灯控制系统还存在一些未尽人意的地方,还有很多不足之处:(1)该交通灯控制系统没有考虑到夜晚车辆极少情况下的交通灯显示情况。-可修编.-.(2)该交通灯控制系统不能控制车的左、右转,以及自动根据车流改变红绿灯时间等。(3)该交通灯控制系统只考虑交通道路中的车辆,未考虑到行人的通行问题。通过这次毕业设计,使我得到了一次运用专业知识、专业技能分析和解决问题全面系统的锻炼,使我在单片机的基本原理、单片机应用系统的开发过程以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。-可修编.-.参 考 文 献1 余发山.单片机原理及应用技术M.中国矿业大学,2002.2李朝青.单片机原理及接口技术(修订版)M.:航空航天大学,1998.3Zadeh L.A.Fuzzy Sets and their ApplicationsM.New York:AcademicPress,1975.4李广弟.单片机基础M.:航空航天大学,1992.5余锡存,曹国华.单片机原理及接口技术M.:XX 电子科技大学,1998.6 X立新,X明捷,X晓燕.可编程控制器(PLC)的高速计数器的应用J.石油化工学院学报,2001(1):3436.7 蒋万君.在论循环时序电路的简便设计J.机电一体化,2005(2):1214.8 史建平.PLC 在全功能交通灯控制上的应用J.XX 工学院学报,1999(6):6568.9 Tobin,R.L Friesz.T.L Sensitivity analysis for equilibrium network flows J,Prentice Hall,2001(2):8791.10 黄义源.机械设备电气与数字控制M.中央广播电视大学,1993.11 蔡美琴.X 为民等 MCS-51 系列单片机系统及应用M.高等教育,1992.12李建中.单片机原理及应用M.:XX 电子科技大学,2002.13康华光.电子技术基础(第四版)M.:高等教育,2000.14 杨佩昆等编.交通管理与控制M.:人民文通,1992.15 绕庆和.MSC-51 单片机实用技术M.:电子工业,2003.16 沈红卫.单片机应用系统设计实例与分析M.:航空航天大学,2000.17陈静,花瑞,宋炳生.交叉口交通信号控制的半实物仿真平台设计J.XX 理工大学学-可修编.-.报(信息与管理工程版),2008(5):2629.18 馀吉万等编.城市交通的计算机控制和管理M.测绘,1985.19 X 晓娟,X 雁鹏,汤自安编.城市轨道交通智能控制系统M.中国铁道,2008.20 王炜.城市交通规划理论及其应用M.:电子工业,2007.21 X 辉.8051 单片机控制交通信号灯的方法研究J.XX 师 X 高等专科学校学报,-可修编.-.附录附录一:电路图附录二:程序#includeat89x51.hunsigned char num=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;/数字 09unsigned char ctr=0 xfa,0 xf5;/0 xfa(P3_0和P3_2为0,即 高 位 有效)0 xf5(P3_1 和 P3_3 为 0,即低位有效)-可修编.-.unsigned char disEW2;/记录东西向高低位数值unsigned char disSN2;/记录南北向高低位数值unsigned char v;unsigned chart_ctr;unsigned int scdEW,scdSN;unsigned inttSN,tEW;unsigned chartP3_4,tP3_5,tP3_6;unsigned intt_num,t_key,t_flash,keyMemory;int greenEW=20,yellowEW=3,greenSN=24,yellowSN=5;/延时函数,a 为 1 延时 1 毫秒void delay_ms(unsigned int a)int i;while(a-)i=70;while(i-);/设置红绿黄灯秒数void setSecond(void)while(P3_4=0);tP3_4+;/标志设置键被按下的次数-可修编.-.switch(tP3_4)case 1:tEW=5;P1=0 xf7;break;case 2:tEW=1;P1=0 xef;break;case 3:tSN=1;P1=0 xfe;break;case 4:tSN=3;P1=0 xfd;break;case 5:tEW=5;tSN=5;t_num=0;tP3_4=0;-可修编.-.break;/秒数加 1void addSecond(void)while(P3_5=0);t_key=0;/记录长按键的参数清零switch(tP3_4)case 1:if(keyMemory!=greenEW+10)/判断按键是否已经加10,如果没有加10 则秒数加 1,如果已经加 10 则不加 1 greenEW+;if(greenEW=90)greenEW=0;scdEW=greenEW;scdSN=greenEW+yellowEW+1;break;case 2:if(yellowEW+=9)yellowEW=0;-可修编.-.scdEW=yellowEW;break;case 3:if(keyMemory!=greenSN+10)greenSN+;if(greenSN=90)greenSN=0;scdEW=greenSN+yellowSN+1;scdSN=greenSN;break;case 4:if(yellowSN+=9)yellowSN=0;scdSN=yellowSN;break;/秒数减 1void subSecond(void)while(P3_6=0);-可修编.-.t_key=0;/记录长按键的参数清零switch(tP3_4)case 1:if(keyMemory!=gree

    注意事项

    本文(交通灯控制系统设计论文.pdf)为本站会员(l***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开