当前位置:城玮文档网 >作文大全 > 毕业设计基于单片机智能交通灯控制系统

毕业设计基于单片机智能交通灯控制系统

时间:2022-07-27 08:40:05 来源:网友投稿

  毕

 业

 设

 计(论

 文)

  设计(论文)题目:

 智能交通灯控制系统的设计

  系

  别:

 专

  业:

 1 班

  级:

  1 姓

  名:

  1 学

  号:

  1 指导教师:

  完成时间:

  10 年 5 月

 目录

 摘要 …………………………………………………………………………………………….4 第一章

 概述 ………………………………………………………………………………….5 1.1 单片机简介 ………………………………………………………………………………5 1.2 市场需求 …………………………………………………………………………………5 1.3 交通灯的由来与发展…………………………………………………………………….5 1.4 交通灯的功能与作用…………………………………………………………………….5 第二章 总体设计方案 ………………………………………………………………………… 7 2.1 设计课题 …………………………………………………………………………………7 2.2 设计目的 …………………………………………………………………………………7 2.3 课题任务的控制要求 ……………………………………………………………………7 2.4 方案论证 ……………………………………………………………………………….7 2.4.1 方案一 ………………………………………………………………………………… 7 2.4.2 方案二 ………………………………………………………………………………… 8 2.4.3 方案三 ………1……………………………………………………………………… 8 2.4.4 方案总结 ………………………………………………………………………………8 第三章

 系统硬件电路的设计………………………………………………………………… 9

 3.1 主控制系统 ………………………………………………………………………………9 3.2.通行灯输出控制 ………………………………………………………………………11 3.3 时间显示模块 …………………………………………………………………………11 3.4 特种车辆自动通行控制模块 …………………………………………………………11 3.5 电源电路 ………………………………………………………………………………12 3.6 硬件介绍说明……………………………………………………………………………12 3.6.1 AT89C52.的引脚说明…………………………………………………………………12 3.6.2 AT89C52 的引脚说明…………………………………………………………………13 3.6.3 74HC244 简介………………………………………………………………………..13 第四章 系统主要程序的设计…………………………………………………………………15

 4.1 道口交通控制模块………………………………………………………………………15 4.2 初始化程序………………………………………………………………………………15 4.3 主程序……………………………………………………………………………………15 4.4 外中断 1 中断服务程序…………………………………………………………………15 4.5 定时中断服务程序………………………………………………………………………16 4.6 控制程序清单……………………………………………………………………………17 (1)交通灯汇编程序…………………………………………………………………………17 (2)中断入口程序……………………………………………………………………………19 (3)主程序……………………………………………………………………………………19 (4)以下为 60s 管理………………………………………………………………………….19 (5)1s 计时程序;t0 中断程序……………………………………………………………..20 (6)显示程序…………………………………………………………………………………22 (7)延时程序…………………………………………………………………………………24 (8)119/120 车中断程序……………………………………………………………………24 第五章 调试及性能分析………………………………………………………………………26 5.1 红绿交通灯控制程序…………………………………………………………………26 5.2 特殊车辆通行时红外线检测电路的调试……………………………………………26 5.3AT89C52 调试及性能分析……………………………………………………………26 5.4 分析总结………………………………………………………………………………26 第六章 毕业设计总结…………………………………………………………………………27 致谢…………………………………………………………………………………………….28 参考文献……………………………………………………………………………………….29

 摘

 要

 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。

 随着社会经济的发展,城市交通问题越来越引起人们的关注。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。随着城市机动车量的不断增加,许多大城市如北京、上海、南京等出现了交通超负荷运行的情况,因此,80 年代后期,这些城市纷纷修建城市高速道路,在高速道路建设完成的初期,它们也曾有效地改善了交通状况。然而,随着交通量的快速增长和缺乏对高速道路的系统研究和控制,高速道路没有充分发挥出预期的作用。而城市高速道路在构造上的特点,也决定了城市高速道路的交通状况必然受高速道路与普通道路耦合处交通状况的制约。所以,如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。为此,进行了深入的研究,以下就城乡交通灯控制系统的电路原理。

 关键词:单片机;AT89C52;交通灯;74HC244

 第一章

 概述

 1 1 .1 1 单片机简介

 单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

 通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和 I/O 接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。

 单片机经过 1、2、3、3 代的发展,目前单片机正朝着高性能和多品种方向发展,它们的 CPU 功能在增强,内部资源在增多,引角的多功能化,以及低压底功耗。

 1 1 .2 2 市场需求

 近年来,随着单片机档次的不断提高,功能的不断完善,其应用日趋成熟、应用领域日趋扩大,特别是工业测控、尖端武器和日用家电等领域更是因为有了单片机而生辉增色。单片机应用技术已成为一项新的工程应用技术。

 当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在 19 世纪就已出现了。

  3 1.3 交通灯的由来与发展

 1858 年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号

 灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868 年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869 年 1 月 2 日,煤气灯爆炸,使警察受伤,遂被取消。

 电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914 年始安装于纽约市 5 号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。

 1918 年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。

  4 1.4 交通灯的 功能与 作用

 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968 年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。

  单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

  通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和 I/O 接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。

 单片机经过 1、2、3、3 代的发展,目前单片机正朝着高性能和多品种方向发展,它们的 CPU 功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。

 第二章

 总体设计方案

 2 2. .1 1 课题任务的控制要求

 智能交通灯控制系统模型采用单片机作为主控制器,用于双车道十字路口的车辆及行人的交通管理,每个方向具有左拐右拐及行人四种通行指示灯计时牌显示路口同性转换剩余时间,在出现紧急情况时可由交警手动实现全路口车辆禁行而行人通行的状态。另外,在特种车辆如 119,120 通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行的状态。15s 后系统自动恢复正常管理。其他还有 120s 与 60s 通行管理转换等功能。

 2 24 .4 方案论证

 2 24 .4 .1 1 方案一

 采用标准 at89c52 单片机作为控制器;通行倒计时显示采用 3 位 led 数码管;左拐、右

 拐、直行及行人四种通行指示灯采用双色高亮发光二极管;led 显示采用动态扫描,以节省端口数。特种车辆通行采用实施实时中断完成,识别方法采用红外线发射及接收方案。按以上系统框架设计,单片机端口资源刚好满足要求。该系统具有电路简单,设计方便,显示亮度高,好点较少,可靠性高等特点。整个电路组成框图如图所示。

 图 图 2 21 .1 采用 LED 动态扫描的交通灯控制系统

 2 1.4.2 方案二

 采用 at89c51 单片机作为控制器,通行倒计时显示采用 16×16 点阵 led 发光管,左拐、右拐、直行及行人 4 种通行指示也采用 16×16 点阵双色 led 发光管。该系统框架如图所示。列驱动采用 74 老师 95 以实现串行端口扩展,行驱动采用 4/16 译码器 74ls154 生成 16 条行选通信号线,再经过驱动器驱动对应的行线。每条行线上需要的较大的驱动电流,应选用较大功率三极管作为驱动管。这种方案的的图像显示逼真,单片机占用端口资源少;缺点是需要大量的硬件,电路复杂,耗电量大,在模型制作中较少采用。

 上电复位

 P1

  P2 AT89C52

 P0 INT1

 P3 串口通信 119、120 车辆监视 自 动\ 手动键南北通行灯(2 组)

 东西通行灯(2 组)

 3 位 LED 显示器(4 组)

 列扫描驱动

  图 图 2 22 .2 采用 16 ×6 16 点阵 LED 发光管设计的交通灯控制系统

 2 23 .4.3 方案三

 采用 at89c51 单片机作为控制器,通行倒计时及左拐右拐直行行人通行指示采用单块 led 液晶点阵显示器。这种方案的设计占用单片机的端口最少,硬件也少,耗电最小;虽然显示图案也很精美,但由于亮度太暗,晚上还得开背光灯,所以较少采用。

 2 2 .4.4

 总结

 通过以上综合分析可以看出,方案一具有综合设计优点,因此城市道口交通灯控制系统模型采用方案一。

 系统硬件电路的设计如图所示为采用 led 动态扫描的交通灯控制系统总电路原理图。

 整套电路系统有控制系统模块、通行灯输出控制显示模块、时间显示模块和自动特种车辆控制模块等组成。

  RXD TXD

 单 片 机

 I∕O电源 行 驱 动 器 列驱动器 74LS595 双色 LED 显示点阵 (每个路口 7 个)

 第三章 系统硬件电路的设计

 1 3.1 主控制系统

 主控制器采用 at89c52,是 atmel 公司生产的一块性能稳定的 8 位单片机。at89c52 具有1 个 8kb 的 fiash 程序存储器,1 个 512 字节的 ram,4 个 8 位的双向可位寻址址 i/o 端口,3 个 16 位的定时/计数器及 1 个串行口和 6 个向量二级中断结构。

 单片机的 p1 口及 p2 口分别用于空臵南北及东西的通行灯,p0 口及 p3.0~p3.2 口用于组 3 位 led 计时器的控制,特种车辆通过时使用外中断 1 口(p3.3)手动自动转换采用 p3.7按。

  图 图 . 3.1 1

 电路原理图

  图为电路原理图,在制作原理图的时候应注意元器件的封装余元期间是否相符,网络标号要一一对应以免对于后面制作印制板封装时连线不能连接而导致印制板制作错误。原理图中红外接收器七段数码管均为手工制作,在生成方案库,与生成元器件库之中制作。当图画完之后对于电路原理图的制作由生疏到熟悉,已能灵活运用 protel99se 软件中 sch 文件制作。

 在制作印制板封装之前电路原理图中需要先做出未知元器件的封装,在做这类封装时应注意:首先做元器件的封装时应在 pcb 的顶层制作,并且在做前应先将版层的页面属性进行适当的调整,其次再加焊盘时焊盘号应与元器件的引脚编号一致否则就会造成封装失败生成网络表时出现错误。而在做印制板封装是一定要注意要在 pcb 的禁止布线层,而且封装的元器件应在一个闭合的密封线内。做好后在规则里进行适当的调整,之后可以进行自动布线。最后就可以生成 3d 仿真图。在制作的过程中不仅熟悉了单片机的相关知识,而且也在此熟悉了 protel 99 se 在制作的过程中出现了不少的错误,但是经过复查与查资料最终还是将问题解决,并且在这过程中获得了不少的收获。

  3.2. . 通行灯输出控制

  道口交通灯只是采用高亮度红绿双色发光二极管,左拐、直行、右拐及行人各一个。当发光电流 6MA 时,按公式 R=(5-1.8) ∕0.006 计算,限流电阻应为行 510Ω。由于南北交通行时双向指示牌相同,因此每个端口应具有 12MA 的吸收电流能力。另外,人行道

 口按 4 个灯算 24MA 的吸收电流。这样在单片机的输出口需要接驱动电路 74HC244,以保护单片机的输出端口。

 3 3.3 时间显示模块

  道口通行剩余时间采用高亮红色 7 段 LED 发光数码管显示,采用共阳极数码管,如用单片机吸收电流驱动,列扫描驱动三极管,按每段 6MA 电流算,全显字形“8”时,每个数码管需 6MA×8=48MA。由于时间显示每个道口相同,4 组需 192MA,因此设计中采用中功率三极管 9012。由于单片机每个段码输出口吸收 24MA 电流,因此在电路设计中夜使用了驱动集成块 74HC244。

 4 3.4 特种车辆自动通行控制模块

 自动道口灯在特种车辆到来时能自动关闭所有绿灯,让特种车通行。设计中采用红外线发生装臵作为特种车辆的发信器,使用实时中断来响应特种车来响应特种车辆的通行要求。红外线接收器一般采用电视机上用的一体化红外接收器,具有很高的灵敏度和较强的抗干扰能力。

 5 3.5 电源电路

 由于整个电路采用的电源电压只需 5+V 电压,所以采用不可调的 3 端稳压器,用常用的LM7805就可以满足系统电源的要求。LM7805三段集成稳压电源内部由基准电压回路、恒流源、过流保护、过压保护和短路保护灯 8 部分组成,具有低功耗,高效率,纹波系数小,输出电压稳定等优点。

 6 3.6 硬件介绍说明

 3.6.1 AT 89C52. . 的引脚说明

 AT89C52 系列单片机,图是它们的引脚配臵,40 个引脚中,正电源和地线两根,外臵石英振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。现在我们对这些引脚的功能加以说明:

 3.6.22 AT89C52 的引脚说明

 AT89C52 系列单片机采用 40Pin 封装的双列直接 DIP 结构,右图是它们的引脚配臵,40 个引脚中,正电源和地线两根,外臵石英振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。现在我们对这些引脚的功能加以说明:图如下

 图 图 3.4

 2 AT89C52 引脚示意图

 Pin9:RESET/Vpd 复位信号复用脚,当 8051 通电,时钟电路开始工作,在 RESET 引

 脚上出现 24 个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器 PC 指向 0000H,P0-P3 输出口全部为高电平,堆栈指针写入 07H,其它专用寄存器被清“0”。RESET 由高电平下降为低电平后,系统即从 0000H 地址开始执行程序。然而,初始复位不改变 RAM(包括工作寄存器 R0-R7)的状态,8051 的初始态。8051 的复位方式可以是自动复位,也可以是手动复位,见下图 2。此外,RESET/Vpd 还是一复用脚,Vcc 掉电其间,此脚可接上备用电源,以保证单片机内部 RAM 的数据不丢失。

 图 图 3.5

 特殊引脚的功能接线 〃Pin30: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.6.3

 744 HC244 简介(见下图)

 74HC244 是一种带三态门的 8D 锁存器,其管脚示意图如下示:

  图 图 3.6 其中:1A-8A 为 8 个输入端。

 1Y-8Y 为 8 个输出端。

  1G, /2G

  三态允许端(低电平有效)

 极限值:

  电源电压

 …………………………………………. 7V

 输入电压 …………………………………………. 5.5V

 输出高阻态时高电平电压 …………………………. 5.5V

 工作环境温度

  54XXX …………………………………. -55~125℃

  74XXX …………………………………. 0~70℃

 存储温度 …………………………………………. -65~150℃

  第四章 系统主要程序的设计

 1 4.1 道口交通控制 模块

 系统控制程序主要分为以下几个模块:初始化程序、主程序、定时中断程序和特种车辆实时响应程序等。

 2 4.2 初始化程序

 初始化程序主要完成内存规划,定时器的工作模式、中断方式等的设定。由于子程序调用较多,因此初始化时堆栈指针设于 80h 处。定时器 t0、t1 设为 16 位定时器模式定时时

 间为 50ms,t0 为秒计时用,t1 为通行结束闪烁用。

 4 43 .3 主程序

 主程序主要负责总体程序管理功能,实现人机交互设定。由于采用动态扫描方式显示时间,因此主程序大部分时间要调用扫描显示程序。主程序流程图如图所示

 图 图 4.1

 主程序流程图 . 4.4 4 外中断 1 1 中断服务程序

 当有特种车经过时,车中发出红外线信号,其信号被道口控制板上的接收器接收,并输出一个低频触发外中断 1。中断处理流程图如图所示。

 开始 初始化 显示程序 P3.7=0? 键功能程序 Y N

  图 图 4.2

 外中断 1 1 中断服务程序流程图 4 4 .5 5 定时中断服务程序

 定时中断服务程序主要用于行车及行人的通行指示,按通行规则,红绿灯控制转换逻辑表如表所示 表 表 1 1

 道口通行方式控制码数据表 南北方向 端口 控制功能 120~110s 110~70s 70~60s 60~10s 10~0s P*.7 左拐红 0 0 0 1 1 P*.6 左拐绿 1 1 1 0 0∕1 P*.5 直行红 1 1 1 0 0 P*.4 直行绿 0 0 0∕1 1 1 P*.3 右拐红 0 1 1 1 1 P*.2 右拐绿 1 0 0 0 0∕1 P*.1 行人红 1 1 1 0 0 现场保护 外中断程序 关外中断 1 开定时器 T1 送全红灯,数据缓存 15s 倒计时 结束? 关定时器 T1,开外中断 1 现场恢复,中断返回 红灯 显示 Y N

 P*.0 行人绿 0 0 0∕1 1 1 道口控制字 66H 6AH 6AH∕7BH 99H 99H∕DDH 南北方向 P*.7 左拐红 0 0 0 0 0 P*.6 左拐绿 1 1 1 1 1 P*.5 直行红 0 0 0 0 0 P*.4 直行绿 1 1 1 1 1 P*.3 右拐红 0 1 1 1 1 P*.2 右拐绿 1 0 0 0 0∕1 P*.1 行人红 0 0 0 0 0 P*.0 行人绿 1 1 1 1 1 道口控制字 55H 59H 59H 59H 59H∕5DH

 通行规则如下:

 1 车辆南北直行、各路右拐,南北向行人通行。南北向行人通行时间为 1min,各路右拐比直行滞后 10s 开放。

 2 车辆南北向左拐、各路右拐,行人禁行。通行时间为 1min。

 3 车辆东西向直行、各路口右拐,东西向行人通行。东西向通行时间为 1min,各路右拐比直行滞后 10s 开放。

 4 车辆东西向左拐、各路右拐,行人禁行。通行时间为 1min。

 交通灯的 4 种通行规则,是以给控制红绿灯端口送控制码的方式实现的。它的原理是,将按不同规则通行时的各路口的红绿灯亮灭情况转换为单片机端口控制码。其指示灯功能

 通过 t0 定时中断服务程序实现。

 定时器 t0 定时溢出中断周期设为 50ms,终端累计 20 次(即 1s)时对 120s 倒计时单元减 1 操作。设计中将 4 种通行规则分成几种不同的亮灯方式,通过查询秒倒计时单元的数据,实现在不同的时间段给控制端口送不同的控制数据码。控制码分为 5 个时间段:120~110s、110~70s、70~60s、60~10s、10~0s。交通管理定时功能程序流程图如图所示。

 6 4.6 控制程序清单

 以下是城市道口交通灯控制系统的模型控制用汇编源程序 (1 1 )交通灯汇编程序 TIMEN

 EQU

 50H TIMESFR

 EQU

 51H CONR5

 EQU

 52H TIMED0

  EQU

 55H TIMED1

  EQU

 56H TIMED2

  EQU

 57H TIMED3

  EQU

 58H TIMED4

  EQU

 59H TIMED5

  EQU

 5AH TIMED6

  EQU

 5BH TIMED7

  EQU

 5CH SN

 EQU

 P1 EW

  EQU

  P2 SCAN

  EQU

  P3

 LEDOUT

 EQU

  P0 SNEWGLAG

 EQU

 09H 按键在扫描口的最高位,按一下,全红灯,再按一下,恢复原状态 定时器 t0、t1 溢出周期为 50ms,t0 为秒计数用

 T0中断程序 现场保护 关中断 T0 T0 初值重装 TIME<110? TIME<70? TIME<60? TIME<10? TIME<0? 南北/东西 标志位取反 中断返回 MOV SN,#66H MOV EW,#55H MOV SN,#6AH MOV EW,#59H MOV SN,#6AH MOV EW,#59H MOV SN,#99H MOV EW,#59H MOV SN,#99H MOV EW,#59H Y Y Y Y Y N N N N N

 图 图 4.3

 0 T0 定时中断服务程序流程图

 (2 2 )中断入口程序

 ORG

 0000H LJMP

 START ORG

 0003H RETI ORG

 000BH LJMP

  INTT0 ORG

  0013H LJMP

  INTT1 ORG

  001BH LJIMP

 INTT1 ORG

 0023H RETI

 (3 3 )

 主程序

 START:

 MOV SP,#80H MOV

 R0,#00H MOV

 R7,#8FH CLEARDISP: MOV

 @R0,#00H INC R0 DJNZ R7,CLEARDISP MOV TIMED0,#78H

 MOV TIMED1,#6EH MOV TIMED2,#46H MOV TIMED3,#3CH MOV TIMED4,#0AH CLR SNEWFLAG MOV TMOD ,#11H MOV TL0,#0B0H MOV TH0,#3CH MOV TL1,#0B0H MOV TH1,#3CH JB SCAN.7,SSST (4 4 )

 以下为 s 60s 管理

 LCALL

 DL1MS LCALL

 DL1MS LCALL

 DL1MS JB SCAN.7,SSST MOV TIMED0,#60 MOV TIMED1,#55 MOV TIMED2,#35 MOV TIMED3,#30 MOV TIMED4,#05 SSWAIT:

 JNB SCAN.7,SSWAIT LCALL

 DL1MS

 LCALL

 DL1MS LCALL

 DL1MS JNB SCAN.7,SSWAIT SSST: MOV TIME,TIMED0 LCALL TUNBCD MOV SN,#66H MOV EW,#55H SETB EA SETB PX1 SETB EX1 SETB ET0 SETB TR0 MOV R4,#14H MOV CONR5,#20 START1: LCALL DISPLAY JNB SCAN.7,KEYFUN SJMP START1 KEYFUN : LCALL DISPLAY LCALL DISPLAY JB

 SCAN.7,START1 CLR ET0 CLR TR0 MOV SN,#056H

 MOV EW,#056H MOV TIME,#00H LCALL TUNBCD KEYWAIT :LCALL DISPLAY JNB SCAN.7,KEYWAIT KEYY: LCALL DISPLAY JB SCAN.7,KEYY LCALL DISPLAY JB SCAN.7,KEYY KEYWAIT1: LCALL DISPLAY JNB SCAN.7,KEYWAIT1 MOV TIME,TIMED0 LCALL TUNBCD CLR SNEWFLAG SETB TR0 SETB ET0 AJMP START1 (5 5 )s 1s 计时程序

 0 t0 中断程序

 INTT0: PUSH ACC PUSH PSW CLR ET0 CLR TR0

 MOV A,#0B7H ADD A,TL0 MOV TL0,A MOV A,#3CH ADDC A,TH0 MOV TH0,A SETB TR0 DJNZ R4 ,OUTT00 MOV R4,#14H JB SNEWFLAG,INT22 DEC TIME MOV A,TIME CJNE A,TIMED1,LOOP11 LOOP11:JC LOOP22 MOV SN,#66H MOV EW,#55H LJMP OUTT0 LOOP22: MOV A,TIME CJNE A,TIMED2,LOOP33 LOOP33:JC LOOP44 MOV SN,#64H MOV EW,#59H LJMP OUTT0

 LOOP44: MOV A,TIME CJNE A,TIMED3,LOOP55 LOOP55: JC LOOP66 MOV 20H,SN CPL 04H CPL 00H MOV SN,20H MOV EW,#59H LJMP OUTT0 LOOP66: MOV A,TIME CJNE A,TMED4,LOOP77 LOOP77: JC LOOP88 MOV SN,#99H MOV EW,#59H LJMP OUTT0 LOOP88: MOV A,TIME JZ OUT88 MOV 20H,SN CPL 06H CPL 02H MOV SN,20H MOV 20H,EW CPL 02H

 MOV EW,20H LJMP OUTT0 OUT88: MOV TIME,TIMED0 CPL SNEWFLAG OUTT0: LCALL TUNBCD OUTT00: POP PSW POP ACC SETB ET0 RETI INT22: DEC TIME MOV A,TIME CJNE A,TIMED1,LOOP111 LOOP111:JC LOOP221 MOV EW,#66H MOV SN,#55H LJMP OUTT01 LOOP221:MOV A,TIME CJNE A,TIMED2,LOOP331 LOOP331: JC LOOP441 MOV EW,#6AH MOV SN,#59H LJMP OUTT01 LOOP441: MOV A,TIME

 CJNE A,TIMED3,LOOP551 LOOP551:JC LOOP661 MOV 20H,EW CPL 04H CPL 00H MOV EW,20H MOV SN,#59H LJMP OUTT01 LOOP661:MOV A,TIME CJNE A,TIMED4,LOOP771 LOOP771:JC LOOP881 MOV EW#99H MOV SN,#59H LJMP OUTT01 LOOP881:MOV A,TIME JZ OUT881 MOV 20H,EW CPL 06H CPL 02H MOV EW,20H MOV 20H,SN CPL 02H MOV SN,20H

 LJMP OUTT01 OUT881: MOV TIME,TIMED0 CPL SNEWFLAG OUTT01:LCALL TUNBCD POP PSW POP ACC SETB ET0 RETI (6 6 )

 显示程序

 显示数据在 70h~72h 单元内,用 3 位 led 共阳数码管显示,ledout 口输出段码数据, scan 口作扫描控制,每个数码管亮 1ms 再逐位循环 DISPLAY: MOV RI,#70H MOV R5,#OFEH PLAY:MOV A,R5 MOV SCAN,A MOV A,@R1 MOV DPTR ,#TAB MOVC A,@A+DPTR MOV LEDOUT,A LOOP6:LCALL

 DL1MS INC R1 MOV A,R5 JNB ACC.2,ENDOUT

 RL A MOV R5,A MOVLDEOUT,#0FFH AJMP PLAY ENDOUT:MOV LEDOUT,#0FFH MOV SCAN,#0FFH RET TAB:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,88H,0BFH 共阳段码表 “0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“不亮”,“A”, (7) 延时程序

 1ms 延时程序,led 显示程序用 DL1MS :MOV R6,#14H DL1: MOV R7,#19H DL2: DJNZ R7,DL2 DJNZ R6,DL1 RET TUNBCD: PUSH ACC PUSH PSW PUSH B MOV A,TIME

 MOV B,#100 DIV AB MOV 72H,#0AH

 JJ0:MOV A,B MOV B,#10 DIV AB MOV 71H,A JNZ

 JJ1 MOV 7A,72H SUBB A#0AH JNZ JJ1 MOV 71H,#0AH JJ1: MOV 70H,B POP B POP PSW POP ACC RET (7)0 119/120 车中断程序; INT11: PUSH ACC PUSH PSW CLR EX1 CLR ET0 CLR TR0 MOV SN ,#055H MOV EW,#055H MOV TIMESFR,TIME

 MOV TIME,#0FH MOV CONR5,#20 LCALL TUNBCD SETB ET1 SETB TR1 POP PSW POP ACC RETI INTT1:PUSH ACC PUSH PSW CLR ET1 CLR TR1 MOV A,#0B7H ADD A,TL1 MOV TL1,A MOV A,#3CH ADDC A,TH1 MOV TH1,A SETB TR1 DJNZ CONR5,OUTT333 MOV CONR5,#14H DEC TIME LCALL TUNBCD

 MOV A,TIME JZ OUT444 OUTT333: SETB ET1 POP PSW POP ACC RETI OUTT444:CLR TR1 CLR ET1 MOV TIME ,TIMESFR LCALL TUNBCD SETB ET0 SETB TR0 SETB EX1 POP PSW POP ACC RETI END

 第五章调试及性能分析

 设计时按红绿交通灯控制程序和特种车辆经过中断程序两大部分电路进行调试。

 . 5.1 1 红绿交通灯控制程序

 不通过 t0,直接按表中算好的数码送出来控制灯,观察其逻辑状态是否符合要求。可多次、反复的进行调试,直至其逻辑关系正确。值得注意的是,南北方向、东西方向的指示灯要同时调试。

 2 5.2 特殊车辆通行时红外线检测电路的调试

 在模拟小车中放一块红外线发射模块,将示波器输入端接在交通灯控制的红外接收模块的输出引脚上,当小车通过路口时,检测红外线是否被接受。若该脚输出为低电平,则说明可以接收到信号,电路正常。

 AT89C52 是一个低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可反复擦写的Flash 只读程序存储器和 256 bytes 的随机存取数据存储器(RAM),器件采用 ATMEL 公司

 的高密度、非易失性存储技术生产,兼容标准 MCS-51 指令系统,片内臵通用 8 位中央处理器和 Flash 存储单元,功能强大的 AT89C52 单片机可为您提供许多较复杂系统控制应用场合。

 2 5.3AT89C52 调试及性能分析

 AT89C52 有 40 个引脚,32 个外部双向输入/输出(I/O)端口,同时内含 2 个外中断口,3 个 16 位可编程定时计数器,2 个全双工串行通信口,2 个读写口线,AT89C52 可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和 Flash 存储器结合在一起,特别是可反复擦写的 Flash 存储器可有效地降低开发成本。

  AT89S52 是一个低功耗,高性能 CMOS 8 位单片机,片内含 8k Bytes ISP(In-system programmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS-51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash 存储单元,功能强大的微型计算机的 AT89S52 可为许多嵌入式控制应用系统提供高性价比的解决方案。

 AT89S52 具有如下特点:40 个引脚,8k Bytes Flash 片内程序存储器,256 bytes 的随机存取数据存储器(RAM),32 个外部双向输入/输出(I/O)口,5 个中断优先级 2 层中断嵌套中断,2 个 16 位可编程定时计数器,2 个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。

 4 5.4 分析总结

 本系统以 at89c52 单片机为核心,程序调试阶段采用 w78e516b 进行在线编程及修改,可大大加快调试进度。设计的交通灯可用于十字路口的车辆及行人的交通管理,显示采用 3 位

 7 段数码管,可以直观的显示红绿灯的开放和关闭的时间;设计中应用了两种倒计时显示方式,120s 倒计时适用于车流量较大的城市,60s 倒计时可用于中小城市;功能完整与效果与正式道口管理红绿灯完全一致。

  第六章 毕业设计 总结

 本系统就是充分利用了 89C52 芯片的 I/O 引脚。系统统采用 AT89C52 系列单片机Intel8051 和可编程并行 I/O 接口芯片 8255A 为中心器件来设计交通灯控制器,实现了能根据实际车流量通过 8031 芯片的 P1 口设臵红、绿灯燃亮时间的功能;红绿灯循环点亮,倒计时剩 5 秒时黄灯闪烁警示(交通灯信号通过 PA 口输出,显示时间直接通过 8255 的 PC口输出至双位数码管);车辆闯红灯报警;绿灯时间可检测车流量并可通过双位数码管显示。。系统不足之处不能控制车的左、右转、以及自动根据车流改变红绿灯时间等。这是由于本身地理位子以及车流量情况所定,如果有需要可以设计扩充原系统来实现 。

 通过这次毕业设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。

 通过这次单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。设计结果能够符合题意,成功完成了此次实习要求,我们不只在乎这一结果,更加在乎的,是这个过程。这个过程中,我们花费了大量的时间和精力,更重要的是,我们在学会创新的基础上,同时还懂得合作精神的重要性,学会了与他人合作。我在老师的精心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域这对我今后进一步学习计算机方面的知识有极大的帮助。在此,忠心感谢老师以及许多同学的指导和支持。我会继续努力的学习,大胆创新,使自己得到更大的提升。

  致谢 三年的学习生活即将结束,回顾三年的学习生活,感受颇深,收获丰厚。在 论文的写作过程中,有很多困难,无论是在理论学习阶段,还是在论文的选题、 资料查四询、开题、研究和撰写的每一个环节,无不得到导师的悉心指导和帮助。

 借此机会我向导师表示衷心的感谢!同时,我要感谢授课的各位老 师,正是由于他们的传道、授业、解惑,让我学到了专业知识,并从他们身上学 到了如何求知治学、如何为人处事。同时我也要感谢我的同学给予我的帮助,他 们为我撰写论文提供了不少建议和帮助。我要感谢,非常感谢我的指导老师。他为人随和热情,治学严谨细心。在闲聊中他总是能像知心朋友一样鼓 励你,在论文的写作和措辞等方面他也总会以“专业标准”严格要求你,从选题、 定题开始,一直到最后论文的反复修改、润色始终认真负责地给予我深 刻而细致地指导,帮助我开拓研究思路,精心点拨、热忱鼓励。正是张老师的无 私帮助与热忱鼓励,我的毕业论文才能够得以顺利完成,谢谢!还要感谢 三年的大学生活,感谢我的家人和那些永远也不能忘记的朋友,他们的支持与情

 感,是我永远的财富。

 参考文献 [1]

 胡花. 单片机原理及应用技术[M] .北京:交通大学出版社,2008 [2]

 王效华,张咏梅. 单片机原理与应用[M]. 北京:交通大学出版社,2007 [3]

 李江全,王卫兵,李玲 .计算机控制技术[M].北京:机械工业出版社,2007 [4]

 杨素行. 模拟电子技术基础简明教程(第三版)[M].北京:高等教育出版社,2006 [5]

 于孟尝 .数字电子技术基础简明教程(第三版)[M]. 北京:高等教育出版社,2006 [6]

 楼然苗,李光飞 .单片机课程设计指导[M] .北京:航空航天出版社,2007

相关热词搜索: 交通灯 毕业设计 单片机