城市交通灯控制系统毕业论文

上传人:1888****888 文档编号:39873894 上传时间:2021-11-12 格式:DOC 页数:29 大小:386.02KB
收藏 版权申诉 举报 下载
城市交通灯控制系统毕业论文_第1页
第1页 / 共29页
城市交通灯控制系统毕业论文_第2页
第2页 / 共29页
城市交通灯控制系统毕业论文_第3页
第3页 / 共29页
资源描述:

《城市交通灯控制系统毕业论文》由会员分享,可在线阅读,更多相关《城市交通灯控制系统毕业论文(29页珍藏版)》请在装配图网上搜索。

1、 I摘摘 要要城市交通信号控制是通过对交通流量的调节以达到改善人和货物的安全运输,提高运营效率。交通系统是一个具有随机性、模糊性和不确定性的复杂系统,建立数学模型非常困难,有时甚至无法用现有的数学方法加以描述。目前大多采用的是自适应信号控制,它需要数学建模,且不考虑交通延误、停车次数等。所以经典控制法很难得到满意的效果。而模糊控制是一种无须建立数学模型的控制方法,它能模仿有经验的交警指挥交通时的思路,达到很好的控制效果。近些年来我国的许多学者也都以不同的思路对单个交叉口、交通干线的模糊控制进行了研究,但因研究的局限性,实际中得到应用的寥寥无几,本文实现基于 PLC 的交通信号的控制系统。 根据

2、前后相流量来决定信号灯配时的模糊控制系统的理论研究成果,用 PLC 实现单个十字路口交通信号灯模糊控制的方法,以单个十字路口 4 相位交通灯为例,把 PLC作为一个模糊控制器,采用梯形图编程。通过实验保证了系统运行稳定可靠,能根据不同的交通流量进行模糊控制决策,优化信号灯的配时,从而可以有效的解决交通流量不均衡、不稳定带来的问题。近年来随着科技的飞速发展,一个以微电子技术、计算机技术和通信技术为先导的信息革命正在蓬勃发展。计算机技术作为三者之一,怎样与实际应用更有效的结合并发挥其作用。单片机作为计算机技术的一个分支,正在不断的应用到实际生活中,同时带动传统控制检测的更新。在实时检测和自动控制的

3、应用系统中,单片机往往是作为一个核心部件使用,针对具体应用对象的特点,配以其它器件来加以完善。靠的是交通信号灯的自动指挥系统,来实现交通的井然有序。交通信号灯控制方式很多。本系统采用美国 ATMEL 公司生产的单片机 AT89S51,以及其它芯片来设计交通灯控制。实现了通过 AT89S51 芯片的 P1 口设置红、绿灯点亮的功能,通过 AT89S51 芯片的RXD、TXD 输入、输出设置显示时间。交通灯的点亮采用发光二极管实现,时间的显示采用七段数码管实现。单片机系统采用的直流供电。为了系统稳定可靠,系统内集成了“看门狗”芯片,避免了系统因为死机而停止工作的情况发生。系统实用性强、操作简单、扩

4、展性好。关键词:关键词: 交通灯 PLC 智能控制 IIAbstractCity traffic signal control is through the adjustment of the traffic flow in order to improve the safety of transport of people and goods, improve operational efficiency. Transport system is a random, fuzzy and uncertainty of complex systems, it is difficult to bu

5、ild mathematical model, sometimes impossible to use existing mathematical methods described. At present most adaptive signal control is used, it needs mathematical model, without considering traffic delays, number of stops. So the classical control method is very difficult to get a satisfied effect.

6、 Fuzzy control is a kind of does not need to establish the mathematical model to control methods, it can imitate experienced police directing traffic, ideas, achieve good control results. In recent years, many Chinese scholars have different ideas of fuzzy control to the traffic single intersection,

7、 were studied, but because of the limitations of the research, application of scanty practice, the implementation of traffic signal control system based on PLC.Decision fuzzy signal control system theory research results according to the method and flow, using PLC to achieve a single traffic lights

8、at the crossroads of fuzzy control, the single crossroads 4 phase of traffic lights, for example, the PLC as a fuzzy controller, using ladder programming. Through the experiment to ensure the reliable operation of the system, can be fuzzy control decision according to the different traffic flow, opt

9、imize signal distribution, which can effectively solve traffic imbalance, instability problems.In recent years, with the rapid development of science and technology, a microelectronics technology, computer technology and communication technology as the forerunner of the information revolution is boo

10、ming. As one of the three computer technology, combined with practical application more effective and play its role. Single chip microcomputer as a branch of computer technology, has been applied to real life, and promote the traditional control detection update. In real-time detection and automatic

11、 control system, SCM is often used as a core component, according to the characteristics of the specific application object, match with other devices to be perfect. Relying on the automatic command system of traffic signal lamp, traffic in order to achieve. A lot of traffic signal control. This syst

