基于单片机有急救车通过的交通灯设计.doc_第1页
基于单片机有急救车通过的交通灯设计.doc_第2页
基于单片机有急救车通过的交通灯设计.doc_第3页
基于单片机有急救车通过的交通灯设计.doc_第4页
基于单片机有急救车通过的交通灯设计.doc_第5页
已阅读5页,还剩36页未读, 继续免费阅读

下载本文档

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

文档简介

41 本科毕业设计(论文)题目名称:单片机模式下急救车与交通灯设计学生姓名: 高 丽 学 院: 理 学 院 专业名称:电子信息科学与技术 指导教师: 张 建 国 二八 年 六 月 日 第 1 页单片机模式下急救车与交通灯设计摘要随着社会经济的发展,城市交通问题越来越引起人们的关注。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。尤其是遇到紧急情况,比如有急救车通过时,就必须保持道路的畅通,确保急救车顺利通过。为保证交通安全,防止交通阻塞,使城市交通井然有序,交通信号灯在大多数城市得到了广泛应用。本课题提出了一种单片机模式下急救车与交通灯的设计。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯,然后状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。最后循环至状态1。所设计的交通灯管理系统要求满足急救车优先通过的要求。有急救车到达时,两个方向交通灯全红,以便让急救车通过。假定急救车通过路口的时间为10秒,急救车通过后,交通灯恢复中断前的状态。关键词:单片机,交通灯,急救车,外部中断The design of emergency vehicles and traffic lights under Single-chip processor modeAbstractAlong with the social economy development, the municipal transportation question is more and more arousing peoples interest. The human, the vehicle and the road, the three relations of coordination, have become one of important questions which the traffic control department needs to solve. Encounters the emergency case in particular, for instance when emergency vehicles pass, it is imperative to maintain the path unimpeded, guarantee the emergency car to pass smoothly. In order to guarantee the traffic safety, prevented the traffic jam, make the municipal transportation to be systematic, the traffic light control obtained the widespread application in the majority cities. This topic proposed the design of emergency vehicles and traffic lights under Single-chip processor mode. Supposed that the intersection for East, West, South and North trend. The original state 0 is East and West red light, North and South red light, then the state 1 North and South green light is open to traffic, East and West red light. For a period of time to the state 2, North and South green light flashes several times then turns to yellow light for a few seconds delay, East and West is still red light. Again transfers state 3 East and West green light is open to traffic, North and South red light. For a period of time to the state 4, East and West green light flashes several times then turns to yellow light for a few seconds delay, North and South is still red light. Finally circulates to the state 1. Designed the traffic light management system management system requests satisfies the emergency car first through. When the emergency vehicle arrives, two directions of traffic lights are entire red, in order to let the emergency vehicle pass. Supposes the emergency vehicle through the street intersection time is 10 seconds, after the emergency vehicle passed, the traffic light restores the state before the interrupt.Keywords: single-chip processor, traffic lights, emergency vehicles, external interrupt目录1绪论11.1引言11.2课题研究的发展背景及意义21.2.1交通信号灯控制的发展概述21.2.2课题研究的意义31.3本课题要研究的内容和解决的问题41.4论文的组织结构52交通系统的特性53交通灯控制需求分析63.1正常时序控制63.2急救车通过控制74系统的安装和启动75系统的硬件设计85.1总体设计系统总框图85.2实验系统简介85.2.1 伟福仿真器系统概述95.2.2 在Keil的V2集成环境下使用伟福仿真器105.2.3 开发环境简介115.2.4 LED电平显示电路175.2.5单脉冲电路175.3各模块设计185.3.1 EX51B仿真板185.3.2 交通灯显示模块195.3.3 急救车通过模块205.4实验线路设计206系统的软件设计216.1 系统实验软件设置216.2 系统工作原理216.3 系统流程图227系统程序与结果分析237.1系统程序237.2结果分析328总结和展望338.1 总结338.2 展望34参考文献35致谢36 第 36 页1绪论1.1引言交通(Traffic)在人们的日常生活中,几乎与每个人都息息相关。近年来,随着机动车辆的迅速发展,给城市交通带来巨大压力。城镇道路建设由于历史等各种原因相对滞后,特别是街道各十字路口,更是成为交通网中通行能力的“隘口”和交通事故的“多发源”。而且随着人口的增加,人们生活方式的不断变化,人们对交通的需求也不断增加。进而在城市交通中交通拥挤、堵塞现象日趋严重,给人们的正常生活和工作带来了诸多不便。为保证交通安全,防止交通阻塞,使城市交通井然有序,交通信号灯在大多数城市得到了广泛应用。对于复杂的城市交通系统,为了确保安全,保证正常的交通秩序,十字路口的信号控制必需按照一定的规律变化,以便于车辆行人能顺利地通过十字路口。目前,大部分城市中十字路口交通灯的控制普遍采用固定转换时间间隔的控制方法1。由于十字路口不同时刻车辆的流量是复杂的、随机和不确定的,采用固定时间的控制方法,经常造成道路有效利用时间的浪费,出现空等现象,影响了道路的畅通,而且出现特殊情况的时候也没有办法做出处理措施。为此 ,考虑到单片机具有物美价廉、功能强、使用方便灵活、可靠性高等特点,采用MCS-51系列的单片机来实现十字路口急救车与交通信号灯的控制,能较好的解决这个问题。所以为保证交通控制的可靠稳定,用单片机模式下急救车与交通灯的设计来控制交通系统是很必要的。本课题提出了单片机模式下的急救车与交通灯的设计,正常情况下,十字路口的红绿灯应交替变换,考虑紧急情况下,如有救护车或警车到来时,应优先让其通过。在本课题中,用发光二极管来模拟信号灯,救护车的优先通过请求信号由外部中断技术来模拟。假设南北和东西的通车时间都为30 s ,外部中断的延时为10 s 。一般情况下,交通灯正常显示,有急救车通过时,两个方向交通灯全红,以便让急救车通过。有效地缓解了紧急情况下的道路通行情况。1.2课题研究的发展背景及意义1.2.1交通信号灯控制的发展概述当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下喇叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。1959年,加拿大多伦多市开展了对计算机控制信号灯的研究。1964年多伦多成了世界上第一个具有城市交通计算机控制的城市,城市交通信号灯的控制自此揭开了新的一页。随着微机的出现和迅猛发展,以及其它相关技术的进步,从根本上解决了集中控制的弱点,实行了分散控制,使信号灯的控制水平迈上了新的台阶。目前,在澳大利亚的悉尼运行的SCAT系统就是这样一个系统,实践证明它的前途是光明的。在我国,有不少专家学者和工程技术人员,对城市交通信号灯的控制进行了广泛的研究,各研究单位一边引进国外先进技术,吸取国外的经验和教训,一边根据我国交通的实际情况,研制新的适合我国国情的控制方案,取得了一些理论和实际的成果。但与国外相比差得还很多。随着以信息为代表的高新技术浪潮的冲击,我国也加强了对智能运输系统(Intelligent Transport Systems,简称ITS)2的研究工作,成立了ITS研究中心。相信不久的将来我国在ITS方面会迈出可喜的一步。1.2.2课题研究的意义在城市交通中交通拥挤、堵塞现象日趋严重,给人们的正常生活和工作带来了诸多不便,而城市十字路口是交通事故的多发区,拥挤状态比稀疏状态及较平稳状态下的事故率大100多倍,拥挤是造成交通事故的直接而又重要的原因。所以对城市交通状况的管理和研究,特别是十字路口的管理和研究,不能不说是非常有意义的工作。城市十字路口的有效控制对整个城市的交通起着至关重要的作用。所幸的是,城市十字路口的控制早就引起人们的重视,提出并实施了一些行之有效的措施,取得了可喜的成果。现在交通灯一般设在十字路口,在醒目位置用红、绿、黄三种颜色的指示灯,加上一个倒计时的显示计时器来控制行车,对于一般情况下的安全行车、车辆分流发挥着作用。随着交通量的日益增加,交通环境的变化以及人们对交通环境要求的不断提高,现有十字路口上的交通控制系统巳不能适应这些变化和要求。根据实际行车过程中出现的情况,主要有如下几个缺点3:1两车道让车轮流放行时间相同且固定,在十字路口,经常一个车道为主干道,车辆较多,放行时间应该长些;另一车道为副干道,车辆较少,放行时间短些。2没有考虑紧急车通过时,两车道应采取的措施,譬如,有消防车通过执行紧急任务时,两车道的车都应停止,让紧急车通过。根据行车过程中出现的实际情况,如何全面有效地利用交通灯指示交通情况,我们需要提出一种新的方案来解决道路交通问题。传统的交通信号灯控制一般采用电子线路和继电器控制,结构复杂,可靠性低,故障率高,因此研究计算机与自动控制技术,设计新型的交通灯控制系统,对缓解交通阻塞,提高畅通率具有十分现实的意义。本人根据单片机具有物美价廉、功能强、使用方便灵活、可靠性高等特点,提出了一种用MCS-51单片机模式下急救车与交通灯的设计,东西、南北的通行时间可调,并有急救车车通过时的处理功能,该系统具有设计周期短、可靠性高、维护方便、使用简单等优点,为交通指挥自动化提供了一种新的廉价手段,具有一定的推广意义。1.3本课题要研究的内容和解决的问题考虑到单片机具有物美价廉、功能强、使用方便灵活、可靠性高等特点,本课题采用MCS-51系列的单片机来实现十字路口交通信号灯的控制。 重点研究的内容:假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯,然后转状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。最后循环至状态1。所设计的交通灯管理系统要求满足急救车优先通过的要求。有急救车到达时,两个方向交通灯全红,以便让急救车通过。假定急救车通过路口的时间为10秒,急救车通过后,交通灯恢复中断前的状态。本课题以外部中断INT0为中断申请,表示急救车通过。一般中断程序进入时应保护PSW,ACC以及中断程序使用但非其专用的寄存器。本实验的中断程序保护了PSW,ACC等三个寄存器并且在退出前恢复了这三个寄存器。由此可以确保急救车通过后,交通灯恢复中断前的状态。 关键问题: 用单次脉冲发生器提供外部中断脉冲,运用外部中断技术, 对单片机的I/O 端口P1口编程,使单片机能够在任何时间响应中断请求,正确处理紧急状态的交通灯情况,处理过后,使交通灯恢复正常。最终完成软件的编写与调试,达到软件与硬件能够协调的工作。1.4论文的组织结构本文的结构较为复杂,为了您能更容易的阅读文章,现将本文的体系结构介绍如下:(1)绪论。介绍了交通信号灯的控制发展、课题研究的意义、单片机概述及文档组织结构。(2)交通灯控制需求分析。指明了正常时序及急救车通过的交通控制。(3)系统的安装和启动。介绍了实验系统的操作说明。(4)系统的硬件设计。简单的介绍了一下整个实验的系统硬件设施及使用方法。(5)系统的软件设计。介绍了系统的软件开发环境及设计流程。(6)系统程序。主要是实验的程序代码。(7)总结与展望。对整个实验的总结及未来的展望。2交通系统的特性4交通系统特定的功能是众所周知的。它是由人、车辆、信号灯、道路等组成的一个有机联系的整体。其组成成员的众多性、复杂性、随机性的特点决定了交通系统的特性。一.它是一个规模庞大、因素众多的系统城市交通网络通常由儿十个到几百个甚至上千个交叉路口和街道组成,包括几百个到上千个信号灯。有些系统中还有相当数量的车辆检测器,所控区域通常是几十到儿百平方公里,被控对象包括各种机动车,非机动车和行人.二.交通系统是一个关系复杂、随机变动、难以描述的系统在交通系统中,行人、车辆、驾驶员等它们之间都互相影响。由于人的主动性,使得它们之间的关系错综复杂,不确定因素甚多。交通网络中的行人以及车流的运动和分布都是随机的,时变的。要对系统中这些关系进行描述,要确定系统中因素的运动规律相当困难。三.交通系统是一个多层次、多目标系统由于交通系统规模庞大,因素众多,其内部结构呈现出多种层次。如从几何规模上讲可分为点(单个路口),线(干线),面(区域网络)三个层次。交通系统的各组成部分也可以形成各种层次。对于不同的层次需采取不同的管理控制方式,但各层次又互相关联,因而必须注意各层次间的协调。交通系统的目标也是多样的,各目标之间还可能出现矛盾。要保证系统持续稳定地运转,往往要统筹兼顾,不能顾此失彼。由于交通系统的上述特性,使得对交通的控制和管理成为一个比较困难的课题。要对这样一个关系复杂、因素众多、瞬息变化的系统作出管理控制决策,首先必须对许多因素都予以考虑,需要收集大量的数据进行处理,其工作量大的惊人。仅就对交通信号灯的控制而言,为了最有效而灵活地控制交通秩序,就必须对每一个路口的每一个方向的每一排道上的到达率、驶出率、阻车长度、车种、车速、饱和度等进行处理,并尽快作出决策。可见对于这样一个复杂、多变、不确定的系统实施有效的控制,使用传统的控制方法是难以实现的,纵便对其进行合理的简化,施行控制以后的效果也是不能令人满意的,其实时性的要求难以实现。然而,从前面对智能控制系统的基本特点的论述中,我们不难发现。智能控制系统正是处理这种系统的强有力的工具,许多学者已对其进行了成功的尝试,取得了显著的控制效果。3交通灯控制需求分析按照中小城镇交通控制的需要,用单片机实现正常交通的时序和急救车通过两种控制方式,从而有效地解决紧急情况下的交通问题。3.1正常时序控制系统工作时,初始状态0为东西红灯,南北红灯,延时1s;然后转状态1南北绿灯通车,东西红灯,延时30s;转状态2,南北绿灯闪3次转亮黄灯,延时5s,东西仍然红灯;再转状态3,东西绿灯通车,南北红灯,延时30s;转状态4,东西绿灯闪3次转亮黄灯,延时5s,南北仍然红灯;最后循环至状态1。3.2急救车通过控制所设计的交通灯管理系统要求满足急救车优先通过的要求。一般情况下,交通灯正常显示,当有急救车通过时,两向交通灯信号为全红,以便让急救车通过。假定急救车通过路口的时间为10s,急救车通过后,交通灯恢复中断前状态。本实验以外部中断INT0为中断申请,表示急救车通过。一般中断程序进入时应保护PSW,ACC以及中断程序使用但非其专用的寄存器。本实验的中断程序保护了PSW,ACC等三个寄存器并且在退出前恢复了这三个寄存器。另外,中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。本实验没有涉及这种情况。4系统的安装和启动1、安装仿真开发系统集成调试软件。2、根据实验要求,进行MCS51单片机实验时,应插上EX51B仿真板。3、将配套的串行通讯电缆的一端与实验仪上的“仿真器串口”。4、9芯D形插座相连,另一端与PC相的串行口相连。5、将实验台的电源线与220V电源相连。(实验结束后应拔下)6、打开实验台电源开关,红色电源指示灯亮。仿真开发器初始化成功后,7、LED会显示8051,表示仿真系统正常。8、打开计算机电源,执行WAVE集成调试软件。注意:1、无论是集成电路的插拔、通讯电缆的连接、跳线器的设置还是实验线路的连接,都应确保在断电情况下进行,否则可能造成对设备的损坏。2、实验线路连接完成后,应仔细检查无误后再接通电源。5系统的硬件设计5.1总体设计系统总框图本实验的设备是伟福LAB6000系列实验系统和伟福仿真软件E6000。EX51B是系统的主控制器,也是整个实验的仿真板,用于控制其他模块协调工作;交通灯显示模块用以显示各方向车道的通行情况(红灯表示该车道禁止通行,绿灯表示该车道允许通行,黄灯为中间过渡时间);急救车通过模块用单次脉冲申请外部中断,由INT0端(P3.2)接入,表示急救车通过。系统总框图见图5.15。EX51B仿真板接口电路急救车 通过模块交通灯 显示模块图5.1 系统总框图5.2实验系统简介6本实验的开发平台使用的是伟福LAB6000系列实验系统及伟福仿真软件E6000。该实验系统主机上有丰富的实验电路模块和灵活的组成方法,既可以和MCS51、MCS96 CPU也可以和80888086CPU组合完成各种实验。该实验仪具有高档通用仿真器所具有的逻辑分析仪、波形发生器和程序跟踪器等强大的分析功能,让我们在做实验时不仅能了解程序的执行过程,更能直观地看到程序运行时的时序或者电路上的信号。本实验使用的是80C51单片机。80C51系列原系Intel公司MCS-51系列中一个采用HCMOS制造工艺的品种。自Intel公司将MCS-51系列单片机实行技术开放政策后,许多公司诸如Philips、Dallas、Siemens、ATMEL、华邦和LG等公司都以MCS-51系列中的基础结构8051为内核,推出了具有优异性能的各具特色的单片机。这样,现在的80C51已不局限于Intel公司,而是把所有厂家以8051为内核的各种型号的80C51兼容型单片机统称为80C51系列。5.2.1 伟福仿真器系统概述本仿真器系统由仿真主机+仿真头、MULT1A用户板、实验板、开关电源等组成。本系统的特点是: 主机+仿真头的组合,通过更换不同型号的仿真头即可对各种不同类型的单片机进行仿真,是一种灵活的多CPU仿真系统。采用主机+POD组合的方式,更换POD,可以对各种CPU进行仿真。本仿真器主机型号为E2000/S,仿真头型号为POD8X5X(可仿真51系列8X5X单片机)。 双平台,具有DOS版本和WINDOWS版本,后者功能强大,中/英文界面任选,用户源程序的大小不再有任何限制,支持ASM,C,PLM语言混合编程,具有项目管理功能,为用户的资源共享、课题重组提供强有力的手段。支持点屏显示,用鼠标左键点一下源程序中的某一变量,即可显示该变量的数值。有丰富的窗口显示方式,多方位,动态地显示仿真的各种过程,使用极为便利。本操作系统一经推出,立即被广大用户所喜爱。 双工作模式 软件模拟仿真(不要仿真器也能模拟仿真)。 硬件仿真。 双CPU结构,100不占用户资源。全空间硬件断点,不受任何条件限制,支持地址、数据、外部信号、事件断点支持实时断点计数、软件运行时间统计。 双集成环境编辑、编译、下载、调试全部集中在一个环境下。多种仿真器,多类CPU仿真全部集成在一个环境下。可仿真51系列,196系列,PIC系列,飞利蒲公司的552、LPC764、DALLAS320,华邦438等51增强型CPU。为了跟上形势,现在很多工程师需要面对和掌握不同的项目管理器、编辑器、编译器。他们由不同的厂家开发,相互不兼容,使用不同的界面,学习使用都很吃力。伟福WINDOWS调试软件为您提供了一个全集成环境,统一的界面,包含一个项目管理器,一个功能强大的编辑器,汇编Make、Build和调试工具并提供千个与第三方编译器的接口。由于风格统一,大大节省了您的精力和时间。 强大的逻辑分析仪综合调试功能。逻辑分析仪由交互式软件菜单窗口对系统硬件的逻辑或时序进行同步实时采样,并实时在线调试分析,采集深度32K(E2000/L),最高时基采样频率达20MHz,40路波形,可精确实时反映用户程序运行时的历史时间。系统在使用逻辑分析仪时,除普通的单步运行、键盘断点运行、全速硬件断点运行外,还可实现各种条件组合断点如:数据、地址、外部控制信号、CPU内部控制信号、程序区间断点等。由于逻辑仪可以直接对程序的执行结果进行分析,因此极大地便利于程序的调试。随着科学技术的发展,单片机通讯方面的运用越来越多。在通讯功能的调试时,如果通讯不正常,查找原因是非常耗时和低效的,您很难搞清楚问题到底在什么地方,是波特率不对,是硬件信道有问题,是通讯协仪有问题,是发方出错还是收方出错。有了逻辑仪,情况则完全不一样,用它可以分别或者同时对发送方、接收方的输入或者输出波形进行记录、存储、对比、测量等各种直观的分析,可以将实际输出通讯报文的波形与源程序相比较,可立即发现问题所在,从而极大地方便了调试。 强大的追踪器功能追踪功能以总线周期为单位,实时记录仿真过程中CPU发生的总线事件,其触发条件方式同逻辑分析仪。追踪窗口在仿真停止时可收集显示追踪的CPU指令记忆信息,可以以总线反汇编码模式、源程序模式对应显示追踪结果。屏幕窗口显示波形图最多追踪记忆指令32K并通过仿真器的断点、单步、全速运行或各种条件组合断点来完成追踪功能。总线跟踪可以跟踪程序的运行轨迹。可以统计软件运行时间。5.2.2 在Keil的V2集成环境下使用伟福仿真器7若想在Keil的V2集成环境下使用伟福仿真器,需要在Keil环境中做如下设定:A. 设置“编译后运行程序”,以便初始化伟福仿真器。B. 设置硬件调试方式,并设置串口参数。具体步骤如下:1. 在Keil环境下建立项目,并把程序作为模块加入项目。2. 在主菜单上,选Project-Options for Target ,选择Output栏,选中 Run User Program #1,使其有效。3. 在随后的文字框中填入“C:WAVEBINWAVE.EXE /K”,其中“C:WAVEBIN”是伟福开发环境安装路径,“WAVE.EXE /K”是要求WAVE.EXE 执行完初始化后退出,以便在Keil环境中用伟福仿真器来仿真。4. 在设置窗中,再选择Debug栏,选中 Use Keil Monitor-51 Driver,按随后的Settings按钮,出现“Target Setup”对话框,选择正确的通信口及波特率,选中其它所有项。设置后,按确定退出。(波特率为115200)这样就可以用伟福仿真器在Keil环境下工作了。程序写完后,如果编译没有错,就会出现伟福的仿真器设置对话框,选择正确的仿真器、仿真头和仿真CPU后,设置正确无误后,伟福环境会自动退出。5.2.3 开发环境简介双击桌面上的WAVE图标或从开始/程序/WAVE FOR WINDOWS/WAVE进入本开发环境,其界面及主要功能如图5.2.1中所注。 仿真器设置打开文件新建文件打开项目保存文件编译文件复位全速执行跟踪单步CPU窗口保存文件数据窗口 图5.2.1 WAVE界面 仿真器设置窗口如图5.2.2所示,在实验开始时要先根据需要设置好仿真器类型、仿真头类型以及CPU类型,并注意是否“使用伟福软件模拟器”,若使用硬件仿真,请注意去掉“使用伟福软件模拟器”前“”的选择。图5.2.2 仿真器设置窗口 文件窗口如图5.2.3,可在此窗口下进行包括新建、打开、保存等文件操作。图5.2.3 文件窗口 编译文件窗口如图5.2.4,在此窗口下可将源文件编译成目标文件。图5.2.4 编译文件窗口 执行窗口如图5.2.5,在此窗口下,可用全速、跟踪、断点等各种方式运行程序。图5.2.5 执行窗口 窗口窗口如图5.2.6,在此窗口下,可以观察各种窗口信息,其中最常用到的是CPU窗口和数据窗口。图5.2.6 窗口 CPU窗口通过CPU窗口可以看到你编译正确的机器码及反汇编程序,可以让你更清楚地了解程序执行过程。CPU窗口中还有SFR窗口和位窗口,让你了解程序执行过程中寄存器内容的变化。图5.2.7 CPU窗口 数据窗口对51系列CPU,数据窗口有:DATA 内部数据窗口;CODE程序数据窗口;XDATA 外部数据窗口;PDATA 外部数据窗口(页方式外部数据窗口)。图5.2.8 数据窗口图5.2.9 DATA(内部数据窗口)图5.2.10 CODE(程序数据窗口)图5.2.11 XDATA(外部数据窗口)图5.2.12 PDATA(页方式外部数据窗口)5.2.4 LED电平显示电路LED电平显示电路实验仪上装有8只发光二极管及相应驱动电路。L0-L7为相应发光二极管驱动信号输入端,该输入端为高电压电平“1”时发光二极管点亮。我们可以通过P1口对其直接进行控制,点亮或者熄灭发光二极管。5.2.5单脉冲电路 单脉冲电路由按键(PULSE)和去抖动电路组成,每按一次(PULSE)键产生一个单脉冲。板上有单脉冲的输出信号插孔,图为“”和“”,分别为正脉冲和负脉冲。本实验中使用的是负脉冲。单脉冲发生电路5.3各模块设计伟福LAB6000系列实验系统可根据教学实践的需要实现MCS51/MCS196单片机原理与接口、8088/8086微机原理与接口的一系列实验,并在硬件上预留了自主开发实验的空间。对基本实验仅需连少量连接线就可完成,减轻我们的工作量。同时也提供了需较多连线的扩展性实验,以进一步锻炼我们的实践开发能力。此外,系统还为我们提供了强大的软、硬件调试手段。本实验实现的是MCS51系列的单片机模式下急救车与交通灯的设计。编写好程序,先在软件环境下编译调试,运行成功之后,再在硬件环境下调试,最终达到软件和硬件的协调工作,这也是本实验的关键和难点。5.3.1 EX51B仿真板本实验采用EX51B仿真板。进行80C51的实验时,需将EX51B仿真板插在实验仪上,EX51B仿真板如下图6:图5.3.1 EX51B仿真板在EX51B仿真板上有两个跳线器J301和J302,和一个启动方式选择按键。J301:当仿真板独立运行时,请将这组跳线全部短接。所说的仿真板独立运行,就是说没有仿真器,把程序烧录到CPU中,插到40DIP座上运行程序。(注:用KEIL的下载仿真方式也属于独立运行方式)。与独立运行相对的是仿真方式,在这种方式下,这组跳线都要开路,仿真方式有两种:1.直接用实验仪自带的仿真器;2.外接伟福仿真器。将仿真器用34芯电缆接到实验仪的CN2插座上,此时,EX51B仿真板相当于一个仿真头。J302:该实验仪具有外接仿真功能,当实验仪工作于外接仿真方式时,为防止总线冲突,将此跳线短接,屏蔽实验仪的外部总线。这时实验仪上所有接在总线上的器件都不会受到影响。启动方式按键:EX51B仿真板可工作于两种独立进行方式:1.把程序烧到CPU芯片中,打开实验就可以直接运行。2.用KEIL的MON51下载方式进行仿真。按住“启动方式”键,就可进入此方式。(注:EX51B仿真板工作于独立方式时,需要将实验仪上仿真器拔下来)5.3.2 交通灯显示模块整个交通灯显示模块,以6个发光二极管模拟双向十字路口的红、黄、绿灯,用80C51单片机的P18口控制交通信号灯,可使交通灯正常工作。交通灯采用三色LED,它由一个红色LED管芯、一个绿色LED管芯和一个黄色LED管芯封装在一起,公用负端。高电平有效。在实验中,1表示灯亮,0表示灯灭。5.3.3 急救车通过模块本实验以外部中断INT0为中断申请,表示急救车通过。中断信号由单次脉冲发生器产生,设置其下降沿有效。假定急救车通过路口的时间为10s,即中断延时10s,急救车通过后,交通灯恢复中断前状态。中断程序保护了PSW,ACC等三个寄存器并且在退出前恢复了这三个寄存器。5.4实验线路设计8051的P1口接LED灯,分别控制各方向的交通灯; P32端(INT0)接外部中断单次脉冲,表示急救车通过。LED接口连线见表5.2。表5.2 对应接口连线连线连线孔1连线孔21P1.0L72P1.1L63P1.2L54P1.3L45P1.4L36P1.5L27单脉冲输出INT0交通灯总共有五种状态,分别设为S0、S1、S2、S3和S4。对应的状态为:S0南北红灯,东西红灯;S1南北绿灯,东西红灯;S2南北绿灯闪几次转亮黄灯;S3南北红灯,东西绿灯;S4东西绿灯闪几次转亮黄灯;1表示灯亮,0表示灯灭,故各状态对应的状态控制码见表5.3。表5.3 状态控制码状态控制码S0:南北红灯,东西红灯11001001BS1:南北绿灯,东西红灯11001100BS2:南北绿灯闪几次转亮黄灯11001XX0BS3:南北红灯,东西绿灯11100001BS4:东西绿灯闪几次转亮黄灯11XX0001B为了观察方便,根据实验箱的LED灯的具体分布,将LED分别分配如表5.4:表5.4 LED资源分配灯LED南北红灯L7南北黄灯L6南北绿灯L5东西红灯L4东西黄灯L3东西绿灯L26系统的软件设计6.1 系统实验软件设置WAVE集成调试环境应设置如下6:仿真器型号:伟福Lab6000实验仪 仿真头型号:MCS51实验 (803132)6.2 系统工作原理全部控制程序分两个模块:主程序,中断程序。主程序完成了堆栈初始化,8255初始化,开外部中断,初始化显示状态,然后循环显示并调用中断程序。十字路口的东西向、南北向各有一组红绿灯,具体要求如下:(1)堆栈初始化,开外部中断。(2)初始时东西、南北方向都亮红灯,延时1s。(3)然后南北方向亮绿灯,东西方向亮红灯,延时30s。(4)南北绿灯闪3次,接着绿灯灭转变黄灯,东西红灯不变,延时5s。(5)接着南北方向亮红灯,东西方向亮绿灯,延时30s。(6)东西绿灯闪3次,接着绿灯灭转变黄灯,南北红灯不变,延时5s。再转变到步骤(2),以此进行循环。(7)如果发生紧急事件,则按下单脉冲按钮,此时东西、南北向都亮红灯,延时10s。6.3 系统流程图本实验包括两个大模块:正常时序控制模块和急救车通过模块,正常时序控制模块见主程序流程图,急救车通过模块见INT0中断子程序流程图9。开始开外中断初始状态东西南北都是红灯状态1南北绿灯,东西红灯状态2南北绿灯闪转黄灯,东西红灯状态3南北红灯,东西绿灯状态4南北红灯, 东西绿灯闪转黄灯中断入口保护现场东西,南北都是红灯延时10秒恢复现场中断返回INT0中断子程序流程图主程序流程图图6.3 实验流程图7系统程序与结果分析7.1系统程序本课题选用了两种方法来编写程序,一种是汇编语言10,另一种是单片机C语言11。两种方法编写的程序,实现的功能稍有一点差异,具体内容如下: 汇编语言:本实验中,用单次脉冲表示中断信号,由INT0端接入。外部中断INT0的入口地址为0003H。设置外部中断0为下降沿有效,然后CPU开中断,交通灯显示初始化,程序如下:LED EQU P1ORG 0000HLJMP STARTORG 0003HLJMP I0ORG 0060HSTART: MOV SP,#60HSETB EX0 ;允许INT0中断SETB IT0 ;设外部中断0为下降沿有效SETB EA ;CPU开中断LCALL S0 ;初始状态(都是红灯)中断服务程序的关键是: 保护进入中断时的状态,并在退出中断之前恢复进入时的状态。 须在中断程序中设定是否允许中断重入,即设置EX0位。本实验的中断程序保护了PSW,ACC等三个寄存器并且在退出前恢复了这三个寄存器。另外,中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。本实验没有涉及这种情况。程序如下:I0: PUSH PSW ;保护现场PUSH 02HPUSH ACCMOV A,#11001001B ;南北红灯,东西红灯MOV LED,AMOV R2,#10h ;延时10sLCALL DELAYPOP ACC ;恢复现场MOV LED,APOP 02HPOP PSWRETI交通灯显示模块,当软件延时1s时,程序跳转到信号灯显示子程序,它将依次显示信号灯的颜色,这时再返回定时子程序定时1s,再显示黄灯的下一个时间,这样依次把所有的灯色显示完后再重新给时间计数器赋初值,重新进入循环。本实验交通灯共5种变化状态,初始状态S0为南北、东西全为红灯,程序如下:S0: MOV A,#11001001B ;南北红灯,东西红灯MOV LED,AMOV R2,#01h ;延时1sLCALL DELAYRET状态1,南北方向亮绿灯,东西方向亮红灯,延时30s。程序如下:S1: MOV A,#11001100B ;南北绿灯,东西红灯MOV LED,AMOV R2,#1Eh ;延时30sLCALL DELAYRET状态2,南北绿灯闪3次,接着绿灯灭转变黄灯,东西红灯不变,延时5s。程序如下:S2: MOV R3,#03H ;南北绿灯闪3次FLASH: MOV A,#11001000B ;南北绿灯灭,东西红灯亮MOV LED,AMOV R2,#03HLCALL DELAYMOV A,#11001100B ;南北绿灯亮,东西红灯亮MOV LED,AMOV R2,#03HLCALL DELAYDJNZ R3,FLASHMOV A,#11001010B ;南北黄灯,东西红灯MOV LED,AMOV R2,#05h ;延时5sLCALL DELAYRET状态3,南北方向亮红灯,东西方向亮绿灯,延时30s。程序如下:S3: MOV A,#11100001B ;南北红灯,东西绿灯MOV LED,AMOV R2,#1Eh ;延时30sLCALL DELAYRET状态4,东西绿灯闪3次,接着绿灯灭转变黄灯,南北红灯不变,延时5s。程序如下:S4: MOV R3,#03H ;东西绿灯闪3次FLASH1: MOV A,#11000001B ;南北红灯亮,东西绿灯灭MOV LED,AMOV R2,#03HLCALL DELAYMOV A,#11100001B ;南北红灯亮,东西绿灯亮MOV LED,AMOV R2,#03HLCALL DELAYDJNZ R3,FLASH1MOV A,#11010001B ;南北红灯,东西黄灯MOV LED,AMOV R2,#05h ;延时5sLCALL DELAYNOPRET接着,交通灯转变到状态1,进行循环显示。程序如下:CIRCLE: LCALL S1 ;南北绿灯,东西红灯LCALL S2 ;南北绿灯闪转黄灯,东西红灯LCALL S3 ;南北红灯,东西绿灯LCALL S4 ;南北红灯,东西绿灯闪转黄灯LJMP CIRCLE延时方法可以有两种:一种是利用MCS-51内部定时器产生溢出中断来确定1秒的时间

温馨提示

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

评论

0/150

提交评论