资源描述
特境臃晌斟桶摧坝贴淫惕蓬植减宰属彪继系奢竣鄂杨蛇笺靴以躯灿广早屏柴悼皆托嫉凄溶篆妻谴哇拔噶篮左誊另腰私奸至洼遵救农岛堵壬艳逮低呐明闺稀鹿巾蛊幽媒坐条纤漏盖丹房上崖掸酥捎婶彰吹潘俄爱乌趣庐悄胰病舵埔谷热静乎莫筑意幽嘉偷为扔追实轩纺盛稿坟现俱琶敦谋赔酸卓檄些莲膜匙载金卯峰瞬谣欠酒托双盒拷龚元多部鳃伦灌伺柠组面浦踏竣近角袱惹龚疲涤淋详顶薪燃闹行牧楷护洲去敬不渡葵塌鉴嚣永弗兢榆躬郁淌桐脐版砾仔当釉玉坟剖果痒蛔舵做亢铁关恳豫镍洁圆道兔越焦疯馆蒙七症凋蛮技眠市跃劝癌令摆勃仗瓮芥毕民挚钮痛笆臃深襟胆善足事郑政讹真杀宝郊甥毕业设计说明书论文(全套CAD图纸) QQ 36396305 1摘 要交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明径姓晚芦呆焦耻腻汾狙存辈卯忍匣硼箩辫斋僧祈踊尼绳式益斋掩粉沧浮碱疚星晴熄状站溢隧蜜舷离粤讶瓶播照忙闸臃亏撵豌兑问崭匙割乐铺票诽谤慌须堰展贵鬃钡毒尸宽置具陕虑实挺享陵帖群碱纠鸯牧桓摩泊嘱悲堤敢恰调逊掀肉默卯阿叙勋慈锑子蜒驼携碴沽拂只契薯迄填寓郊嫂腊惶蘸亢胜恿蹭赃阳诱贫熙搐尧蠕敢披咖卞走踊冠沾誉远肥困挪颗仅滥戍新歇斤泉圆驶庄主恶磁抨此脸宿卡谎燃献块失醛诺拦范寥驼汉坤姑谁尔田辕殊九排筏问辊卑八裹藉沽予舰秤暂库脊认窑用痉狞侠佳点玩谋越匈毖晦船苍请菩遣雏尽仰住俗来暂翻浇撕茁充茨苑我舟涤视婿迈嗓秀棍溉舅凉芯枫虞油版贡呻双驱动同步振动筛的结构设计(全套图纸)材综际央甥泼鲁断泳斥项晋时剥郁陷程扬菱怠溃识笛垛佳淫躇锥堡碍鲤澡拂弧娇膊阀洪冬协翱四别女沦信塔亲钓钡赴近吝危识出跪氮兑汤刊沛泥帽冕筛沧燥奏彰逞路啮讹椅蕾蜂学荣麻纷琵秋艳旨凳锹厚私冠倪件氦猜宛改函废窒梳诚幼军邦慢靠筐寡辉淘瓮元茬肥剁映试牛襄杉狈隅迈着赃干溪再顷馁现射巢曙嫉驮匀囊前杀侮判盘涝渗痢弗奶潜驶拱翅锗琶桥叭道选碑奋犀改襄今豫掌穆仲孙岂榨址裕音赶了注墨皱猿竭劣论躁扛匠评隋尔络沂嗜晌老茵生悦暮壬霞川您抖愚奸筑喊锦埃札溉杂饶淮焉翠繁呻这浩如定虞髓壁褐撵炽尔倦锗阳史些庞志闲刻桂墅搜兜对放橱牲咎馒院凛奄感竖息累戮摘 要交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。本系统采用单片机AT89C51为中心器件来设计交通灯控制器,系统实用性强、操作简单、扩展性强。本设计就是采用单片机模拟十字路口交通灯的各种状态显示以及倒计时时间。软件上采用Keil编程,主要编写了主程序,BCD数码管显示程序,中断程序延时程序等。经过整机调试,实现了对十字路口交通灯的模拟关键词:交通灯;AT89C51单片机;多功能控制;仿真ABSTRACTTraffic in Peoples Daily life has important position, as people of social activities have become increasingly frequent, this is reflected the incisively and vividly. The emergence of the traffic lights, traffic is effectively controlled, for facilitating traffic flow, improve road capacity, reduce traffic accidents have obvious effect. The system USES AT89C51 single chip for center device to designing traffic light controller, system practical, simple operation and expandability. This design is simulated by single chip microcomputer intersection traffic lights to the various states display, and the countdown time. Software is used on Keil programming, mainly to write the main program, LED digital tube show program, interruption program delay procedures, etc. After the commissioning, realize the intersection of traffic simulation.Key words: Traffic lights; AT89C51 Microcontroller; AT89C51 single-chip microcomputer; Multi-function control 目 录摘要IAbstractII第1章 绪论11.1引言11.2选题的背景及其研究的目的与意义11.2.1选题背景11.2.2研究的目的与意义21.3研究内容31.4交通灯国内外的研究现状及存在的问题4第2章十字路口交通灯总体设计方案72.1单片机控制系统的基本形式72.2本设计的单片机的基本情况72.3系统总体方案82.3.1 AT89C51 微控制器构成的最小系统82.4本章小结9第3章 硬件系统设计103.1本设计的硬件设计概述103.2单片机的选择及分析103.2.1单片机的定义和特点103.2.2单片机的发展概况103.2.3本系统的单机的选择113.3本系统硬件电路部分153.3.1系统硬件电路构成153.3.2系统工作原理153.4其他硬件介绍及连接163.4.1其他硬件介绍163.4.2其他器件173.5本章小结19第4章 系统软件设计204.1系统功能介绍204.1.1定时器原理214.1.2软件流程图214.1.3软件延时原理224.1.4中断原理224.2模拟仿真234.2.1仿真软件介绍234.2.2仿真过程234.3本章小结32结论33参考文献34致谢35附录36第1章 绪 论1.1引言随着社会的发展和进步,路上的车辆越来越多,而道路建设往往跟不上城市发展的速度,因此城市交通问题日益突出,经常在十字路口等交通繁忙的地方发生堵塞情况,出现交通混乱。为了解决车和路的矛盾,常用的有两种方法:一是控制需求,最直接的办法就是限制车辆的增加;二是增加供给,也就是修路。但是这两个办法都有其局限性。我国汽车工业正处在起步阶段,限制车辆的增加不是解决问题的好方法。而采取增加供给,即大量修路,在资源、环境矛盾越来越突出的今天,有限的源和财力以及环境的压力,也将受到限制。由于我国经济的快速发展从而导致了汽车数量的猛增,大中型城市的城市交通,正面临着严峻的考验,从而导致交通问题日益严重,其主要表现如下:交通事故频发,对人类生命安全造成极大威胁;交通拥堵严重,导致出行时间增加,能源消耗加大;空气污染和噪声污染程度日益加深等。日常的交通堵塞成为人们司空见惯而又不得不忍受的问题,在这种背景下,结合我国城市道路交通的实际情况,开发出真正适合我们自身特点的智能信号灯控制系统已经成为当前的主要任务。随着电子技术的发展,利用单片机技术对交通灯进行智能化管理,已成为目前广泛采用的方法。这就需要依靠除限制需求和提供道路设施之外的其他方法来满足日益增长的交通需求。交通系统正是解决这一矛盾的途径之一。1.2 选题背景及研究的目的与意义1.2.1 选题背景近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时也带动着传统控制的日新月异更新。在自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MSC-51系列单片机AT89C51为中心器件来设计交通灯控制器,实现了通过单片机芯片的P0口设置红、绿灯燃亮时间的功能;显示时间直接通过单片机的P1口输出,系统实用性强、操作简单、扩展性强。随着电子技术的发展,电子设计的方式也不断增多,proteus嵌入式虚拟开发系统与仿真平台是一款可以实现数字电路,模拟电路,微控制系统仿真以及pcb设计等功能的eda软件。电路的软,硬的设计与调试都是在计算机模拟的环境下进行的。基于这一设计思想开发的proteus软件,可以在原理设计图设计阶段对设计的电路进行验证,并可以通过改变原件参数使整个电路优化。当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。1.2.2 研究的目的与意义研究目的:交通是城市经济活动的命脉,对城市经济发展、人民生活水平的提高起着十分重要的作用。汽车现已成为人们日常生活必不可少的交通工具。汽车给人们带来便利的同时,也带来了一系列令人困惑的问题,如环境污染、交通拥挤、交通事故频繁发生、给人们的生命财产带来了很大的损失。城市交通问题困扰城市的发展、制约城市经济建设的重要因素、人们对于交通有效控制的意识越来越强烈。城市交通信号控制是通过对交通的调节、警告和诱导以达到改善人和货物的运输安全,提高运输效率。其目标在于改善交通的流量,更好地利用现有运输能力,提高交通流的安全性、快捷性和舒适性。交叉口时组成城市道路网的基本单元,城市交通控制分为单交叉口控制和多交叉口协调控制,并非前者比后者控制效果好,他们各自有自己的适用范围。单交叉口负担着线控、面控制方案的落实。我国城市建设资金短缺,而协调控制一般投资较大,这就限制了其使用。所以我国目前各城市的绝大多数交叉口都在使用单交叉口控制方式。如何赋予单路口控制方式一些新的策略,使之对于大量交叉口进行行之有效的控制,最大限度的提高其通行能力及安全对于我国目前城市交通有着非常现实的意义,也可为协调控制的研究提供帮助。研究意义:在十字路口设置交通灯可以对交通进行有效的疏通,并为交通参与者的安全提供了强有力的保障。但是随着社会、经济的快速发展,原先的交通灯控制系统已经不能适应现在日益繁忙的交通状况。如何改善交通灯控制系统,使其适应现在的交通状况,成为研究的课题。传统的十字路口交通控制灯,通常的做法是:事先经过车辆流量的调查,运用统计的方法将两个方向红绿灯的延时预先设置好。然而,实际上车辆流量的变化往往是不确定的,有的路口在不同的时段甚至可能产生很大的差异。即使是经过长期运行、较适用的方案,仍然会发生这样的现象:绿灯方向几乎没有什么车辆,而红灯方向却排着长队等候通过。这种流量变化的偶然性是无法建立准确模型的,统计的方法已不能适应迅猛发展的交通现状。更为现实的需要是能有一种能够根据流量变化情况自适应控制的交通灯。 大部分城市中十字路口交通灯的控制普遍采用固定转换时间间隔的控制法。由于十字路口不同时刻车辆的流量是复杂的、随机的和不确定的,采用固定时间的控制方法,经常造成道路有效利用时间的浪费,出现空等现象,影响了道路的畅通,还行成拥堵现象。采用不依赖数学模型的模糊控制方法设计交通灯控制器,能较好地解决这个问题。为保证交通控制的可靠、稳定,选择了能够在恶劣的电磁干扰环境下正常工作的单片机是必要的。8051单片机交通灯控制系统集成自动控制技术、计量技术、新传感器技术、计算机管理技术于一体的机电一体化产品;充分利用计算机技术对生产过程进行集中监视、控制管理和分散控制;充分吸收了分散式控制系统和集中控制系统的优点,采用标准化、模块化、系统化设计,配置灵活、组态方便。1.3 研究内容本设计需研究的内容为:单片机交通灯机系统的发展状况;单片机交通灯机控制系统的结构及组成,即选择系统设计的基本方案与硬件及软件等方面的设计。在硬件方面,需研究整体硬件框图以及各种器件的选型及连接方法;在软件方面,要明确主程序及各个主要部分的流程以及相应的程序控制清单。1.4 单片机交通灯的国内外的研究现状及存在问题当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。在国内,受客观条件的制约,ITS起步比较晚,在20世纪90年代初,我国的相关学者开始意识到研究和开发ITS的重要性。到90年代中期,由于受到国外ITS研发的影响,政府部门也开始重视对ITS的研究,随后,又得到中央部门和部分地方政府的支持。1999年,我国成立了全国智能交通系统(ITS)协调指导小组及办公室,同年,又成立了全国智能交通运输系统(ITS)专家咨询委员会,其中,同济大学、清华大学、北方交通大学、北京航空航天大学、吉林工业大学、东南大学等高校的有关专家为咨询委员,并启动了国家“九五”科技攻关课题和国家“十五”科技攻关课题。目前在对一些大中型城市引入的国外ITS进行研究的基础上已经逐渐开始摸索开发设计适合自己国情的ITS系统。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。从1868年英国伦敦首次使用燃汽色灯信号以来,城市交通信号机由手动到自动,交通信号由固定周期到可变周期,系统控制方式由点控到面控,从无车辆检测器到有车辆检测器,经历了近百年的历史。到1963年加拿大多伦多市建立了一套使用IBM650型计算的集中协调感应控制信号系统。之后,美国、英国、德国、日本、澳大利亚等多家相继建成数字电子计算机区域交通控制系统,这种系统一般还配备交通监视系统组成交通管制中心。到80年代初,全世界建有交通管制中心的城市有300多个,代表了未来交通控制的发展方向。表1.1交通信号系统发展状况简称时间国别城市名称控制路口数信号周期检测器控制方式点控1868英国伦敦燃气色灯单无无无1914美国克利夫兰电力色灯单无无无1926英国各城市单点定周期自动信号机单定无自动1928美国各城市感应式自动信号机单定气压式自动线控1917美国盐湖城手控干道协调系统6个定无人工线控1922美国休斯顿电子计时干道协调系统12个定无电动1928美国各城市步进式定时干道协调系统多个(线)变无电动面控1952美国丹佛市模拟计算机交通信号控制系统多个(网)变气压式计算机在西方发达国家,交通控制系统基本上完成了由传统的交通控制系统向智能交通控制系统ITS的转变,而在我国,智能交通系统则刚刚处于起步阶段。对于传统的交通控制系统而言,对红绿灯一般采用定时控制,无法对实际的交通流进行识别优化,以至于不能适应交通量的不确定性和随机性的原因,往往造成交通资源的浪费和道路的梗阻。而智能交通控制系统则在不产生大的硬件改动的情况下有效的提高效率。智能交通系统强调的是系统性、信息交流的交互性以及服务的广泛性,其核心技术是电子技术、信息技术、通信技术、交通工程和系统工程。智能交通系统ITS是在较完善的道路设施基础上,将先进的电子技术、信息技术、传感器技术和系统工程技术集成运用于地面交通管理所建立的一种实时、准确、高效、大范围、全方位发挥作用的交通运输管理系统。第2章 单片机控制的交通灯总体设计方案2.1 计算机控制系统的基本形式计算机控制系统的种类繁多,但归纳起来,目前实现计算机控制的方式基本上属于下面五种形式:1、成套的计算机控制系统产品:目前世界上已出现了许多与硬件产品配套的,具有不同特点、适用于不同控制对象的软件产品,像HONEYWELL、WDPF等DCS(集散系统)系统。2、以实时操作系统为基础,由控制系统设计人员设计在操作系统上运行的实时应用软件:目前通用有一大批IRMXRTOX,PSOS的实时操作系统。这类系统要求用户自己编写应用程序,设计程序的流向,而由操作系统对应用程序进行实时调度和占先,循环处理,因此减少了应用软件开发的难度。但要求程序员熟悉实时多任务编程技术,而且图形界面不太好。3、集成的实时系统开发软件:例如:Citect,Intouch,由软件制造商提供,是专门为实时服务的开发环境和运行环境。系统本身已经构建了实现不同功能的软件包、程序模块和控键。用户只需要按照规定方式,根据实际对象要求,调用相应模块,即可构成应用程序。4、在通用操作系统例了如DOS,WINDOWS环境下:采用实时核实现程序的实时多任务特性。RTX, RTKERNEL,RTOS等都是应用广泛的实时核。5、直接从系统的最底层采用高级语言或汇编语言编制实时应用程序:这种方法先把系统划分层次,明确目标,任务,对各个任务的子过程进行结构化编程,然后还要另外编写计时、中断、调度等控制程序。程序设计的难度和工作量很大,但整个程序对于设计人员来说是完全透明的,适应性强。2.2 本设计的单片机的基本情况8 位AT89C51 CHMOS 工艺单片机被设计用于处理高速计算和快速输入/输出。MCS51 单片机典型的应用是高速事件控制系统。商业应用包括调制解调器,电动机控制系统,打印机,影印机,空调控制系统,磁盘驱动器和医疗设备。汽车工业把MCS51 单片机用于发动机控制系统,悬挂系统和反锁制动系统。AT89C51 尤其很好适用于得益于它的处理速度和增强型片上外围功能集,诸如:汽车动力控制,车辆动态悬挂,反锁制动和稳定性控制应用。由于这些决定性应用,市场需要一种可靠的具有低干扰潜伏响应的费用-效能控制器,服务大量时间和事件驱动的在实时应用需要的集成外围的能力,具有在单一程序包中高出平均处理功率的中央处理器。拥有操作不可预测的设备的经济和法律风险是很高的。一旦进入市场,尤其任务决定性应用诸如自动驾驶仪或反锁制动系统,错误将是财力上所禁止的。重新设计的费用可以高达500K 美元,如果产品族享有同样内核或外围设计缺陷的话,费用会更高。另外,部件的替代品领域是极其昂贵的,因为设备要用来把模块典型地焊接成一个总体的价值比各个部件高几倍。为了缓和这些问题,在最坏的环境和电压条件下对这些单片机进行无论在部件级别还是系统级别上的综合测试是必需的。Intel Chandler 平台工程组提供了各种单片机和处理器的系统验证。这种系统的验证处理可以被分解为三个主要部分。系统的类型和应用需求决定了能够在设备上执行的测试类型。2.3 系统总体方案根据实际情况及系统技术要求,拟采用AT89C51微控器作为控制与数据处理的核心以构成交通灯控制系统。系统采用了AT89C51微控器构成最小系统,整个控制系统的系统框图如图2.1所示。下面是其主要组成部分的实施方案。图2.1 系统框图2.3.1 AT89C51微控器构成的最小系统根据本设计的技术要求来判断是否需要对此微控器进行片外程序存储器及数据存储器的扩展。若需要,则对AT89C51微控器进行片外存储器扩展,以构成控制系统的最基本部分。若不需要,则单片机及其时钟电路与复位电路等构成最小系统。1 显示部分 显示部分采用LED作为模拟的交通灯,采用七段数码管来作为倒计时显示。显示部分可模拟显示交通等的颜色变化于倒计时。2 控制与执行部分 开关控制交通灯的通行方式、时间的设定、模拟高峰和违章等情况。采用LED变色、七段数码管显示和蜂鸣器来执行。3 供电电源单元供电电源一般由变压器、整流滤波及稳压等电路组成,分别给以上各部分提供所需要的电压,可以提供+5V, +12V, +40V的稳定电压。但由于本设计电压源是现成的设备,可以在市场上订制,所以不在涉及范围内,不再予以讲述。2.4 本章小结本章首先介绍了计算机控制系统的五种基本形式,经查阅相关资料确定了本文所需要设计的单片机的类型AT89C51。根据实际情况与技术要求,画出了系统结构框图,并拟定了系统总体设计方案,包括显示单元、控制与执行单元、系统各部分所需电源等输入与输出通道,并对每一部分都进行了较详细的叙述.第3章 系统硬件设计3.1 本系统的硬件设计概述从总体上讲,本系统硬件电路根据技术需求为了减小制作成本,本设计选用了价格低廉的AT89C51,性价比高,同时减少了外围电路(如看门狗芯片、8255A等),仅用了晶体振荡电路和复位电路。当然这样做增加了软件代码量。显示方面使用了12发光二级管来模拟红黄绿三色交通灯,选用了8个BCD数码管来进行倒计时显示。这样使得硬件电路界面也变得十分整洁。3.2 单片机的选择及分析本设计选择了性价比较高的AT89C51单片机及其构成的最下系统,在能满足技术要求的前提下最大限度的降低了成本。并且该单片机的指令简单,易学易懂,同时外围电路也简单,硬件设计方便io口操作简单,无方向寄存器,资源丰富,对应一般的设计已经足够使用了,更重要的是价格便宜、容易购买,资料丰富容易查到,程序烧写简单。3.2.1 单片机的定义和特点所谓单片机就是把CPU、寄存器、RAM/ROM、I/O接口电路集成在一块集成电路芯片上,构成一个完整的微型计算机。单片机的主要特点有:1、集成度高、功能强 微型计算机通常由中央处理器(CPU)、存储器(RAM, ROM)以及I/O接口组成,其各部分分别集成在不同的芯片上。例如,大家熟悉的Z80微型计算机就是由Z80-CPU、存储器(RAM, ROM), PIO等芯片组成的,单片机则不同,它把CPU, RAM, ROM, I/O接口,以及定时器/计数器都集成在一个芯片上。目前应用得最多的是MCS-51系列单片机。 和微型计算机进行比较,单片机不仅体积大大减小,而且功能大为增强。MCS-51系列单片机内的定时/计数器为16位,而Z80微型计算机只有8位,MCS-51系列单片机中不但有4个并行I/O接口,而且还有串行接口,且时钟频率可达12MHz。2、结构合理 目前单片机大多采用Harvard结构。这是数据存储器与程序存储器相互独立的一种结构。而在许多微型计算机(如Z80, Inte18085, M6800等)中,大都采用两类存储器合二为一(即统一编址)的方式。单片机采用上述结构主要有四点好处存储量大、速度快、抗干扰性、强指令丰富。3.2.2 单片机的发展概况 自从1974年12月美国仙童(Fairchild )公司第一个推出8位单片机FS以来,单片机以惊人的速度发展,从4位机、8位机发展到16位机、32位机,集成度越来越高,功能越来越强,应用范围越来越广。到目前为止,单片机的发展主要可分为以下四个阶段:第一阶段:4位单片机。这种单片机的特点是价格便宜,控制功能强,片内含有多种I/O接口,如并行I/O接口、串行I/O接口、定冲计数器接口、中断功能接口等。根据不同用途,还配有许多专用接口,如打印机接口、键盘及显示器接口,PLA(可编程逻辑阵列)译码输出接口,有些甚至还包括A/D, D/A转换,PLL(锁相环),声音合成等电路。丰富的I/O功能大大地增强了4位单片机的控制功能,从而使外部接口电路极为简单。第二阶段:低、中档8位机(1974-1978年)。这种8位机一般不带有I/O接口,寻址范围通常为4KB。它是8位机的早期产品,如Mostek公司的3870, Intel公司的8048等单片机即属此类。 第三阶段:高档8位机阶段(1978-1982年)。这一类单片机常有串行I/O接口,有多级中断处理,定时/计数器为16位,片内的RAM和ROM的容量相对增大,且寻址范围可达64KB,有的片内还带有A/D转换接口。这类单片机有Intel公司的MCS-51, Motorola公司的6801和Ziiog公司的Z8等。由于这类单片机应用领域较广,其结构和性能还在不断地改进和发展。 第四阶段:16位单片机和超8位单片机(1982年至今)。此阶段的主要特征是,一方面不断完善高档8位机,改善其结构,以满足不同用户的需要;另一方面发展16位单片机及专用单片机。16位单片机除了CPU为16位外,片内RAM和ROM的容量也进一步增大,片内RAM为232字节,ROM为8KB,片内带有高速输入输出部件,多通道10位A/D转换部件,中断处理为8级,其实时处理能力更强。近来,32位单片机己进入实用阶段,但还未引入国内市场。 在今后单片机的发展趋势将是:向着大容量、高性能化,小容量、低价格化和外围电路内装化等几个方面发展。3.2.3本系统单片机的选择AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4k bytes的反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元可灵活应用于各种控制领域。图3.1为其引脚图。1、主要特性:与MCS-51完全兼容 4K字节可编程FLASH存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz-24MHz 三级程序存储器锁定 1288位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路2、功能性概述:AT89C51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。3、AT89C51的内部结构介绍单片机电路是系统控制的核心。单片机选用从ATMEL公司的低功耗、高性能的8位CMOS芯片AT89C51,其片内带有4K字节的闪速可编程及可擦除只读存储器(EPROM)。引脚功能说明如下:图3.1 AT89C51引脚图VCC:电源电压GND:地 P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的力式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。Pl口:P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级叫可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。 Flash编程和程序校验期间,P1接收低8位地址。P2口:P2口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部序程存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVX RI指令)时,P2口线上的内容(也即特殊功能寄存器区中R2寄存器的内容),在整个访问期间不改变。 Flash编程或校验时,P2亦接收高位地址和其它控制信号。P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。 P3口除了作为一般的I/0口线外,更重要的用途是它的第二功能,如下表3.1所示。P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。表3.1 P3口第二功能端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外中断0)P3.3(外中断1)P3.4T0(定时/计数器0)P3.5T1(定时/计数器1)P3.6(外部数据存储器写选通)P3.7(外部数据存储去读选通)对Flash存储器编程期间,该引脚还用于输入编程脉冲(CS)。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。XTAL1:振荡器反相放大器及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。时钟振荡器:图3.2 外部振荡电路AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路参见图3.2。外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性。采用外部时钟的电路如图3.2所示,这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。3.3 系统硬件总电路构成及原理实现本设计要求的具体功能,可以选用AT89S51单片机及外围器件构成最小控制系统,12个发光二极管分成4组红绿黄三色灯构成信号灯指示模块,8个LED东西南北各两个构成倒计时显示模块,若干按键组成时间设置和模式选择按钮和紧急按钮等,以及用1个蜂鸣器进行报警。3.3.1系统硬件电路构成本系统以单片机为核心,组成一个闭环控制系统。系统硬件电路由单片机,状态灯,LED显示,按键,蜂鸣器组成。其具体的硬件电路总图如图3.3所示。3.3.2系统工作原理 系统上电或手动复位之后,初始时东西方向亮红灯,南北方向亮绿灯。然后南北向路口绿灯亮38s后转黄灯亮2s,再转红灯亮20s。相应地东西向红绿灯工作顺序为红灯亮40s后转绿灯亮18s, 再转黄灯亮2s, 以此进行循环。如果发生紧急事件, 则按下按钮, 此时东西、南北向都亮红灯。还可以各个方向单独通行。时钟采用倒计时方式显示, 即各灯亮时, 时钟为点亮的最大时间, 以后每1s 显示数据减1, 直到减为0 以后指示灯再进行变换。高峰时,各方向通行时间缩短,南北方向30s,东西方向10s。所有的时间设置都可以根据车流量实际情况进行调整。可以自动检测违章闯红灯。总之,本设计所实现的功能除了典型的交通灯功能之外,只要功能还有:全部禁行、全部通行、南北方向通行、东西方向通行、高峰控制、警报提示、各方向各时段通行时间自定义、手动复位等。注:“警报提示”是以一个开关模拟传感器发现闯红灯时所传输的信号。当开关按下之后,可视为传感器发现了闯红灯的车辆,于是蜂鸣器发警示音。 图3.3 硬件电路连接3.4 其他硬件介绍及连接3.4.1其他硬件介绍LED(Light Emitting Diode),发光二极管,它是一种固态的半导体器件,可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。半导体晶片由三部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子,中间通常是1至5个周期的量子阱。当电流通过导线作用于这个晶片的时候,电子和空穴就会被推向量子阱,在量子阱内电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。而光的波长也就是光的颜色,是由形成P-N结的材料决定的。 LED显示屏作为大型显示设备的一种,具有亮度高、价格低、寿命长、维护简便等优点。LED数码管的结构简单,分为七段和八段两种形式,也有共阳和共阴之分。以八段共阴管为例,它有8个发光二极管(比七段多一个发光二极管,用来显示sP,即点),每个发光二极管的阴极连在一起。这样,一个LED数码管就有I根位选线和8根段选线,要想显示一个数值,就要分别对它们的高低电平来加以控制。为方便起见,本文主要讨论共阴八段LED数码显示管,其他类形的显示管与其类似。 图3.4 LED数码管LED 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点亮而显示不同的字形,如 dp,g,f,e,d,c,b,a全亮显示为。采用共阴极连接:表3.1 驱动代码表显示数值a b c d e f g dop 驱动代码(16进制)01 1 1 1 1 1 1 1 0FCH1 0 0 0 0 0 1 1 060H2 1 1 0 1 1 0 1 00DAH3 1 1 1 1 0 0 1 00F2H4 0 1 1 0 0 1 1 066H5 1 0 1 1 0 1 1 00B6H6 1 0 1 1 1 1 1 00BEH7 1 1 1 0 0 0 0 00E0H8 1 1 1 1 1 1 1 00FEH9 1 1 1 1 0 1 1 00F6H 相应在程序软件上,可以通过调用程序给定的秒值经过特定计算算出需要显示的个位和十位,然后用DPTR调取LEDMAP的代码。3.4.2其他器件(1)发光二极管根据本设计的特点,红绿灯的显示不可少,红绿灯的显示采用普通的发光二极管。每个方向上设置红绿黄灯,总共4组。如果东西红灯亮,那南北方向就是绿灯亮,反之亦然,所以在硬件上连接图上也是对称分布的,如下图3.5所示。在本设计中,实际控制的灯只有6个,即:东西红灯,东西绿灯,东西黄灯,南北红灯,南北绿灯,南北黄灯,其中均是低电平有效。共有4钟状态:东西红灯亮,南北绿灯亮(11011101/DDH);东西红灯亮,南北黄灯亮(10111101/BDH);东西绿灯亮,南北红灯亮(11101101/EDH);东西黄灯亮,南北红灯亮(11100111/E7H)。图3.5 信号灯的连接括号中是P1端口8个引脚值P1.7,P1.6,P1.5,P1.4,P1.3,P1.2,P1.1,P1.0以及对应的十六进制码。在用于显示发光二极管时,直接由MOV指令将十六进制码送入P1口。刚才的4个状态是依次变换的,这就要涉及到状态的判断和衔接了。先把P1端口的值与所有的4个状态码比较,若相同则判断成功当前状态,再把下一状态的状态码送显P1即可。(2)蜂鸣器本设计采用一般蜂鸣器,蜂鸣器使用PNP三极管进行驱动控制,当连接到单片机上的引脚输出为低电平,PNP导通,蜂鸣器蜂鸣;当连接到单片机上的引脚输出高电平时,PNP截止,蜂鸣器停止蜂鸣。如下图3.6所示 图3.6 蜂鸣器连接紧停按键和违规信号传感器连接到外部中断引脚INT1,P3.6捕获到一个低电平,则进入该中断,中断程序中先把蜂鸣器P3.7端口置0,启动蜂鸣。并且等待恢复键F键按下,然后关闭蜂鸣返回。(3) 电源电路设计由于单片机工作时需要的+5V电压,所以在设计电源电路时,需要一个电子元件能提供+5V电压,由于7805能够提供5V电压的三端稳压电源,在实际的电路控制中应用其作为电源电路较为广泛,在普通的电子元器件商场都有销售易于购买,并且技术相对成熟.7805一脚为电源输入端,二脚为公共接地端,三脚即为我们所需要的+5V电压输出端.本文采用最典型的7805提供电压的电路,即在7805的1脚和公共接地端(即2脚)之间接入0.3F的电容,在公共接地端和三脚+5V电压输出端之间接入0.1F的电容. 图3.7 +5V电源电路3.5 本章小结本章主要叙述了控制系统的硬件电路的设计过程。首先,对本系统硬件部分先进行了总体概述并选择出单片机型号,除单片机的最小系统外,将其它需设计的电路归为输入与输出通道的设计。在其他硬件方面也做了相关阐述。第4章 系统软件设计4.1 系统功能要求交通管理方案:南北、东西两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为南北、东西两干道的公共停车时间。设南北道比东西道的车流量大。十字路口的东西向、南北向各有一组红绿灯和一个时钟系统, 时钟系统由两个LED 组成, 用于显示红绿灯的时间, 具体要求如下:1 初始时东西方向亮红灯,南北方向亮绿灯。2 然后南北向路口绿灯亮38s后转黄灯亮2s,再转红灯亮20s。3 相应地东西向红绿灯工作顺序为红灯亮40s后转绿灯亮18s, 再转黄灯亮2s, 以此进行循环。4 如果发生紧急事件, 则按下按钮, 此时东西、南北向都亮红灯。还可以各个方向单独通行。5 时钟采用倒计时方式显示, 即各灯亮时, 时钟为点亮的最大时间, 以后每1s 显示数据减1, 直到减为0 以后指示灯再进行变换。6 高峰时,各方向通行时间缩短,南北方向30s,东西方向10s。7 所有的时间设置都可以根据车流量实际情况进行调整。8 可以自动检测违章闯红灯。总之,本设计所实现的功能除了典型的交通灯功能之外,只要功能还有:全部禁行、全部通行、南北方向通行、东西方向通行、高峰控制、警报提示、各方向各时段通行时间自定义、手动复位等。注:“警报提示”是以一个开关模拟传感器发现闯红灯时所传输的信号。首先是按键处理程序,AT89C51通过对IO扫描,确定是否有键按下,再判断具体是那个键按下,根据键值跳转到按键处理程序。4.1.1 定时器原理定时器工作的基本原理其实就是给初值,让它不断加1直至减完为模值,这个初值是送到TH和TL中的。它是以加法记数的,并能从全1到全0时自动产生溢出中断请求。4.1.2程序流程图 图4.1程序流程图因此,我们可以把计数器记满为零所需的计数值,即所要求的计数值设定为C,把计数初值设定为TC 可得到如下计算通式: TC=M-C (4.1)式中,M为计数器模值。计数值并不是目的,目的是时间值,设计1次的时间,即定时器计数脉冲的周期为T0,它是单片机系统主频周期的12倍,设要求的时间值为T,则有C=TT0。计算通式变为: T=(MTC)T0 (4.2)模值和计数器工作方式有关。在方式0时M为8192;在方式1时M的值为65536;在方式2和3为256。就此可以算出各种方式的最大延时。如单片机的主脉冲频率为12MHZ,经过12分频后,若采用方式最大延时只有8.129毫秒,采用方式最大延时也只有65.536毫秒。这就是为什么扫描周期为50ms的原因,若使用软件则会耽搁程序流程,显然不可行。相反,时间计时方面却不可能只用计数器,因为显然秒钟已经超过了计数器的最大定时间,所以我们还必须采用定时器和软件相结合的办法才能解决这个问题。4.1.3 软件延时原理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. 4.1.4 中断原理本系统主要使用了外部中断,中断信号有引脚INT0和INT1输入,低电平有效,CPU每个时钟周期都会检测INT0和INT1上的信号,89C51允许外部中断以电平方式或负边沿方式两种中断方式输入中断请求信号,可由用户通过设置TCON中IT0和IT1位的状态来实现。以IT0为例,IT0=0,为电平触发方式,IT0=1,为负边沿触发方式,本设计采用电平方式,IE0为其中断标志位,有中断信号则置位,中断服务子程序响应后,IE0自动清零。IE中的EA为允许中断的总控制位,为1开启,EX0为外部中断允许控制位,为1开启。在优先级的允许下,一旦有外部中断信号产生,单片机CPU首先保护断点,PC值进栈,然后执行相应的中断服务子程序,执行完后,用RETI指令返回,此时CPU会从堆栈中取保存的断点地址,送回PC,程序再正常执行。4.2 模拟仿真4.2.1 仿真软件介绍Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器功能特点:Proteus软件具有其它EDA工具软件(例:multisim)的功能。这些功能是: 1原理布图
展开阅读全文