12、em uses the American ATMEL company AT89S51 microcontroller, and other chip to design the control of traffic lights. Through the implementation of the AT89S51 chip set P1 mouth red, green light function, through the AT89S51 chip RXD, TXD input, output is set to display the time. Traffic lights lit by

13、 the light emitting diode, the time display using seven digital tube. DC power supply used in SCM system. In order to the system is stable and reliable, the system integrates watchdog chip, to avoid the system crashed and stop work because of the situation. The system practical, simple operation, go

14、od scalability.Key words:The traffic lights PLC intelligent control青岛理工大学琴岛学院专科毕业设计说明书(论文) 目目 录录摘摘 要要.I IABSTRACTABSTRACT.IIII1 1 引言引言.1 12 2 交通管理方案论证交通管理方案论证.2 22.1 设计任务.22.2 方案介绍.23 3 交通灯系统硬件设计交通灯系统硬件设计.5 53.1 单片机概述.53.2 系统构成.53.3 芯片选择与介绍 .64 4 交通灯软件设计交通灯软件设计.11114.1 程序设计流程图.114.2 延时的设定 .134.3 程序的

15、主控制循环调用.154.4 对现有程序的扩充.155 5 实验平台实验平台.17175.1 实验平台 .175.2 实验步骤 .17结结 论论.1919致致 谢谢.2020参考文献参考文献.2121附附 录录.2222青岛理工大学琴岛学院专科毕业设计说明书(论文)- 1 -1 1 引言引言今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在 19 世纪就已出现了。1858 年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868 年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上

16、,安装了世界上最早的煤气红绿灯。它由红绿两块以旋转式方形玻璃提灯组成,红色表示“停止” ,绿色表示“注意” 。1869 年1 月 2 日,煤气灯爆炸,使警察受伤,遂被取消。1914 年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市 5 号大街的一座高塔上。红灯亮表示“停止” ,绿灯亮表示“通行” 。1918 年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,当车辆接近时,红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下喇叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路

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

18、统方法难以解决的问题。道路拥挤现象日趋严重,造成的经济损失越来越大,并一直保持大比例的增长。现在交通系统已不能满足经济发展的需求。由于生活水平的提高,人们对交通运输的安全性及服务水平提出了更高的要求。在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。 中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的作用。智能交通灯的管理比重修一条马路无论在经济、交通运行速率上都有很好的效益、更加节约资源。使交管人员有更多的精力投入到管理整个城市交通控

19、制,带来更大的经济和社会效益,为创造美好的城市交通形象发挥更多的作用。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 2 -2 2 交通交通管理方案论证管理方案论证2.12.1 设计任务设计任务东西(A) 、南北(B)两干道交于一个十字路口,各干道有一组红、左转绿、绿三个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。红灯的设计时间为40 秒,绿灯及左转绿灯各为 20 秒。设 A 道和 B 道的车流量相同。2.22.2 方案介绍方案介绍把设计任务细化为四个状态,其对应状态:如图 1-1 图 1-1 状态转换图整个交通灯控制由四个状态组成,可以用程序设计实现,也可用时序逻辑实现

20、.以下方案就是分别用了这两种方法。设计思想:采用分模块设计的思想,程序设计实现的基本思想是一个计数器 , 选择一个单片机,其内部为一个计数,是十六进制计数器,模块化后,通过设置或程序清除来实现状态的转换, 由于每一个模块的计数多不是相同, 这里的各模块是以预置数和计数器计数共同来实现的,所以要考虑增加一个置数模块,其主要功能细分为,对不同的状态输入要产生相应状态的下一个状态的预置数, 如图中 A 道和 B 道,分别为次干道的置数选择和主干道的置数选择。以主干道为例,简述其设计思想。如前分A 道为 40 秒红灯,B 道绿灯 20 秒A 道为 20 秒红灯,B 道左转 20 秒绿灯A 道为 20

21、秒绿灯,B 道为 40 秒红灯A 道左转 20 秒绿灯,B 道为 20 秒红灯青岛理工大学琴岛学院专科毕业设计说明书(论文)- 3 -析,已经确定该系统有四个状态,而置数子模块可定要将下一状态的预置数准备好,所以很容易得到主干道的置数表如:表 1.1表 1.1 置数表状态主干道预置数次干道预置数004020012020(左转)1020401120(左转)20由该表,就可以通过程序循环的方法设计该模块,主要思想是通过数据判断指令、跳转指令实现,由主控制器计时和中断产生的四个状态去译码,从而得到不同的输出,即预置数,由上分析可用一个计数器和跳转指令去完成的预置数。而红绿灯的显示也是一样,由状态分析

22、可以得出红绿灯的变化表如:表 1.2表 1.2 红绿灯变化表状态主干道灯显示次干道灯显示00红灯绿灯01红灯左转绿灯10绿灯红灯11左转绿灯红灯通过这张表就可以用组合电路实现该功能了,可以用数据选择器的思想,在本系统中,直接通过门电路的译码,接下来就是计数模块了,其主要的功能细分为,要从预置数开始递减计数,一个状态结束,通过判断,通知主控制模块,使之进入下一模块。还有一个必须考虑到的就是,预置数必须在下一个状态来之前准备好,而红绿灯的状态变化,必须和计数状态同步,于是引起预置数变化的程序要超前于系统本身的状态变化,所以,系统中的两个状态转换时,在上一状态结束时设置预置数,而控制红绿灯的是随着系

