毕业设计(论文)-基于单片机的交通灯设计.doc_第1页
毕业设计(论文)-基于单片机的交通灯设计.doc_第2页
毕业设计(论文)-基于单片机的交通灯设计.doc_第3页
毕业设计(论文)-基于单片机的交通灯设计.doc_第4页
毕业设计(论文)-基于单片机的交通灯设计.doc_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的交通灯设计 摘 要近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。本系统采用MCS-51系列单片机ATSC51和可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制器,利用8051芯片的P1口设置红、绿灯燃亮时间;红绿灯循环点亮,交替时间黄灯5秒警示(交通灯信号通过PA口输出,显示时间直接通过8255的PC口输出至双位数码管);车辆闯红灯,则启动蜂鸣器报警;绿灯时间可检测车流量并通过双位数码管显示。本系统实用性强、操作简单、扩展功能强。 关键词:单片机;交通灯;闯红灯;测车流量ABSTRACT As technology evolved in recent years, it is monolithic integrated circuits, controls at the same time promote the traditional test is to update technology . In a real-time detector and automatic control system, a monolithic integrated circuits monolithic integrated circuits are used as a core component to use only knowledge in monolithic integrated circuits is not enough, according to the specific hardware construction, comprehensive handling perfected.The system uses mcs -51 series monolithic integrated circuits atsc51 and the programmatic interface chip 8255a parallel i turned around for a device for the traffic signal controller nearby,using p1 of 8051 chip for setting time controlling the green and the red burning . The traffic circulation of light, over time, there are five seconds a warning( The traffic light signal passes through the pa of output and time of the pc 8255 directly through the mouth of a digital output to double ). Vehicles running red lights, the buzzer will alarm;The flow of the car can be detected passed through in a digital display by the green time. This system with high practicability, easy operation, to extend the function of a strongKey words: MCU;traffic light;run the red light;Detection the flow of cars III目 录摘 要IABSTRACTII第1章 引 言11.1 研究的目的和意义11.2 本文简介2第2章 交通灯及单片机的介绍32.1 交通灯的发展历史32.1.1 交通灯的发展32.1.2 交通灯的发展趋势42.2 单片机的组成和特点52.2.1 单片机的组成52.2.2 单片机的特点52.2.3 单片机的分类62.3 单片机的应用62.3.1 单片机的应用分类6第3章 交通灯的硬件设计83.1方案的选择与论证83.1.1设计方案一83.1.2 设计方案二93.1.3 方案的比较93.1.4 方案的总体论述103.2 交通灯硬件电路原理图113.3 系统工作原理133.4 各模块电路设计143.4.1时钟电路143.4.2复位电路153.4.3蜂鸣器电路163.4.4 按键电路173.5相关芯片简介183.5.1 MSC-51芯片183.5.2 74LS373芯片;223.5.3 LED显示器23第4章 交通灯软件设计244.1 每秒钟的设定244.2 计数器硬件延时244.2.1 计数器初值计算244.2.2 计算公式244.2.3 秒的方法244.2.4 相应程序代码254.3 软件延时264.4 时间及信号灯的显示274.4.1 8051并行口的扩展274.4.2 显示原理274.4.3 8255PA口输出信号接信号灯274.4.4 8255输出信号与数码管的连接274.4.5 8255与8051的连接284.5 程序设计294.5.1 流程图如图所示29第5章 结束语39致 谢41参考文献42附 录 143附 录 251附 录 352附 录 454第1章 引 言1.1 研究的目的和意义当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。随着电气化的发展,交通灯的指示使十字路口的秩序井然有序。20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 1目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。3近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月异,逐渐出现用单片机控制交通信号灯,操作过程简单,安装维护简单而且交通灯的功能越来越强,可靠性和准确性也越来越高。本设计就是利用单片机作为核心部件进行逻辑控制及信号的产生,使以上问题得以解决。并且可以在绿灯时间检测车流量,利于经过实际情况而对时间加以调整控制;而在有车辆闯红灯时,启动蜂鸣器报警,更利于控制交通秩序,有效保障人生安全。1.2 本文简介本系统采用MCS-51系列单片机ATSC51和可编程并行I/O接口芯片8255为中心器件来设计交通灯控制器,利用8051芯片的P1口设置红、绿灯燃亮时间;红绿灯循环点亮,交替时间黄灯5秒警示(交通灯信号通过PA口输出,显示时间直接通过8255的PC口输出至双位数码管);车辆闯红灯,则启动蜂鸣器报警;绿灯时间可检测车流量并通过双位数码管显示。当预设初始值设定好后,交通信号灯即可自动工作,红绿灯循环,实现道路的畅通运行,还可据实际情况重新调整红绿灯的燃亮时间。因而该设计实用性强,可靠性高。1第2章 交通灯及单片机的介绍2.1 交通灯的发展历史2.1.1 交通灯的发展早在1850年,18城市交叉口处不断增长的交通就引发了人们对安全和拥堵的关注。世界上第一台交通自动信号灯的诞生,拉开了城市交通控制的序幕,1868年,英国工程师纳伊特在伦敦威斯特敏斯特街口安装了一台红绿两色的煤气照明灯,用来控制交叉路口马车的通行,但一次煤气爆炸事故致使这种交通信号灯几乎销声匿迹了近半个世纪。1914年及稍晚一些时候,美国的克利夫兰、纽约和芝加哥才重新出现了交通信号灯,它们采用电力驱动,与现在意义上的信号灯已经相差无几。1926年英国人第一次安装和使用自动化的控制器来控制交通信号灯,这是城市交通自动控制的起点。早期的交通信号灯使用“固定配时”方式实行自动控制,这种方式对于早期交通流量不大的情况曾起过一定的作用。但随着汽车工业的发展、交通流量增加、随机变化增强,19采用以往那种单一模式的“固定配时”方中国智能交通网式已不能满足客观需要,于是一种多时段多方案的信号控制器开始出现并逐步取代了传统的只有一种控制方案的控制器。除了多时段多方案定时控制的使用,为了避免各交叉路口之间“各自为政”的孤立控制方式对交通流造成的频繁停车,还必须把相邻的交叉路口作为一个系统来统一地加以控制。1917年,在美国盐湖市开始使用联动式信号系统,把六个交叉路口作为一个系统,以人工方式加以集中控制。1922年,美国休斯顿市建立了一个同步系统,它以一个交通亭为中心控制十二个交叉路口。1928年,上述系统经过改进,形成“灵活步进式”定时系统;由于它简单、可靠、价格便宜,很快在美国推广普及。这种系统以后不断改进、完善,成为当今的协调控制系统。20世纪30年代初,美国最早开始用车辆感应式信号控制器,之后是英国,当时使用的车辆检测器是气动橡皮管检测器。车辆感应控制器的特点是它能根据检测器测量的交通流量来调整绿灯时间的长短,使绿灯时间更有效地被利用,减少车辆在交叉口的时间延误,比定时控制方式有更大的灵活性。车辆感应控制的这一特点刺激了车辆检测器技术的发展。继气动橡皮管式检测器之后,雷达、超声波、光电、地磁、电磁、微波、红外以及环形线圈等检测器相继问世。当今在城市道路交通自动控制、交通监测和交通数据采集系统中,应用最广的是环形线圈车辆检测器。超声波检测器主要在日本等少数国家得到广泛应用。计算机技术的出现为交通控制技术的发展注入了新的活力,1952年,20美国科罗拉多州丹佛市首次利用模拟计算机和交通检测器实现了对交通信号机网的配时方案自动选择式信号灯控制,而加拿大多伦多市于1964年完成了计算机控制信号灯的实用化,建立了一套由IBM650型计算机控制的交通信号协调控制系统,成为世界上第一个具有电子数字计算机城市交通控制系统的城市。这是道路交通控制技术发展的里程碑。伴随着城市交通信号控制系统的迅速发展。人们认识到,要更好地提高城市管理水平,不仅仅依靠硬件设备的更新和改进,还必须同时在控制逻辑和方法上有所突破,即城市交通的区域协调控制。传统的城市道路交通控制指的是区域交叉口信号灯控制,而城市交通的区域协调控制,是在整个城市范围内对交通进行控制,这无论是从理论角度还是实践角度,都是一个极其复杂的大系统控制问题。从最早的手牵皮带到20世纪50年代的电气控制,从采用计算控制到现代化的电子定时监控,交通信号灯在科学化,自动化上不断地更新,发展和完善。2.1.2 交通灯的发展趋势目前设计交通灯的方案有很多,有应用CPLD设计实现交通信号灯控制器方法2;有应用PLC实现对交通灯控制系统的设计;有应用单片机实现对交通信号灯设计的方法。目前,国内的交通灯一般设在十字路门,在醒目位置用红、绿、黄三种颜色的指示灯。加上一个倒计时的显示计时器来控制行车。对于一般情况下的安全行车,车辆分流尚能发挥作用,但根据实际行车过程中出现的情况,还存在以下缺点:1两车道的车辆轮流放行时间相同,在十字路口,经常一个车道为主干道,车辆较多,放行时间应该长些;另一车道为副干道,车辆较少,放行时间应该短些。2两条干道的红绿时间不能随时间的改变而修改。 因而交通灯将向高度的智能化方向发展:拥有自动调整亮灯时间长短的功能等。譬如说,它能自动感应该地区的交通情况,如果塞车的话,该交通灯能自行控制红、黄与绿灯的亮灯时间长短。2.2 单片机的组成和特点单片机是微型机的一个主要分支,【4】在结构上的最大特点是把CPU、存储器、定时器和多种输入/输出接口电路集成在一块超大规模集成电路芯片上。就其组成和功能而言,一块单片机芯片就是一台计算机。2.2.1 单片机的组成单片机是通过内部总线把计算机的各主要部件接为一体,其内部总线包括地址总线、数据总线和控制总线。其中,地址总线的作用是在进行数据交换时提供地址,CPU通过它们将地址输出到存储器或I/O接口;/数据总线的作用是在CPU与存储器或I/O接口之间,或存储器与外设之间交换数据;控制总线包括CPU发出的控制信号线和外部送入CPU的应答信号线等。2.2.2 单片机的特点由于单片机的这种结构形式及它所采取的半导体工艺,使其具有很多显著的特点,因而在各个领域都得到了迅猛的发展。【5】单片机主要发如下特点:1. 有优异的性能价格比。2. 集成度高、体积小、有很高的可靠性。单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了单片机的可靠性与抗干扰能力。另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作。3. 控制功能强。为了满足工业控制的要求,一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。4. 低功耗、低电压,便于生产便携式产品。5. 单片机的系统扩展和系统配置较典型、规范,容易构成各种规模的应用系统。2.2.3 单片机的分类单片机作为计算机发展的一个重要领域,应用一个较科学的分类方法。根据目前发展情况,从不同角度单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。1.通用型/专用型这是按单片机适用范围来区分的。例如,80C51是通用型单片机,它不是为某种专用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。2.总线型/非总线型这是按单片机是否提供并行总线来区分的。【2】总线型单片机普遍设置有并行地址总线、数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。3.控制型/家电型这是按照单片机大致应用的领域进行区分的。一般而言,工控型寻址范围大,运算能力强;用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。显然,上述分类并不是惟一的和严格的。例如,80C51类单片机既是通用型又是总线型,还可以作工控用。2.3 单片机的应用2.3.1 单片机的应用分类由于单片机具有显著的优点,它已成为科技领域的有力工具,人类生活的得力助手。它的应用遍及各个领域,主要表现在以下几个方面:1.单片机在智能仪表中的应用单片机广泛地用于各种仪器仪表,使仪器仪表智能化,并可以提高测量的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比。2. 单片机在机电一体化中的应用机电一体化是械工业发展的方向。6机电一体化产品是指集成机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品,例如微机控制的车床、钻床等。单片机作为产品中的控制器,能充分发挥它的体积小、可靠性高、功能强等优点,可大大提高机器的自动化、智能化程度。3.单片机在实时控制中的应用单片机广泛地用于各种实时控制系统中。例如,在工业测控、航空航天、尖端武器、机器人等各种实时控制系统中,都可以用单片机作为控制器。单片机的实时数据处理能力和控制功能,可使系统保持在最佳工作状态,提高系统的工作效率和产品质量。4.单片机在分布式多机系统中的应用在比较复杂的系统中,常采用分布式多机系统。7多机系统一般由若干台功能各异的单片机组成,各自完成特定的任务,它们通过串行通信相互联系、协调工作。单片机在这种系统中往往作为一个终端机,安装在系统的某些节点上,对现场信息进行实时的测量和控制。单片机的高可靠性和强抗干扰能力,使它可以置于恶劣环境的前端工作。5.单片机在人类生活中的应用自从单片机诞生以后,它就步入了人类生活,如洗衣机、电冰箱、电子玩具、收录机等家用电器配上单片机后,提高了智能化程度,增加了功能,倍受人们喜爱。单片机将使人类生活更加方便、舒适、丰富多彩。综合所述,8单片机已成为计算机发展和应用的一个重要方面。另一方面,单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。7李锐:基于单片机的交通灯设计第3章 交通灯的硬件设计3.1方案的选择与论证在确定电路的各项技术指标后,电路需要进行方案选择论证,本设计可以采用两种方案:即PLC电路设计方案和单片机设计方案两种。3.1.1设计方案一如图3-1所示为方案一的硬件接线图。由图可见:起动按钮SB1接于输入继电器X0端,停止按钮SB2接于输入继电器xl端,东西方向的绿灯接于输出继电器Y5端,东西方向黄灯接于输出继电器Y4端,9东西方向的红灯接于输出继电器Y3端,南北方向绿灯接于输出继电器Y2端,南北方向的黄灯接于输出继电器Y1,南北方向红灯接于输出继电器Y0。将输出端的COM1及COM2用导线相连,输出端的电源为交流220V。如果信号灯的功率较大,一个输出继电器不能带动两只信号灯,可以采用一个输出点驱动一只信号灯,也可以采用输出继电器先带动中间继电器,再由中间继电器驱动信号灯。信号灯受启动及停止按钮的控制,当按下启动按钮时,信号灯系统开始工作,并周而复始地循环工作,当按下停止按钮时,系统将停止在初始状态,所有信号灯都熄灭。 图3-1 设计方案一利用方案一,需要将电路按照其工作条件和布局分配逐级连接好,进行好编程处理即可投入运行。3.1.2 设计方案二如图3-2所示为方案二的总体方框图。根据设计要求与设计思路,该系统设计方案的硬件电路主要由7部分组成,即开关电路、红外对管检测电路、时钟电路、复位电路、LED显示器驱动电路、LED显示器电路和蜂鸣器电路。其中单片机 8051 是系统工作的核心,它主要负责信号的接收及控制等。它主要是利用8051为主CPU展开设计,10并且能够充分利用其多个I/O接口,用来控制红绿灯的燃亮时间,并通过数码管显示等,通过软件编程的方式在其内部完成计数、延时的功能。它的工作过程是:初始化复位后,通过拨码开关设置好初始值,单片机则自主进行循环控制。若在红灯倒计时间内有车闯过,则进入蜂鸣器电路;若需要动态调整时间,可查询车流量,在进行具体的调整(具体硬件电路及工作原理请参见第3.2和3.3节)图3-2 设计方案二3.1.3 方案的比较利用方案一来实现这个电路的设计功能,需要将电路按照其工作条件和布局分配逐级连接好,主要是通过起始开关加以控制,设计思路也较为简单。但需要通过较长时间的调试方可成功。在时间的需求上面可能比单片机多,同时此方案所用到的知识都是数电、模电理论基础,并不全面。 利用方案二来实现这个电路的设计功能,11它以8051作为核心,通过扩展I/O口的方式对红绿灯进行控制。调试方面不需要产生梯形图等,可能略为优于方案一,而就设计思路而言,方案二中的车流量检测,蜂鸣器报警等实用性更强,考虑更为全面,其优点也相对较为突出。但是所涉及的芯片较多,在经济上的付出相对较大。但在电路的制作上面所需要花费的时间和精力需要也很多,因为在以8051为主展开设计当中,首先要以51机为中心,扩展I/O口,连接8255芯片,进而到达LED数码管显示电路,并且还需要连接信号处理放大电路。另外需要连接发光二极管,以显示颜色的循环。这样完成电路的硬件部分,就已经很麻烦了,同时软件编程同样需要大量的时间。但是它集模电、数电和单片机于一体,知识比较全面,具有挑战性。它的性能可能会比方案一更好。单片机编程,用单片机设计电路,1由于使用软硬件结合的方式,所以电路结构明了,调试也相对方便。与第一种方案比较优点的是极为明显的。因而本设计采用第二种方案。3.1.4 方案的总体论述东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停车时间。设东西道比南北道的车流量大,17指示灯燃亮的方案如下表。表3-1 时间设置表40S5S60S5S东西道红灯亮黄灯亮绿灯亮黄灯亮南北道绿灯亮黄灯亮红灯亮黄灯亮 上表: (1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯,此道车辆通过,行人禁止通行。时间为40秒。(2)黄灯闪烁5秒,警示车辆和行人红、绿灯的状态即将切换。 (3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行。时间为60秒。 东西方向车流大 通行时间长。(4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。(5)此表可根据车流量动态设定红绿灯初始值。3.2 交通灯硬件电路原理图图3-3 系统电路原理图图3-3中,P0.7作为片选信号,低电平有效,其他无效;P3.0为串行口输入,控制蜂鸣器电路;P3.1为串行口输出,控制是否通过拨码开关设置初值;12通过拨码开关输入初始时间,其中P1.7为控制位,选择存入红灯时间或者绿灯时间,剩余7位存入初始数据,由8051P1口输入系统;P0.1P0.0用于选择8255端口;而由8051的P0口向8255数据口输送信息;由8255的PB3控制数码管十位的输出,PB2则控制个位;825的5PA口显示红绿黄灯的燃亮情况,PC口输出字段码,通过放大信号处理,显示交通灯的燃亮时间。3.3 系统工作原理交通信号灯是用单片机来设计制作完成,13其功能的实现主要通过软件编程来完成。由于采用单片机8051,它是低功耗、高性能的 8 位单片机。该系统运行准确,考虑全面,实用性强。8051 单片机由微处理器,存储器,I/O 口以及特殊功能寄存器 SFR 等部分构成。其存储器在物理上设计成程序存储器和数据存储器两个独立的空间,片内程序存储器的容量为 4KB,片内数据存储器为 128 个字节。8051 单片机有 4个 8 位的并行 I/O 口:P0 口,P1 口,P2 口和 P3 口。各个接口均由接口锁存器,输出驱动器,和输入缓冲器组成。P1 口是唯一的单功能口,仅能用作通用的数据输入/输出口。P3 口是双功能口除了具有数据输入/输出功能外,每条接口还具有不同的第二功能,如 P3.0 是串行输入口线,P3.1 口是串行输出口线。在需要外部程序存储器和数据存储器扩展时,P0 可作为分时复用的低 8 位地址/数据总线,P2 口可作为高 8 位的地址总线。P3 口也可作为 8051 的一些特殊功能口,同时为闪烁编程和编程校验接收一些控制信号。外部振荡电路单片机必须在8051 的驱动下才能工作.1在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元。外部中断和内部中断并存,单片机有硬件复位端,只要输入持续 4 个机器周期的高电平即可实现复位。硬件复位后的各状态可知寄存器及存储器的值都恢复到了始值。外部还接有蜂鸣器,警示闯红灯的车辆,通过编程控制蜂蜜器报警的时间长短。采用七段码LED数码管显示器,它是共阴极的,输入高电平时点亮。外部还接有一按键,其主要目的在于绿灯倒计时时,时间显示与车流量显示的转换。初始化后,经由拨码开关输入初始值,调试好后,单片机则可进行自动循环控制。初始时间由8051的P1口送入系统,并通过8051的P0口向8255数据口传送信息,通过8051内部的定时器控制红绿黄灯的燃亮时间,而由P0.1、P0.0进行8255端口的选择,而其具体的燃亮情况由8255的PA口加以显示,其燃亮的时间则由PC口控制,经由放大器,通过数码管显示,而数码管的十位、个位分别由8255的PB3、PB2控制,进而实现红绿黄灯的循环点亮,道路的畅通运行。若是在红灯倒计时时间内,由红外检测发现有车闯红灯,置位端口(P3.0)清零,低电平点亮蜂鸣器,发出报警音,三秒以内恢复正常;而在绿灯时间增加车流量的检测功能,通过P3.3口高电平的输入个数记数,并由外部按键电路控制是否显示车流量,利于根据不同时段的具体情况做出调整;可以通过适当改设初值的方法,调整红绿灯燃亮时间,缓解交通压力。3.4 各模块电路设计3.4.1时钟电路XTAL1和XTAL2是MSC-51系列单片机的时钟引脚。两引脚1连接于单片机内部的一个高增益反相放大器,用于与外部振荡源一起构成振荡电路。其中XTAL1为该放大器的输入引脚,XTAL2为该放大器的输出引脚。单片机工作的时间基准是由时钟电路提供的,其时钟周期主要有晶振决定。MSC-51系列单片机的主频信号有两种产生方式,即内部方式和外部方式,本次设计采用内部方式。内部方式时钟电路如图3-4 所示。外接晶体振荡器以及电容C1、C2构成并联谐振电路,接在放大器的反馈回路中,内部振荡器产生自激振荡,一般晶振可以在2MHz到12MHz之间任选。对外接电容虽然没有严格的要求,但电容的大小多少会影响震荡频率高低、振荡的稳定性、起振的快速性和温度的稳定性。外接晶体时,C1、C2的典型值为30PF。其结果只是机器周期时间不同,影响计数器的计数初值。图3-4 时钟电路3.4.2复位电路复位操作是计算机系统经常进行的操作,即使【13】其软、硬件回到初始状态,准备工作。在设计和使用单片机应用系统时必须了解其复位操作,电路如图3-5所示。复位引脚RST/Vpd是一个双功能引脚,即复位/备用电源。复位功能RST: 单片机的复位是靠外部电路实现的。在振荡信号正常运行情况下,只要RST引脚保持两个机器周期以上时间的高电平,系统就能复位。复位以后,单片机内各部件恢复到初始状态,单片机从ROM的0000H开始执行程序。 备用电源功能Vpd:当Vcc掉电时,在Vcc下降到操作系统允许极限之前,RST/Vpd引脚上备用电源,向内部RAM供电,这是系统处于一种低功耗方式,备用Vcc恢复时,备用电源仍然保持一定时间,以便完成复位操作,然后重新开始工作。图3-5 复位电路3.4.3蜂鸣器电路本设计要求红灯定时时间内,有车闯红灯时要有声音警报信号的产生,可以选择一只蜂鸣器来实现这一功能。压电式蜂鸣器(HA)工作时越需要10mA驱动电流,并设计一个相应的驱动及控制电路。电路设计如图3-6所示,蜂鸣器(HA)作为三极管的集电极负载,当三极管导通时,蜂鸣器发出鸣叫声音,三极管截止时,蜂鸣器不发声。R16是限流电阻。蜂鸣器电路与单片机的接口:三极管的基极接到单片机P3口的P3.0,P3.0引脚作为输出口使用。当P3.0=0时,三极管导通,使蜂鸣器的两个引脚间获得将近5V的直流电压,蜂鸣器中有电流通过,而产生蜂鸣声。当P3.0=1时,三极管截止,蜂鸣器的两引脚间的直流电压接近于0V,蜂鸣器不发声。蜂鸣器只在红灯倒计时时间内有车闯红灯时发出蜂鸣声。蜂鸣器有长声和短声两种,可以根据需要进行选择。本例选择短声蜂鸣器。蜂鸣器报警时间的长短,通过软件编程控制,本例中报警三秒后恢复正常。 图3-6 蜂鸣器电路3.4.4 按键电路本设计中用到两类按键电路,图见3-7。(A)拨码开关:拨码开关【15】分顶拨式,琴键式,侧拨弯脚式三类,广泛使用于数据处理、通信、遥控和防盗自动警铃系统等需要手动程式编制的产品上,一般的8421拨码开关是一个多位BCD编码拨动开关:里面每个开关都有一块电路板,通过印刷电路图案产生BCD编码,每一位开关下面的4个管脚输出相应的BCD码。而在本设计中采用8位的拨码开关,其中的一位作为控制位;其余各位存入初始数据。当开关接通时输入高电平,否则低电平。数据的转换则看除开控制位后的低七位,按照二进制十进制的规则转换即可,如本例中的40、60则可分别键入X0101000、X0111100。(B)按键电路:按键电路的应用广泛,如抢答器、定时器等,本设计中出于对在绿灯倒计时时,车流量显示问题的考虑,通过检测P2.4的电位高低,选择是否需要切换显示车流量,是简单的按键控制。当按下按键时,输入低电平显示车流量;默认状态下显示时间。图3-7 按键电路3.5相关芯片简介3.5.1 MSC-51芯片8051是MCS-51系列单片机的典型产品,【14】我们以这一代表性的机型进行系统的讲解。1.8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:(1) 中央处理器中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。(2) 数据存储器(RAM)8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。 (3) 程序存储器(ROM)8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。(4) 定时/计数器(ROM)8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。(5) 并行输入输出(I/O)口8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。(6) 全双工串行口8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。(7) 中断系统8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。(8) 时钟电路8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。2.单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。下图是MCS-51系列单片机的内部结构示意图3-8图3-8 MCS-51系列单片机的内部结构示意图MCS-51的引脚说明MCS-51系列单片机中的8031、8051及8751均采用40Pin【16】封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明:如图3-9图3-9 MCS-51系列单片机的引脚图Pin9:RESET/Vpd复位信号复用脚,当8051通电,【1】时钟电路开始工作,在RESET引脚上出现24个时钟周期以上(两个机器周期)的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8051的初始态。8051的复位方式可以是自动复位,也可以是手动复位,见下图3-10。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。图3-10 8051复位电路和时钟电路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.5.2 74LS373芯片;74LS373 是一种带三态门的8D锁存器,【15】管脚示意图见3-11其中:1D-8D为8个输入端。1Q-8Q为8个输出端。LE为数据打入端:当LE为“1”时,锁存器输出状态同输入状态;当LE由“1”变“0”时,数据入锁存器;为输出允许端:当=0时,三态门打开;当=1时,三态门关闭,输出高阻。图3-1 74LS373管脚图表3-2 真值表DnLEOEOnHHLHLHLLXLLQ0XXHZL =低逻辑电平H =高逻辑电平X =高或低的逻辑电平 =高阻抗3.5.3 LED显示器1 LED数码显示器介绍【2】发光二极管LED是一种通电后能发光的半导体器件,其导电性质与普通二极管类似。LED数码显示器就是由发光二极管组合而成的1种新型显示器件。在单片机系统中应用非常普遍。2 LED数码显示器结构LED数码显示器是1种由LED发光二极管组合显示字符的显示器件。它使用了8个LED发光二极管,其中7个用于显示字符,1个用于显示小数点。3 LED显示器连接方法(1) 共阳极接法。把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。当阴极端输入低电平时,段发光二极管就导通点亮,而输入高电平时则不点亮。(2) 共阴极接法。把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。每个发光二极管的阳极通过电阻与输入端相连。当阳极端输入高电平时,段发光二极管就导通点亮,而输入低电平时则不点亮。在本设计中所采用的是共阴极LED数码显示器,其引脚排列如下图3-15所示: 图3-12 LED显示器引脚23四川理工学院本科毕业(设计)论文第4章 交通灯软件设计4.1 每秒钟的设定延时方法可以有两种一中是利用MCS-51内部定时器才生溢出中断来确定1秒的时间,另一种是采用软延时的方法。4.2 计数器硬件延时4.2.1 计数器初值计算定时器工作时必须给计数器送计数器初值,这个值是送到TH和TL中的。它是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值设定为C和计数初值设定为TC 可得到如下计算通式: TC=M-C式中,M为计数器摸值,该值和计数器工作方式有关。在方式0时M为8192 ;在方式1时M的值为65536;在方式2和3为2564.2.2 计算公式T=(MTC)T计数或TCMTT计数T计数是单片机时钟周期主频T的12倍;TC为定时初值方式0TMAX2131微秒8.192毫秒方式1 TMAX216微妙65.536毫秒显然1秒钟已经超过了计数器的最大定时间,所以我们只有采用定时器和软件相结合的办法才能解决这个问题4.2.3 秒的方法我们采用【1】在主程序中设定一个初值为20的软件计数器和使T0定时50毫秒这样每当T0到50毫秒时CPU就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,CPU先使软件计数器减,然后判断它是否为零。为零表示1秒已到可以返回到输出时间显示程序。4.2.4 相应程序代码()主程序定时器需定时50毫秒,故T0工作于方式1。初值:TCMT T计数21650000/1=15536=3CBOH ORG 1000H START: MOV TMOD, #01H ; 令TO为定时器方式1 MOV TH0, #3CH ;装入定时器初值 MOV TL0, #BOH; MOV IE,#82H ;开TO中断 SEBT TRO ;启动T0计数器 MOV RO, #14H;软件计数器赋初值LOOP:SJMP $ ;等待中断()中断服务子程序 ORG 000BH AJMPBRTO ORG 00BHBRTO:DJNZ R0, NEXTAJMP TIME ;跳转到时间及信号灯显示子程序 DJNZ: MOVR0, #14H ;恢复值 MOV TH0, #3CH ;重装入定时器初值 MOV TL0, #BOH; MOV IE, #82H ;RETIEND4.3 软件延时MCS-51的工作频率为2-12MHZ,我们选用的8051单片机的工作频率为6MHZ。机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/6M)=2us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间。具体的延时程序分析: DELAY:MOV R4,#08H ;延时1秒子程序 DE2:LCALL DELAY1 DJNZ R4,DE2 RETDELAY1:MOV R6,#0 延时125ms 子程序 MOV R5,#0DE1: DJNZ R5,$ DJNZ R6,DE1 RET MOV RN,#DATA 字节数数为2 机器周期数为1所以此指令的执行时间为2us DELAY1 为一个双重循坏 循环次数为256*256=65536 所以延时时间=65536*2=131072us 约为125us DELAY R4设置的初值为8 主延时程序循环8次,所以125us*8= 1秒由于单片机的运行速度很快其他的指令执行时间可以忽略不计。4.4 时间及信号灯的显示4.4.1 8051并行口的扩展8051虽然有4个8位I/O端口,但真正能提供借用的只有P1口,因为P2和P0

温馨提示

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

评论

0/150

提交评论