毕业设计(论文)-用8051单片机设计--交通信号灯模拟控制系统的设计.doc_第1页
毕业设计(论文)-用8051单片机设计--交通信号灯模拟控制系统的设计.doc_第2页
毕业设计(论文)-用8051单片机设计--交通信号灯模拟控制系统的设计.doc_第3页
毕业设计(论文)-用8051单片机设计--交通信号灯模拟控制系统的设计.doc_第4页
毕业设计(论文)-用8051单片机设计--交通信号灯模拟控制系统的设计.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科生毕业设计(论文)( 2011 届 ) 学 生 姓 名 院 (系) 黄石理工学院独立本科段 专 业 机电一体化专业 学 号 导师姓名、职称 论 文 题 目 用8051单片机设计 交通信号灯模拟控制系统的设计 目 录【摘要】1绪 论31 单片机的概述41.1单片机交通控制系统的选题背景41.2单片机交通控制系统选择题的现实意义及作用41.3单片机交通信号灯现状51.4单片机交通控制系统主要研究的内容62 单片机交通控制系统总体设计72.1单片机交通控制系统通行方案设计72.2单片机交通控制系统的功能要求82.2.1倒计时显示82.2.2 车流量检测及调整82.2.3时间手动设置92.2.4 紧急处理92.2.5违规检测92.3单片机交通控制系统的基本构成及原理93 系统硬件电路的设计113.1系统硬件总电路构成及原理113.1.1系统硬件电路构成113.1.2系统工作原理113.2单片机的选择123.2.1单片机的概述123.2.2 8051单片机内部组成部分123.2.3 8051芯片的主要性能133.2.4 8051设计的连线图提示133.2.5 8051芯片最小系统143.3其它硬件介绍及连接163.3.1车流量检测电路及模拟163.3.2违规检测电路及模拟163.3.3八段LED数码管173.3.4其它器件183.3.4.3按键控制194 系统软件程序的设计204.1程序主体设计流程204.2理论基础知识204.2.1 定时器原理204.2.2软件延时原理214.2.3 中断原理214.2.4红绿灯时间调整原理224.3子程序模块设计224.3.1按键扫描程序224.3.2状态灯显示及判断234.3.3 LED倒计时显示234.3.4车流量检测中断服务子程序244.3.5紧停及违规中断服务子程序244.3.6红绿灯时间调整程序244.3.7消抖动程序254.4交通信号灯模拟控制系统主程序254.5系统软件调试254.5.1 TKS仿真器254.5.2集成开发环境KEIL264.5.3系统软件调试26结 论28致 谢29参考文献30附 录31黄石理工学院毕业设计(论文)用8051单片机设计交通信号灯模拟控制系统的设计【摘要】交通控制系统是现代社会随着物流、出行等交通发展产生的一套独特的公共管理系统。要保证高效安全的交通秩序,除了制定一系列的交通规则,还必须通过一定的科技手段加以实现。本文在对目前交通控制进行深入分析的基础上,运用检测传感器,实时调整智能化控制的技术,将传感器监测、实时调整车辆通行时间的算法与单片机控制作用相结合,提出了基于单片机的交通控制系统设计方案。8051单片机的交通灯控制系统有着交通灯显示、LED倒计时车流量检测及调整、违规检测、紧急处理、时间模式手动设置、可倒计时显示、急车强行通过、交通异常状况判别处理等相关功能。理论证明该系统能够简单、经济、有效地疏导交通,提高交通路口的通行能力。本设计主要做了如下几方面的工作:一是确定系统交通控制的总体设计,包括,十字路口具体的通行方案设计和基本工功能,二是进行传感器的硬件电路、显示电路等的设计和基本功能要求。三是进行软件系统的设计,对于本系统,本人采用单片机汇编语言编写,总体上完成了软件的编写。【关键词】交通控制,传感检测,8051单片机,倒计时显示,异常状况判别With the 8051 microcontrollerTraffic lights simulation control system design【Abstract】 Traffic control system is a modern society with logistics, travel etc transportation development produce a unique set of public management system. To ensure an effective safety traffic order, in addition to establish a series of traffic rules, still must pass a certain scientific means to realization. In this paper, at present the traffic control based on the analysis, using detection sensor, regulates real-time intelligent control technology, sensor monitoring, regulates real-time traffic time algorithm combining with single-chip microcomputer control function is proposed based on SCMs traffic control system design scheme.The 8051 single-chip microcomputer control system has the traffic lights, LED lights display traffic detection and adjust the countdown, violate compasses detection, emergency treatment, time models manual Settings, countdown display, urgent car forcibly through, traffic abnormality discriminant processing and other related functions. Theory, it is proved that the system can simple, economic and effective relieves traffic, improve traffic intersection traffic capacity of.This design has the following several aspects mainly do the work: it is a certain system of traffic control of general design, including, intersection specific traffic scheme design and basic work function, 2 it is sensors hardware circuit, display circuit of design of the basic function and requirement. Three is software system design for the system, I adopted MCU assembly language, overall completed software code.【Keywords】traffic control, sensor, the 8051 microcontroller, countdown shows, abnormal situation discrimination绪 论随着经济的不断发展,交通系统的发展和延伸,城乡交通问题越来越引起人们的关注。当前,交通信号控制系统的发展方向是数字化,功率小,人性化,方便人车路三者关系的协调。城市和乡间道路的流量问题等特点,也决定了城市城乡交通的状况必然受城市高流量车道与乡间道路耦合处交通状况的制约。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。而目前的交通灯 ,大都粗略地根据该路口车辆的多少预设一个适当的红绿灯转换周期 ,这是一种固定的配时方案 ,随着车辆的增多 ,这种配时方案的缺陷从两方面表现出来:一是由于路口车辆实际的通行流量变化很大 ,如上下班时间和晚上、平日和周末以及节、假日等 ,这就不可避免地出现这样的现象 ,当路口车辆很多时 ,红绿灯转换周期相对较快 ,对预设的设计就不是很合理,这就需要一种人性化的,根据实际情况来判断和适应的交通系统。城乡的交通控制系统的更加人性化将大大提高交通控制的效率,减少浪费的时间,更加安全便捷,充分利用现有交通资源。近几年来PLD技术的飞速发展,使得电子电路的设计方法发生了根本性变化,基于PLD的EDA技术在电子信息、通信、自动控制等领域的作用越来越重要。EDA技术以现代电子计算机为设计工具和设计平台,以硬件描述语言为系统逻辑描述的主要手段,自动、高速地完成数字系统的逻辑综合、仿真模拟和布局布线等工作。使用基于EDA技术的PLD来开发数字系统,可以大大缩短设计时间,提高系统的可靠性。本设计研究的内容就是采用硬件描述语言VHDL按模块化方式进行设计,然后进行编程,时序仿真等。本系统使用EDA技术设计了交通灯控制器软件基于VHDL语言实现了本设计的控制功能,实现数据的输入,输出,计算,显示及程序退出等功能。整个系统系统设计简便、实用性强、操作简单、程序设计简便。将路口红绿灯的各种亮灯情况定义不同的状态,路口状况定义为触发条件,基于此模型的交通信号灯控制系统可充分利用现有交通资源,缓解城市交通压力。1 单片机的概述1.1单片机交通控制系统的选题背景随着人口的快速增多,交通工具的爆炸发展,以及道路资金源的有限性,交通控制就应运而生。在人类的生活、工作环境中,交通扮演着极其重要的角色,人们的出行时时刻刻与交通打着交道。自18世纪工业革命以来,工业发展带动整个交通运输的发展,从而催生了单独的交通控制学问与管理机构。交通控制系统是现代社会随着物流、出行等交通发展产生的一套独特的公共管理系统。要保证高效安全的交通秩序,特别是电子学技术的发展和成熟能比较好的解决系统建立硬软件方面要求的技术难题。目前,交通控制方面的研究能完全实现自动智能化,甚至将整个区域整合成一个统一的系统范围,还能根据正常时段以及特定时段的情况进行科学的自动调整。交通对于社会的工业经济和人们的生活生产有着十分重要的意义。随着单片机和传感技术的迅速发展,自动检测领域发生了巨大变化,交通自动监测控制方面的研究有了明显的进展,并且必将以其优异的性能价格比,逐步取代传统的交通控制措施。1.2单片机交通控制系统选择题的现实意义及作用随着经济发展,城市化速度加快,机动车辆占有量急剧增加,由此引发出日益严重的交通问题:交通拥挤甚至堵塞,交通事故频繁,空气和噪声污染严重,公共运输系统效率下降等。解决这一问题通常有两种办法,一种是修路造桥,这对道路交通状况的改善是一种最直接的办法,但它需要巨额的投资,且在城市中心区受拆迁的限制,很难实施另一种是在现有的道路交通条件下,实施交通控制和管理,充分发挥现有道路的通行能力,大量事实已经证明这种方法的有效性。通常,一个经验丰富的交通警察能在极短的时间内把一个交叉路口的交通阻塞缓解或解除,但他的作用范围往往局限于单个交叉路口。而现代的道路交通非常复杂,常常是几个或几十个甚至是成百上千个路口互相关联,在这种情况下,任何一个经验丰富的交通警察都无能为力了因此,人们越来越关注把先进的科学技术用于交通管理,从而促进了交通自动控制技术的不断发展。道路交通控制的目的可定义为:在确定的行政规定约束下,采用合适的营运方法来确保公共和私人运输方式具有最佳的交通运行状态。围绕这一目的研制出的道路交通控制系统,把受控对象看成一个整体,采用对交通流科学地时间分割的方法,最大限度地保证交通流运动的连续性,使受控区域的交通流减少冲突,同时平稳地、有规则地运动。道路交通控制的作用主要表现为以下几个方面:(1)改善交通秩序,增加交通安全。(2)减少交通延误,提高经济效益。(3)降低污染程度,保护生态环境。(4)节省能源和土地消耗。人、车、路是构成城市交通的三大要素,要探讨我国城市交通特点,必须从分析这三大要素的基本特点着手。与世界发达国家相比,我国人的社会交通意识还没有真正形成,少数领导部门交通观念淡薄,对城市交通建设在国民经济建设中的重要性认识不足,交通政策时有失误。机动车驾驶员文化水平低,又缺乏系统训练,尤其缺乏心理素质,感知能力和判断能力的培养,所以,对人、车的运动特征不能很好掌握。行人与非机动车驾驶员普遍不懂,甚至漠视交通法规。交通管理人员交通工程和心理学知识贫乏,感知,分析交通信息和处理特发性事件的能力不强。因此,想方设法提高全社会的文化素质,健全交通法规,加强交通宣传教育,增强人的社会交通意识,培养良好的交通习惯,使参与交通的每个人都认识到交通的重要性,自觉顺应交通规律,是建立我国城市交通控制系统,使之有效运行的前提条件。路是交通的物质基础,有路才能通车,行人。我国是一个文明古国,许多城市已有上千年的历史,城市布局和道路结构是在漫长的历史进程中逐步形成的,近几年虽然作了些改建和扩建,但毕竟还难以冲破原来的基本格局。我国城市道路普遍存在的弊端是:(1)路网密度低;(2)交通干道少;(3)路口平面交叉;道路状况与车辆状况的综合作用形成了我国城市交通的特殊性,主要表现是:城市路网稀,干道少,间距大,市区人口稠密,出行需求集中,迫使车辆集中于少数干道上行驶。至于中小城市 ,干道特征更为明显,往往只有一两条干道贯穿全。1.3单片机交通信号灯现状1.3.1国内外交通控制技术当前世界各国广泛使用的最具代表性却有实施的城市道路交通信号控制系统有英国的TRANSYT与SCOOTS交通控制系统和澳大利亚的SCATS系统。在信号机的发展历程中,自适应理论一直受到各研究机构的欢迎,比如上面所述的SCOOTS和SCATS系统。最近几年,国外仍偏向于引进自适应理论来对交通信号控制系统进行研制,特别是美国有十几个大学或研制机构正在研制自适应交通信号控制系统,具有代表性的有美国亚利桑那大学研制的RHODES。我国交通领域的发展起步较晚,基本是从新中国建国之后,随着各方面的条件的成熟以及社会发展的要求,才建立及建全交通控制系统的。城市交通是一个高度综合而又复杂的问题,必须从政策,机构,体制,管理,收费价格,基础设施建设和投资各个方面同时入手解决。我国城市经济和社会的高速发展使得社会对交通的需求急剧增加。也对此提出了严峻的挑战,一句城市发展的规划,建设以及运行原照,在广泛借鉴和吸取国外先进经验的基础上,建立并完善适合我国国情的城市交通系统。1.3.2交通控制存在的问题我国城市交通运输的现状和存在的问题,借鉴国外城市交通管理的先进经验,强调建立城市交通管理体制的重要性,提出加强城市交通灯研究的交通规划,建立稳定的交通基础设施建设的资金出道,实行公交优先政策,建立先进的交通信息系统等对策。随着城市机动车增长速度的加快,1994年卧轨城市机动车辆已接近500万辆。20世纪90年代以来,经济的发展加快,从1985年到位1995年,机动车增长率达13%左右,近几年更是增多。然而,在此同时,城市道路建设规模也在加大,我国城市普遍存在道路密度,道路面积率偏低的问题,这是我国城市及其他大城市有机的一个重要原因。我国城市道路的密度只有6.8km每平方千米,而在某些方面20世纪80年代,世界发达国家就已到达20km每平方千米。20世纪90年代,我国部分城市道路面积率,北京为5.9%,上海为6.4%,而国外东京为13.8%,巴黎为25%,普遍高于我国。近几年,国家虽不断加大城市道路建设的力度,但仍赶不上车辆的增长速度,且与世界其他国家相比,差距仍很大。出租车以及公交的发展运营情况并不尽人意,虽然车辆和线路长度增长,但运营速度成了瓶颈,新增的运力被运输效率低下所抵消。交通管理方面水平还欠发展,随着交通需求越来越旺盛,而我国城市中小交通管理和交通安全的现代化设施却做得不足。在车辆、道路和交通管理系统,城市交通信号控制系统,城市交通管制中应用人工智能技术,信息 采集和信息提供技术等方面都与发达国家有很大差距。近几年,虽然有部分城市研究和引进一些国外先进的交通信号管理系统,但是由于交通管理设施不足等原因,我国交通事故率居高不下。城市车流行驶速度逐年下降,目前不少城市交通数量年年增长,但运输速度普遍下降,这都源于交通通行不佳。1.4单片机交通控制系统主要研究的内容因为本课程设计是交通灯的控制设计,所以要了解实际交通灯的变化情况和规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1东西红灯,南北绿灯通车,。过一段时间转状态2南北绿灯灭,黄灯闪烁几次,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯灭,闪几次黄灯,南北仍然红灯。最后循环至状态1。注意:双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。2 单片机交通控制系统总体设计2.1单片机交通控制系统通行方案设计设在十字路口,分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。其具体状态如下图所示。说明:黑色表示亮,白色表示灭。交通状态从状态1开始变换,直至状态6然后循环至状态1,周而复始,即如图2-1所示:直至状态6然后循环至状态1,通过具体的路口交通灯状态的演示分析我们可以把这四个状态归纳如下:图2-1 交通状态东西方向红灯灭,同时绿灯亮,南北方向黄灯灭,同时红灯亮,倒计时20秒。此状态下,东西向禁止通行,南北向允许通行。东西方向绿灯灭,同时黄灯亮,南北方向红灯亮,倒计时2秒。此状态下,除了已经正在通行中的其他所有车辆都需等待状态转换。南北方向红灯灭,同时绿灯亮,东西方向黄灯灭,同时红灯亮,倒计时20秒。此状态下,东西向允许通行,南北向禁止通行。南北方向绿灯灭,同时黄灯亮,东西方向红灯亮,倒计时2秒。此状态下,除了已经正在通行中的其他所有车辆都需等待状态转换。开始8051初使化 四个路口红灯亮 东西红灯亮,南北绿灯亮,延时 东西红灯亮,南北黄灯闪烁,延时 东西绿灯亮,南北红灯亮,延时 东西黄灯闪烁,南北红灯亮,延时图2-2 交通信号灯模拟控制系统设计程序流程图2.2单片机交通控制系统的功能要求本设计能模拟基本的交通控制系统,用红绿黄灯表示禁行,通行和等待的信号发生,还能进行倒计时显示,车流量检测及调整,交通违规处理和紧急处理等功能。2.2.1倒计时显示倒计时显示可以提醒驾驶员在信号灯灯色发生改变的时间、在“停止”和“通过”两者间作出合适的选择。驾驶员和行人普遍都愿意选择有倒计时显示的信号控制方式,并且认为有倒计时显示的路口更安全。倒计时显示是用来减少驾驶员在信号灯色改变的关键时刻做出复杂判断的1种方法,它可以提醒驾驶员灯色发生改变的时间,帮助驾驶员在“停止”和“通过”两者间作出合适的选择 。2.2.2 车流量检测及调整随着我国经济建设的蓬勃发展,城市人口和机动车拥有量在急剧增长,交通流量日益加大,交通拥挤堵塞现象日趋严重,交通事故时有发生。车辆检测器作为智能交通系统的基本组成部分,在智能交通系统中占有重要的地位。现阶段,车辆检测器检测方式有很多,各有其优缺点,如红外线检测器、地磁检测器、机械压电检测器,磁频检测器、波频检测器、视频检测器等。一般车流量检测器采用传感器+单片机+外围器件来实现。 而且,目前国内使用的红绿灯都是固定的红绿灯时间,并自动切换。红灯时间和绿灯时间,是根据道口东西向和南北向的车流量,利用统计方法确定的。交通警察不断观察十字路口的两个方向,根据车辆密度和流速决定是否切换红绿灯,以保证最佳的道路交通控制状态。2.2.3时间手动设置除系统根据车流量自动控制调整,也可以通过键盘进行手动设置,增加了人为的可控性,避免自动故障和意外发生,并再紧急状态下,可设置所有灯变为红灯。键盘是单片机系统中最常用的人机接口,一般情况下有独立式和行列式两种。前者软件编写简单,但在按键数量较多时特别浪费I0口资源,一般用于按键数量少的系统。后者适用于按键数量较多的场合,但是在单片机I0 口资源相对较少而需要较多按键时,此方法仍不能满足设计要求。本系统要求的按键控制不多,且I0口足够,可直接采用独立式。2.2.4 紧急处理交通路口出现紧急状况在所难免,如特大事件发生,救护车等急行车通过等,我们都必须尽量允许其畅通无阻,毕竟在这种情况下是分秒必争的,时时刻刻关系着公共财产安全,个人生死攸关等。由此在交通控制中增设禁停按键,就可达到此目的。2.2.5违规检测交通规则必须人人遵守,但是违反规则,如闯红灯等,也时有发生,交警等交通管理人员虽然可以进行实时监管,但是耗费精力,在路口设置检测传感器就可以进行自动的警报提示。2.3单片机交通控制系统的基本构成及原理单片机设计交通灯控制系统,可用单片机直接控制信号灯的状态变化,基本上可以指挥交通的具体通行,当然,接入LED数码管就可以显示倒计时以提醒行使者,更具人性化。本系统在此基础上,加入了违规检测电路和车流量检测电路为单片机采集数据,单片机对此进行具体处理,及时调整控制指挥,为了超越视觉指挥的局限性,同时接上蜂鸣器,在听觉上加强了指挥提醒作用。图2-3 交通信号灯模拟控制系统原理图据此,本设计系统以单片机为控制核心,连接成最小系统,由车流量检测模块,违规检测模块,和按键设置模块等产生输入,信号灯状态模块,LED倒计时模块和蜂鸣器状态模块接受输出。系统的总体框图如上所示。键盘设置模块对系统输入模式选择及具体通行时间设置的信号,系统进入正常工作状态,执行交通灯状态显示控制,同时将时间数据倒计时输入到LED数码管上实时显示。在此过程中还要实时捕捉违规检测和紧急按键信号,以达到对异常状态进行实时控制的目的。急停按键和违规检测随时调用中断。在模式选择上,若为自动模式,将不断调用车流量检测模块对车流量进行检测统计,到达一定时间将修正通行时间一满足不同路况的需要。3 系统硬件电路的设计3.1系统硬件总电路构成及原理实现本设计要求的具体功能,可以选用8051单片机及外围器件构成最小控制系统,12个发光二极管分成4组红绿黄三色灯构成信号灯指示模块,8个LED东西南北各两个构成倒计时显示模块,车流量检测传感器采集流量数据,光敏传感器捕获违规信号,若干按键组成时间设置和模式选择按钮和紧急按钮等,以及用1个蜂鸣器进行报警。3.1.1系统硬件电路构成本系统以单片机为核心,组成一个集车流量采集、处理、自动控制为一身的闭环控制系统。系统硬件电路由车流量检测电路、单片机、违规检测电路,状态灯,LED显示,按键,蜂鸣器组成。其具体的硬件电路总图如图3.1所示。其中P0,P1,用于送显两片LED数码管,P2用于控制红绿黄发光二极管,XTAL1和XTAL2接入晶振时钟电路,REST引脚接上复位电路,P3.2即INT1接违规检测电路和紧停/东西时间设置键J,P3.3即INT1接车流量检测电路,P3.6接南北时间设置键S,P3.7接自动模式选择返回键F,P3.4接蜂鸣器。3.1.2系统工作原理系统上电或手动复位之后,系统等待模式选择设置键按下,模式分两种:红绿灯时间自动和红绿灯时间设置。若此时F键按下,则设置为自动模式,若此时按下的是S键,则设置为时间设置模式,依次按S若干次,J键若干次可设置好两个方向的红绿灯时间,再按F键确认。其实这个过程就是将存储时间值的寄存器进行设置,以及标志是否要进行车流量检测及调整。接下来,系统必须先显示状态灯及LED数码管,将状态码值送显P2口,将要显示的时间值的个位和十位分别送显P0和P1口,在此同时以50ms为周期,用软件方法计时1秒,到达1s就要将时间值减1,刷新LED数码管。时间到达一个状态所要全部时间,则要进行下一状态判断及衔接,并装入次状态的相应状态码值以及时间值。当然,还要开启两个外部中断,其一为违规信号或禁停信号输入,一旦信号有效,中断开始,进入中断服务子程序,开启蜂鸣器禁止全部通行,当按下F键,中断结束返回。其二为车流量检测信号输入,若检测到车辆经过,进入相应的中断子程序,将存储车流量的寄存器加1,然后中断结束返回。每满一个状态循环周期,若为自动模式,则须将检测到的车流量数据处理一次,判断两个方向的交通轻重缓急状况,再调整下次状态循环的红绿灯时间,以达到自动控制的目的。交通系统原理图和电路图如图3-1所示:图3-1 基于单片机的交通灯控制系统图3.2单片机的选择3.2.1单片机的概述单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影!它主要是作为控制部分的核心部件。3.2.2 8051单片机内部组成部分8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:3.2.2.1中央处理器中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。3.2.2.2数据存储器(RAM)8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。程序存储器(ROM):8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。定时/计数器(ROM):8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(I/O)口:8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。全双工串行口:8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。3.2.3 8051芯片的主要性能芯片8051是ATMEL公司生产的带2K字节快闪存储器的8位单片机。它具有如下的一些特性:1、指令和8051产品兼容,内含2K字节可重复编程快闪存储器2、耐久性1,000写/擦除周期, 2.7V6V的工作电压范围3、全静态操作0Hz24MHz,二级程序存储器加锁4、内含128*8位内部RAM ,15根可编程I/0引线5、2个16位的计数器/定时器,6个中断源6、带有可编程串行通讯口,可直接驱动LED输出7、片内模拟电压比较器,低功耗空载和掉电方式8、该单片机还具有体积小,价格低等特点。3.2.4 8051设计的连线图提示8051是一带有2K字节快闪可编程可擦除存储体(EEPROM)的低电压、高性能8位CMOS微型计算机。它采用ATMEL的高密非易失存储技术制造并和工业标准MCS51指令集和引脚结构兼容。通过在单块芯片上组合通用的CPL1和快闪存储器,ATMEL公司生产的8051是一强劲的微型计算机,它对许多嵌入式控制的应用,提供了一种高度灵活和成本低的解决办法。 完整的DVCC实验箱面板及硬件电路连接说明图3-2 试验箱面板图3-3 硬件电路3.2.5 8051芯片最小系统一个最简单的单片机系统包括晶振、复位、电源、系统的输入控制、输出显示,以及其他外围模块(如通信、数据采集等)。3.2.5.1时钟电路系统8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。单片机的工作流程,就是在系统时钟的作用下,一条一条地执行存储器中的程序。单片机的时钟电路由外接的一只晶振和两只起振电容,以及单片机内部的时钟电路组成,晶振的频率越高,单片机处理数据的速度越快,系统功耗也会相应增加,稳定性也会下降。单片机系统常用的晶振频率有6MHz、110592MHz、12MHz、本系统采用110592MHz晶振,电容选22pF或30pF均可。3.2.5.2复位电路8051的复位方式可以是自动复位,也可以是手动复位,见下图。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。图3-4复位电路图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.2.5.3 EA脚的功能及接法单片机的EA脚控制程序从内部存储器还是从外部存储器读取程序。由于现在单片机内部的flash容量都很大,因此基本都是从内部的存储器读取程序,即不需要外接ROM来存储程序,因此,EA脚必须接高电平。3.3其它硬件介绍及连接3.3.1车流量检测电路及模拟为了达到对红绿灯的时间控制,需要对道路上的车流量进行检测。当前比较流行的车流量检测器件,是一种自感式的车辆传感器。其工作原理是当车辆经过传感器时,引起其自感的变化,考虑到单片机系统的便利性,本次设计用一种手动的操作方式,即车流量的检测电路用拨断开关代替。其基本思路为:当车流量大时,有拨断开关送出一个高电平。另外,再单片机和坡度按开关之间加了光电隔离。下面叫简绍光电隔离,以TLP550为例。TLP550是日本东芝公司生产的一款光耦,该光耦没有和基极连接,适合与再噪声比较大的环境中应用。TLP550的工作原理如下:当2.3叫的电压为正,且能时发光二极管正常发光时,控制的发光二极管发光,使得输出端的光敏二极管导通。这样输出端的基极相当于与8引脚连接,其电平为高,使得三极管导通,及5.6两个引脚导通。由于5引脚接地,这样输出端6叫就为低电平。再实际使用中,6.8引脚通常会连接一个电阻。这样当2.3引脚的电压不足使发光二级光发光时,输出端三极管就不到同,就相当于输出端6引脚通过一个电阻接到了8脚上。相对于后面的连接电路来书,其为高电平。这样就可以通过控制2.3引脚之间的电压,来控制输出6引脚的电平,达到电压耦合的隔离的作用。车流量检测电路如下图3-5所示。图3-5 车流量检测电路基于光电隔离的作用,再加上拨断开关和LED,为了避免干扰信号,可以加入光电耦合器。如图所示,当开关状态如图所示时,LED点亮,同时低电平被单片机捕获。当开关拨下时LED熄灭,同时高点平被单片机捕获,这样单片机通过捕获的电平状态做出相应的控制,与LED的状态即车流量的状态互相配合协调。3.3.2违规检测电路及模拟在红灯和黄灯期间,车辆是禁行的,为了对那些违反规则的车辆进行检测,可使用超声波车辆传感器。但是,用于受到条件的限制,本系统设计中只是使用了普通光敏二极管。图3-6 违规检测电路其基本设计思想是:将光敏二极管放在停车线上,当车辆行驶过将光敏二极管遮住,这样,光敏二极管就不导通,单片机检测到这一信号执行警报操作。违规检测电路如图3-6所示。但是除了使用光敏二极管,还需使用三极管,三极管的型号是9031.由于普通光敏二极管的开关特性不太好,所以设计在电路中加入了三极管作为开关。由于普通光敏二极管在导通的情况下的电阻都能达到0.5-1K,所以在设计中将光敏二极管直接连到了电源上。同时三极管还可以起到一定的隔直作用。当光敏二极管关闭时,三极管的基极为低电平,基极与发射基之间的电压为零,三极管关断,检测口的电压为高电平。同理,当光敏二极管导通时,三极管的基极电压为高,基极与发射极之间的电平为高,三极管导通,检测口的电压为低电平。基于此就可以检测是否有违规车辆了。3.3.3八段LED数码管LED显示屏作为大型显示设备的一种,具有亮度高、价格低、寿命长、维护简便等优点。LED数码管的结构简单,分为七段和八段两种形式,也有共阳和共阴之分。以八段共阳管为例,它有8个发光二极管(比七段多一个发光二极管,用来显示sP,即点),每个发光二极管的阳极连在一起,如图3-7所示。这样,一个LED数码管就有I根位选线和8根段选线,要想显示一个数值,就要分别对它们的高低电平来加以控制。为方便起见,本文主要讨论共阳八段LED数码显示管,其他类形的显示管与其类似。图3-7 LED数码管LED 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点亮而显示不同的字形,如 dp,g,f,e,d,c,b,a全亮显示为,采用共阳极连接驱动代码。表3-1 代码表显示数值dp,g,f,e,d,c,b,a驱动代码011010000C0H111111001F9H210100100A4H310110000B0H41001100199H51001001092H61000001082H711111000F8H81000000080H91001000090H相应在程序软件上,可以通过调用程序给定的秒值经过特定计算算出需要显示的个位和十位,然后有DPTR调取LEDMAP的代码。LED8段数码管的设置为每个方位上的一对2为显示器。四个方位上总共用8个LED接在单片机的IO口上。虽然路口不一样,但是显示的时间在数字上是一样的,所以两边连接的IO口是对称的。如图3-8所示,其中A,B分别是P0,P1的网络标号。图3-8 LED连接图3.3.4其它器件3.3.4.1发光二极管根据本设计的特点,红绿灯的显示不可少,红绿灯的显示采用普通的发光二极管。每个方向上设置红绿黄灯,总共4组。如果东西红灯亮,那南北方向就是绿灯亮,反之亦然,所以在硬件上连接图上也是对称分布的,如下图3-9所示。图3-9 信号灯的连接3.3.4.2蜂鸣器本设计采用一般蜂鸣器,蜂鸣器使用PNP三极管进行驱动控制,当P1.0引脚输出为低电平,PNP导通,蜂鸣器蜂鸣;当P0.1引脚输出高电平时,PNP截止,蜂鸣器停止蜂鸣。如下图3-10所示图3-10 蜂鸣器连接3.3.4.3按键控制本设计设置了有3个键:S键P3.2,J键P3.2,F键P3.7。每个按键一端接地,另一端接上拉电阻。低电平有效,当按键按下端口接地,单片机捕获到低电平,从而知道相应的输入信息。如下图3-11所示。图3-11 按键示意图4 系统软件程序的设计4.1程序主体设计流程全部控制程序实际上分为若干模块:键盘设置处理程序,状态灯控制程序,LED显示程序,消抖动延时程序,次状态判断及处理程序,紧停或违规判断程序,中断服务子程序,车流量计数程序,红绿灯时间调整程序等。整个软件程序方面主要分两大部分:按键处理程序和50ms扫描程序。流程图如图4-1所示。图4-1 系统总流程图首先是按键处理程序,8051通过对IO扫描,确定是否有键按下,再判断具体是那个键按下,根据键值跳转到按键处理程序。按键处理结果可设置两种工作模式:红绿灯时间设置模式和红绿灯时间自动模式,次程序相当于系统的模式设置,若想重新设置则要按下复位键。设置过后进入50ms扫描程序。50ms扫描程序开始后,先刷新显示模块,若为自动模式则接下来要计数车流量,然后扫描紧停信号和违规信号,若捕获则调用中断,中断服务子程序主要启动蜂鸣器,直至恢复键按下。50ms已到则重新扫描。扫描20次之后计时到达1s则时间数据减1,在显示模块中修改显示缓冲区内容。在半个状态对换时,车流量计数程序在一个状态变换循环先后计数两个方向的车流量,然后调用红绿灯时间调整程序,更新红绿灯时间。当前状态时间已到,则判断其状态装入相应数据,然后进入下一状态。4.2理论基础知识4.2.1 定时器原理定时器工作的基本原理其实就是给初值,让它不断加1直至减完为模值,这个初值是送到TH和TL中的。它是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值,即所要求的计数值设定为C,把计数初值设定为TC 可得到如下计算通式:TC=M-C式中,M为计数器模值。计数值并不是目的,目的是时间值,设计1次的时间,即定时器计数脉冲的周期为T0,它是单片机系统主频周期的12倍,设要求的时间值为T,则有C=TT0。计算通式变为:T=(MTC)T0模值和计数器工作方式有关。在方式0时M为8192;在方式1时M的值为65536;在方式2和3为256。就此可以算出各种方式的最大延时。如单片机的主脉冲频率为12MHZ,经过12分频后,若采用方式最大延时只有8.129毫秒,采用方式最大延时也只有65.536毫秒。这就是为什么扫描周期为50ms的原因,若使用软件则会耽搁程序流程,显然不可行。相反,时间计时方面却不可能只用计数器,因为显然秒钟已经超过了计数器的最大定时间,所以我们还必须采用定时器和软件相结合的办法才能解决这个问题。4.2.2软件延时原理MCS-51的工作频率为12MHZ,机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/12MHZ)=1us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间,但同时由于单片机的运行速度很快其他的指令执行时间可以忽略不计。我们设定一个初值为20的软件计数器和使T0定时50毫秒。这样每当T0到50毫秒时CPU就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,CPU先使软件计数器减,然后判断它是否为零。为零表示秒已到。设定定时器需要定时50毫秒,故T0必须工作于方式。要求初值:TC=M-T*T0=216-50ms/1us=15536=3CBOH,程序如下: WAIT: JNB TF0,WAIT1CLR TF0MOV TH0,#01HMOV TL0,#0B01HDJNZ R2,WAIT 4.2.3 中断原理本系统主要使用了外部中断,中断信号有引脚INT0和INT1输入,低电平有效,CPU每个时钟周期都会检测INT0和INT1上的信号,8051允许外部中断以电平方式或负边沿方式两种中断方式输入中断请求信号,可由用户通过设置TCON中IT0和IT1位的状态来实现。以IT0为例,IT0=0,为电平触发方式,IT0=1,为负边沿触发方式,本设计采用电平方式,IE0

温馨提示

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

评论

0/150

提交评论