23、统本身状态的变化而变化,体现在本子电路中就是有两组电路去判断符合的状态。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 4 -状态转换表如:表 1.3表 1.3 状态转换表状态主干道灯显示次干道灯显示00(15S)红灯绿灯01(05S)红灯黄灯10(15S)绿灯红灯11(05S)黄灯红灯本方案分三步:(1)要建立三路信号灯的控制系统,本设计采用 7408 芯片通过组合逻辑控制三路灯的显示关系。(2)建立显示控制系统,本设计采用 74190 芯片倒计时控制,每个方向用两片相连实现,另外用 74153 芯片,因为分析中设置的时间末位均为 5,所以只要用一片 74153 对高位置位,将低位的初值预

24、置锁定为 5,而高位则根据需要由反馈部分提供预置值。(3)建立反馈和细节连接部分,本部分主要解决显示和灯控的同步问题本系统采用倒计时系统减为 0,如当系统减为 0 时通过两个 D 触发器得到两个变量,即为开头分析中的状态,通过它的变化得到不同的逻辑关系,驱动 74153 控制哪组灯亮(对应关系如表所示),另外他还要同步反馈到显示系统的置数环节。注意:本实验中若采用更复杂的四片 74190 控制主干道的两组灯,再用八片 74153分别对 74190 置数可实现任意数值的交通灯系统。另外对 7408 片子的控制红灯的端口用一个与门将一端再接一个频率一定的方波,使一边为黄灯时,另一边的红灯在闪烁。方

25、案比较:方案 1(以下称 1)用了模块设计,而方案 2(以下称 2)采用的是一般设计,相比之下 1 有较强的可读性和较强的可修改性,而 2 则在设计上显得较简单,设计纯朴,便于测试,它的优势则在于提供了一条较为便捷的解决方案。2 首先将许多逻辑关系简化到极点,而后将其一起集成用较少的芯片去完成所需功能。我们从中可以得出的是,我们最终的设计应该尽量使用模块化设计。对工程设计人员来说,将来的产品无论从修改还是升级考虑对有好处,但另外我们又需将设计简单化,因此我觉得在设计初期尽可能的简单化设计,而一旦设计的各项测试通过了,在有可能的条件下将设计模块化,所以本设计以第一方案为主进行。 青岛理工大学琴岛

26、学院专科毕业设计说明书(论文)- 5 -3 交通灯系统硬件设计交通灯系统硬件设计3.13.1 单片机概述单片机概述单片机是由运算器、控制器、存储器、输入设备以及输出设备共五个基本部分组成的。单片机是把包括运算器、控制器、少量的存储器、最基本的输入输出口电路、串行口电路、中断和定时电路等都集成在一个尺寸有限的芯片上。通常,单片机由单个集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和 I/O 接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过 1、2、3、3 代的发展,目前单片机正朝着高性能和多品种方向发展,它们的 CPU 功能

27、在增强,内部资源在增多,引脚的多功能化,以及低电压、低功耗。可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称 PC 机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用

28、上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型” ,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能 IC 卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领

29、域的机器人、智能仪表、医疗器械了。它主要是作为控制部分的核心部件。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。3.23.2 系统构成系统构成电路板一块,AT89S51 单片机一片,74HC164 芯片八片,七段数码管八个。74LS04 反向器一片,发光二极管 13 个(8 个绿的,4 个红的用于交通控制,1 个用于标识电源),7805 三端稳压电源一个,一个按键,一条数据下载线。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 6 -系统结构框图如:图 3-1图 3-1 系统结构框图系统各部分工作:(1)程序设置初始时间,通过 AT89S51 单片机内部相应

30、寄存器来实现。(2) 由 AT89S51 单片机的定时器每秒钟通过 P3.0 口向 74HC164 的数据端口送信息,由 74HC164 的输出口显示红、绿、黄灯的点亮时间情况;由 AT89S51 的P1.0、P1.1、P1.2、P1.3 口显示每个灯的点亮情况。(3) AT89S51 通过程序设置各个信号灯的点亮时间,通过程序设置左转绿、绿、红时间依次为 20 秒、20 秒、40 秒循环,由 AT89S51 的 P3 口向 74HC164 的数据口输出。(4)通过 AT89S51 单片机的 P3 口来控制系统是工作。(5)74HC164 的 A、B 口用于串行输出时间位,经过串并转换送到七段

31、数码管的八的引脚。而 P1 口用于输出控制信号而通过 74LS04 反向器实现控制各个灯的情况它采用5V 的直流电来驱动二极管。(6)AT89S51 本身集成了看门狗指令,当系统出现异常看门狗将发出溢出中断。通过专用端口输出,引起 RESET 复位信号复位系统。3.33.3 芯片选择与介绍芯片选择与介绍3.3.13.3.1 AT89S51AT89S51 芯片芯片选用的 AT89S51 与同系列的 AT89C51 在功能上有明显的提高,最突出是的可以实现在线的编程。用于实现系统的总的控制。其主要功能列举如下:1、为一般控制应用的 8 位单片机2、晶片内部具有时钟振荡器(传统最高工作频率可至 33

32、MHz)3、内部程式存储器(ROM)为 4KB键盘控制返回返回AT89S51单片机系统LCD 显示与LED 倒计时模块接口电路74HC164青岛理工大学琴岛学院专科毕业设计说明书(论文)- 7 -4、内部数据存储器(RAM)为 128B5、外部程序存储器可扩充至 64KB6、外部数据存储器可扩充至 64KB7、32 条双向输入输出线,且每条均 可以单独做 I/O 的控制8、5 个中断向量源9、2 组独立的 16 位定时器10、1 个全双工串行通信端口11、8751 及 8752 单芯片具有数据保密的功能12、单芯片提供位逻辑运算指令AT89S51 各引脚功能介绍:如图 3-2图 3-2 AT8

33、9S51 引脚功能图VCC:ATAT89S51 电源正端输入,接+5V。VSS:电源地端。XTAL1:单芯片系统时钟的反向放大器输入端。XTAL2:系统时钟的反向放大器输出端,一般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了,此外可以在两个引脚与地之间加入一个 20PF 的小电容,可以使系统更稳定, 避免噪声干扰而死机。 RESET:AT89S51 的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51 便能完成系统重置的各项动作,使青岛理工大学琴岛学院专科毕业设计说明书(论文)- 8 -得内部特

34、殊功能寄存器之内容均被设成已知状态,并且至地址 0000H 处开始读入程序代码而执行程序。EA/Vpp:EA为英文External Access的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部 EPROM中)来执行程序。因此在 8031 及 8032 中,EA 引脚必须接低电平,因为其内部无程序存储器空间。如果是使用 8751 内部程序空间时,此引脚要接成高电平。此外,在将程序代码烧录至 8751 内部 EPROM 时,可以利用此引脚来输入 21V 的烧录高压(Vpp) 。ALE/PROG:ALE 是英文Address Latch E

35、nable的缩写,表示地址锁存器启用信号。ATAT89S51 可以利用这个引脚来触发外部的 8 位锁存器(如 74LS373) ,将端口 0 的地址总线(A0A7)锁进锁存器中,因为 ATAT89S51 是以多工的方式送出地址及数据。平时在程序执行时 ALE 引脚的输出频率约是系统工作频率的 1/6,因此可以用来驱动其他周边晶片的时基输入。此外在烧录 8751 程序代码时,此引脚会被当成程序规划的特殊功能来使用。PSEN:此为Program Store Enable的缩写,其意为程序储存启用,当 8051 被设成为读取外部程序代码工作模式时(EA=0) ,会送出此信号以便取得程序代码,通常这支

36、脚是接到 EPROM 的 OE 脚。ATAT89S51 可以利用 PSEN 及 RD 引脚分别启用存在外部的 RAM 与EPROM,使得数据存储器与程序存储器可以合并在一起而共用 64K 的定址范围。PORT0(P0.0P0.7):端口 0 是一个 8 位宽的开路电极(Open Drain)双向输出入端口,共有 8 个位,P0.0 表示位 0,P0.1 表示位 1,依此类推。其他三个 I/O 端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0 在当作 I/O 用时可以推动 8 个 LS 的 TTL 负载。如果当 EA 引脚为低电平时(即取用外部程序代码或数据存储器) ,P0

37、 就以多工方式提供地址总线(A0A7)及数据总线(D0D7) 。设计者必须外加一个锁存器将端口 0 送出的地址锁住成为 A0A7,再配合端口 2 所送出的 A8A15 合成一组完整的 16 位地址总线,而定位地址到 64K 的外部存储器空间。PORT2(P2.0P2.7):端口 2 是具有内部提升电路的双向 I/O 端口,每一个引脚可以推动 4 个 LS 的 TTL 负载,若将端口 2 的输出设为高电平时,此端口便能当成输入端口来使用。P2 除了当作一般 I/O 端口使用外,若是在 ATAT89S51 扩充外接程序存储器或数据存储器时,也提供地址总线的高字节 A8A15,这个时候 P2 便不能

38、当作 I/O 来使用了。PORT1(P1.0P1.7):端口 1 也是具有内部提升电路的双向 I/O 端口,其输出缓冲器可以推动 4 个 LS TTL 负载,同样地,若将端口 1 的输出设为高电平,便是由此端口来输入数据。如果是使用 8052 或是 8032 的话,P1.0 又当作定时器 2 的外部脉冲输入脚,而 P1.1 可以有 T2EX 功能,可以做外部中断输入的触发引脚。PORT3(P3.0P3.7):端口 3 也具有内部提升电路的双向 I/O 端口,其输出缓冲器可以推动 4 个 TTL 负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容

39、的读取或写入控制等功能。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 9 -其引脚分配如下:P3.0:RXD,串行通信输入。P3.1:TXD,串行通信输出。P3.2:INT0,外部中断 0 输入。P3.3:INT1,外部中断 1 输入。P3.4:T0,计时计数器 0 输入。P3.5:T1,计时计数器 1 输入。P3.6:WR:外部数据存储器的写入信号。P3.7:RD,外部数据存储器的读取信号。3.3.23.3.2 74HC16474HC164 芯片介绍芯片介绍74HC164 为串行输入、并行输出移位寄存器,74HC164 为单向总线驱动器。在串行口为方式 0 状态,即工作在移位寄存器方式,

40、波特率为振荡频率的十二分之一。器件执行任何一条将 SBUF 作为目的寄存器的命令时,数据便开始从 RXD 端发送。在写信号有效时,相隔 一个机器周期后发送控制端 SEND 有效,即允许 RXD 发送数据,同时,允许从 TXD 端输出移位脉冲。第一帧(8 位)数据发送完毕时,各控制信号均恢复原状态,只有 TI 保持高电平,呈中断申请状态。第一个 74HC164 把第一帧数据并行输出,LED1 显示该数据。然后,用软件将 TI 清 0,发送第二帧数据。第二帧数据发送完毕,LED1 显示第二帧数据,第一帧数据串行输入给第二个 74HC164,LED2 显示第一帧数据。依此类推,直到把数据区内所有数据

41、发送出去。应该注意,数据全部发送完后,第一帧数据在最后一个 LED 显示。由于 TXD 端最多可以驱动 8 个 TTL 门。3.3.33.3.3 74LS0474LS04 输出信号与信号灯输出信号与信号灯要使行人能看见信号灯的情况,必须把 P1 口输出的信号进行放大,这里我们用74LS04 反向器,当极性为高电平时晶闸管导通,该支路指示灯亮;当极性为低电平时关断,该支路指示灯灭。LED 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点亮。 七段数码管的显示及与 74HC164 的连接显示不同的数字如 SP,g,f,e,d,c,b,a 管角上加上 0FE所以上为伏,不亮其余为高电

42、平,全亮则显示为。74LS04(6 反向器)主要对信号起了反向作用。其它器件的功能如:7805 的功能,既提供稳定的+5V 电压。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 10 -3.3.43.3.4 交通灯控制线路图交通灯控制线路图 青岛理工大学琴岛学院专科毕业设计说明书(论文)- 11 -4 4 交通灯软件设计交通灯软件设计4.14.1 程序设计程序设计流程图流程图(1) 程序设计总框图:如图 4-1 开 始键盘事件处理等 待 键 盘 事 件初始化显示程序处理图 4-1 程序设计框图青岛理工大学琴岛学院专科毕业设计说明书(论文)- 12 -(2)程序详细流程图:如图 4-2开始设置

43、定时器开中断赋初值F0=1R0,R1 分别送 A。调用计时程序并调用延时R2=011Flag0=1跳到 SECR2=021Flag1=1跳到 THR,F0=1R2=03Flag1=1跳到 FOUR2=04标志位清0,跳到 FIRR0=00R2 加 1,跳到 DIAOYR1,R0 分别送 A。调用计时程序并调用延时青岛理工大学琴岛学院专科毕业设计说明书(论文)- 13 -图 4-2 程序详细流程图流程图说明:图中定时器在每 50ms 中断一下,设置为循环 20 次(此时为 1 秒) ,每 1 秒以后,R0,R1 自动减 1。程序中的判断在相等情况下从右边出,不相同的情况往下走。4.24.2 延时

44、的设定延时的设定延时方法可以有两种一种是利用 AT89S51 内部定时器的溢出中断来确定 1 秒的时间,另一种是采用软件延时的方法。4.2.14.2.1 计数器初值计算计数器初值计算定时器工作时必须给计数器送计数器初值,这个值是送到 TH 和 TL 中的。他是以加法记数的,并能从全 1 到全 0 时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值设定为 C 和计数初值设定为 TC 可得到如下计算通式: TC=MC式中,M 为计数器模值,该值和计数器工作方式有关。在方式 0 时 M 为 213 ;在方式 1 时M 的值为 216;在方式 2 和 3 为 28 ; 算法公式:T=(

45、MTC)T计数 或 TC=MT/T计数T计数是单片机时钟周期的 12 倍;为定时初值如单片机的主脉冲频率为12,经过分频方式TMAX213微秒8.192 毫秒方式TMAX216微秒65.536 毫秒显然秒钟已经超过了计数器的最大定时间,所以我们只有采用定时器和软件相结合的办法才能解决这个问题实现秒的方法:我们采用在主程序中设定一个初值为 20 的软件计数器和使 T1 定时 50 毫秒。这样每当 T1 到 50 毫秒时 CPU 就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,CPU 先使软件计数器减,然后判断它是否为零。为 0 表示秒已到可以返回到输出时间显示程序。4.2.2

46、4.2.2 相应程序代码相应程序代码()定时器的设置定时器需定时毫秒,故1 工作于方式。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 14 -初值计算: TC=MT/T计数21650ms/1us=15536=3CBOH START: MOV TMOD, #10H ;令为定时器方式 MOV TH0, #3CH ;装入定时器初值 MOV TL0, #0BOH SETB EA ; 打开总中断 SETB ET1 ;开1 中断SETB ER ;启动1 计数器CLR FLAG1 CLR FLAG2 CLR FLAG3 MOV R3,#20H ;软件计数器赋初值()相应中断服务子程序 ORG001B L

47、JMPDSD ORG 0030H DSD: INC R3 MOV TH0, #3CH ;重装入定时器初值 MOV TL0, #BOH CJNE R3,#20,FHDEC R0 DEC R1MOV R3,#00HFH: RETI程序的软件延时:AT89S51 的工作频率为 033MHZ,我们选用的 AT89S51 单片机的工作频率为 12MHZ。机器周期与主频有关,机器周期是主频的 12 倍,所以一个机器周期的时间为12*(1/12M)=1us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定 1 秒的时间。具体的延时程序分析:DELAY: MOV R4,#08H 延时

48、1 秒主程序 DE2: LCALL DELAY1 DJNZ R4, DE2 RETDELAY1:MOV R4,#00H ;延时 125us 子程序 D1: MOV R5,#00H青岛理工大学琴岛学院专科毕业设计说明书(论文)- 15 - D2: DJNE R5,DL2 DJNE R4,D1 RET DELAY1 为一个双重循坏 循环次数为 256*256=65536 所以延时时间=65536*2=131072us 约为 125us DELAY R4 设置的初值为 8 主延时程序循环 8 次,所以 125us*8= 1 秒由于单片机的运行速度很快其他的指令执行时间可以忽略不计。4.34.3 程序

49、的主控制循环调用程序的主控制循环调用用来实现四个状态之间的转换,代码如下:DIAOY:;循环控制子程序CJNE R2, #01H, AA;判断不相等刚跳转JB FLAG1, AA;FLAG1 为 1 则跳转LJMP SEC ;跳转到 SECAA:CJNE R2, #02H, AAAJB FLAG2, AAASETB F0LJMP THRAAA: CJNE R2, #03H, BBJB FLAG3, BBLJMP FOUBB:CJNE R2, #04H, BBB;判断不相等则跳转CLR F0;F0 位清 0CLR FLAG1CLR FLAG2CLR FLAG3LJMP FIRBBB: CJNE

50、R0, #00H, SGLINC R2;R2 加 1LJMP DIAOY4.44.4 对现有程序的扩充对现有程序的扩充 当由于紧急需要对道路进行长时间通行时,就要保持该道路更长时间的通行。下面以东西方向为例进行紧急通行为例。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 16 -紧急通行是平常通行的特例,只要将相应的代码去掉就可以实现延长本车道的通行时间。设置通行时间为 20 秒。核心代码如下:FIR: MOV P1, #00HSETB P1.0CLR P1.1CLR P1.2CLR P1.3MOV R0, #20MOV R1, #20CJNE R0, #00H, SGL LJMP FIR要

51、实现东西方向的左转通行时,只需要修改 FIR 中的代码就可以了。时间显示只要修改 R0 和 R1 就可以了。要实现南北方及左转,只要把 SGL 换成 SGL1、把 FIR 中代码进行相应的修改就可以了。由于时间紧张,程序有不完善的地方。原程序见程序实现代码。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 17 -5 5 实验平台实验平台5.15.1 实验平台实验平台我们采用的是 Keil Software 生产的 Cx51 编译器。运行在 Windows XP 操作平台下。 开启计算机进入 Keil C51 编译器介面。如图 5-1图 5-1 Keil C51 编译器介面5.25.2 实验步

52、骤实验步骤编写程序代码:程序代码分为 3 个模块:中断模块,循环模块,算法模块。 (见程序实现代码)按照系统硬件连线图连接好系统并调试:调试程序 打开 Keil 软件,新建工程; 选择芯片; 新建文档,把编写好代码写入文档并保存了 ASM 文件; 把保存的文档加载到 Source Group;编译程序;设置转换成 16 进制;运行程序的结果;2. 把编译好的 16 进制文件(jtd.hex) 输入单片机 AT89S51 仿真器和对其进行初始化。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 18 -3给实验板进行通电,观察运行结果,不一致则跳到第一步进行反复调试,直到与预定目的一致。以下是在

53、程序调试过程中出现在情况:通电以后,把程序装好,数码管是的数字不变,按复位键后重新开始还是如此。经过和同组人的共同分析后,发现是中断系统在计时到了 1 秒以后,赋的初值 R0,R1 没有减 1,修改如下:DSD: INC R3MOV TH1, #3CHMOV TL1, #0B0HCJNE R3, #20, FH;判断是否够 1 秒DEC R0DEC R1MOV R3, #00H;R3 清 0FH:RETI;中断返回通电以后,东西、南北方向的时间均递减,20 秒以后,东西方向的 20 秒用完,变成东西左转、南北各 20 秒,此后,时间显示和红绿灯不再变化,一直保持这一状态。经过老师和同组人的共同

54、努力,终于找到原因,问题出在循环控制过程中,当经过第一次 20 秒判断后,寄存器 R2 加 1,当再次运行到循环控制处时,判断 R2 与#01H 相同,程序跳到 SEC 处执行,此后一直如此。解决方法如下:设置 3 个标记位:FLAG1 BIT 00H;标记 00H 位FLAG2 BIT 01HFLAG3 BIT 02H在循环控制中加入判断如:DIAOY: CJNE R2, #01H, AA;判断不相等刚跳转JB FLAG1, AA;FLAG1 为 1 则跳转LJMP SEC ;跳到 SEC在跳到 SEC 后,在运行到该程序后加给 FLAG1 置数,程序如下:SEC: CLR P1.0SETB

55、 P1.1CLR P1.2CLR P1.3MOV R0, #20MOV R1, #20SETB FLAG1LJMP SGL其它几部分与之相同的处理。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 19 -结结 论论本系统就是利用了 AT89S51 芯片的 I/O 引脚。系统采用美国 ATMEL 公司生产的单片机AT89S51,以及其它芯片(如:74HC164、74LS04 六位反向器、L7805 三端稳压电源)来设计交通灯控制器,实现了红灯亮 40 秒,绿灯和左转绿灯各亮 20 秒。并通过 AT89S51 来控制 74LS04 芯片的输出口设置红、绿灯燃亮的功能和控制 74HC164 来实现

56、在七段数码管上的时间显示;为了系统稳定可靠系统内集成了“看门狗”芯片,避免了系统因为死机而停止工作的情况发生。系统设计简便、实用性强、操作简单、程序设计简便。 系统不足:时间设定中没有黄灯的等待闪烁时间,以及自动根据车流改变红绿灯时间,此外,还没有充分考虑的把现代管理、人工智能运用到交通的控制中,来计算交通控制点之间的距离,来更合理的安排红、绿灯的持续时间,使城市的交通管理更加人性化。使人们远离目前的交通拥塞的现象。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 20 -致致 谢谢通过这次毕业设计,我对单片机有了更深的体会。我了解和掌握了一些编程思想和对 I/O 口的使用。对单片机的 I/O

57、 口的使用的条件有更深的理解,对单片机的各个管脚功能的理解也加深了,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。这次的毕业设计让我把单片机的理论知识用在实践中,实现了理论和实践相结合,从中更懂得理论的是实践的基础,实践有能检验理论的正确性,让我受誉非浅,对我以后参加工作或者继续学习将会产生巨大的帮助和影响。在以后的学习过程中我要对单片机有更深的了解,但是在设计过程中还是感觉对单片机了解的不够深入,虽然做出来了,也是平时老师课堂上讲的一些过于单片机的一些指令的用法和一些常用的语句,让我发现自己的不足指令运用不够熟练,平时要多写多练。通过本次毕业设计,我在指导老师的精

58、心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,并对当前电子领域的研究状况和发展方向有了一定的了解,单片机领域这对我今后进一步学习计算机方面的知识有极大的帮助。在此,我忠心感谢同学朋友对我的指导与帮助。在未来的工作和学习中,我将以更好的成绩来回报各位领导、老师和同学。青岛理工大学琴岛学院专科毕业设计说明书(论文)- 21 -参考文献参考文献1胡汉才 单片机原理及其接口技术 M 清华大学出版,19962蔡美琴 MCS-51 系列单片机系统及其应用 高等教育出版社 2004.23付家才 单片机控制工程实践技术M 化学工业出版社,2004.54潘新民 微型计算机控制技术 M 人民邮电

59、出版社,1999.95余锡存 单片机原理及接口技术M 西安电子科技大学出版社,2000.76雷丽文 等.微机原理与接口技术M 电子工业出版社,1997.27蒋万君 在论循环时序电路的简便设计J 机电一体化,2005 第 5 期8周立功 增强型 80C51 单片机速成与实战 北京航空航天大学出版社 2004.59何立民 单片机应用技术选编 北京航空航天大学出版社 2004.310何立民 单片机应用技术选编 北京航空航天大学出版社 2004.311何立民 MCS-51系列单片机应用系统设计 北京航空航天大学出版社, 1995.12李华 MCS -51系列单片机实用接口技术M 北京航空航天大学出版社

60、,199313周航慈 单片机应用程序设计技术M 北京航空航天大学出版社,1991. 14张志良等 单片机原理与控制技术M 机械工业出版社,2001 年7 月第1 版15陆坤 电子设计技术1 电子科技大学出版社, 199716梁文海 单片机AT89C2051构成的智能型频率计J 现代电子技术,2002 17谢自美 电子线路设计实验测试M 华中理工大学出版社,200118吴金戎,沈庆阳 8051单片机实践与应用 M 清华大学出版社, 2003. 青岛理工大学琴岛学院专科毕业设计说明书(论文)- 22 -附附 录录程序实现代码程序实现代码;此程序分为四个部分,循环运行。东西方向通行 20S(南北方向

61、、东西南北左拐弯停)一部分 SETB P1.0;东西左拐弯 20S(东西南北方向、南北左拐弯停)一部分 SETB P1.1;南北通行 20S(东西方向、东西南北左拐弯停)一部分 11111;南北左转弯 20S(东西南北方向、东西左拐弯停)一部分 SETB P1.3。;共设计 12 个发光二极管,4 个红的,8 个绿的。;P1.0 控制东西方向的 2 个红灯和 2 个绿灯;P1.2 控制南北方向的 2 个红灯和 2 个绿灯;P1.1 和 P1.3 控制东西南北左拐弯的 4 个绿灯。FLAG1 BIT 00H;标记 00H 位FLAG2 BIT 01HFLAG3 BIT 02HORG 0000H;

62、程序执行起始处LJMP START;跳转到标号 START 执行ORG 001BH;定时器 1 中断程序入口地址LJMP DSDORG 0030HSTART: MOV TMOD, #10H;定时器 1 的选择MOV TH1, #3CH;给定时器预置数MOV TL1, #0B0HSETB EA;打开总中断SETB ET1;定时器 1 溢出中断允许SETB TR1;启动定时器CLR FLAG1;标记位清 0CLR FLAG2CLR FLAG3MOV R3, #00H;1 秒定时器的初值FIR: MOV P1, #00H;P1 口清 0MOV R2, #00H;给 R2 初值SETB P1.0;给

63、P1.0 口置 1CLR P1.1;给 P1.0 口置 0CLR P1.2青岛理工大学琴岛学院专科毕业设计说明书(论文)- 23 -CLR P1.3MOV R0, #20;给 R0 赋初值MOV R1, #40SGL: JB F0, SGL1;F0 为 1 财转移到 SGL1MOV A, R0;把 R0 的值送入 A 中LCALL DY1 ;调用 DY1MOV A, R1LCALL DY1MOV A, R0LCALL DY1MOV A, R1LCALL DY1LCALL DELAY;调用 DELAY 延时子程序SJMP DIAOY;跳转到 DIAOY 循环控制子程序SGL1: MOV A, R

64、1LCALL DY1MOV A, R0LCALL DY1MOV A, R1LCALL DY1MOV A, R0LCALL DY1LCALL DELAYDIAOY:;循环控制子程序CJNE R2, #01H, AA;判断不相等刚跳转JB FLAG1, AA;FLAG1 为 1 则跳转LJMP SEC ;跳转到 SECAA:CJNE R2, #02H, AAAJB FLAG2, AAASETB F0LJMP THRAAA: CJNE R2, #03H, BBJB FLAG3, BBLJMP FOUBB:CJNE R2, #04H, BBB;判断不相等则跳转青岛理工大学琴岛学院专科毕业设计说明书(论

65、文)- 24 -CLR FLAG3LJMP FIRBBB: CJNE R0, #00H, SGLINC R2;R2 加 1LJMP DIAOY;控制东西左转的绿灯亮SEC: CLR P1.0SETB P1.1CLR P1.2CLR P1.3MOV R0, #20MOV R1, #20SETB FLAG1LJMP SGL;控制南北红、绿灯亮THR: CLR P1.0CLR P1.1SETB P1.2CLR P1.3MOV R1,#40MOV R0, #20SETB FLAG2LJMP SGL控制南北左转的绿亮FOU: CLR P1.0CLR P1.1CLR P1.2SETB P1.3MOV R1

66、, #20MOV R0, #20SETB FLAG3LJMP SGL;显示数字处理子程序(算法模块)DY1: 青岛理工大学琴岛学院专科毕业设计说明书(论文)- 25 -MOV B, #10 ;把#10 送到专用寄存器 BDIV AB ;进行除法运算MOV DPTR, #TAB;把 TAB 的地址的指针送到 DPTR MOVC A,A+DPTR;指针相加后单元内容送到寄存器 A 中LCALL DY;调用发送子程序 MOV A, B;把除法的余数送到 A 中 MOV DPTR, #TAB MOVC A,A+DPTR LCALL DYRET;延时发送程序DY:MOV SBUF, A;把 A 中的数送到缓冲区 MOV R7, #0FH;给 R7 置数DJNZ R7, $;循环跳转RET;延时子程序DELAY:MOV R4, #00HD1:MOV R5, #00HDJNZ R5, $DJNZ R4, D1RET;中断子程序DSD: INC R3MOV TH1, #3CHMOV TL1, #0B0HCJNE R3, #20, FH;判断是否够 1 秒DEC R0DEC R1MOV R3, #00H

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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