




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕 业 设 计(论 文)单片机交通信号控制器系别:自动化工程系专业名称:自动化学生姓名:陈浩欣学号:25200101001指导教师姓名、职称:刘金华 讲师完成日期 2009年 5 月 8日电子科技大学中山学院毕业设计(论文)任务书系 别:自动化工程系专 业:05自动化学 生 姓 名:陈浩欣学 号:25200101001设计(论文)题目:单片机交通信号控制器起 迄 日 期:2008年 10月6日2009年5月8日设计(论文)地点:电子科技大学中山学院指 导 教 师:刘金华 专业教研室负责人:刘跃华发任务书日期:2008年10月18日任务书填写要求1毕业设计(论文)任务书由指导教师根据各课题的具体情况填写,经学生所在专业教研室的负责人审查、系领导签字后生效。此任务书应在毕业设计(论文)开始前一周内填好并发给学生;2任务书内容必须用黑墨水笔工整书写或按教务处统一设计的电子文档标准格式(可从教务处网页上下载)打印,不得随便涂改或潦草书写,禁止打印在其它纸上后剪贴;3任务书内填写的内容,必须和学生毕业设计(论文)完成的情况相一致,若有变更,应当经过所在专业教研室及系主管领导审批后方可重新填写;4任务书内有关“系”、“专业”等名称的填写,应写中文全称,不能写数字代码。学生的“学号”要写全号,不能只写最后2位或1位数字;5任务书内“主要参考文献”的填写,应按照国标GB 771487文后参考文献著录规则的要求书写,不能有随意性;6有关年月日等日期的填写,应当按照国标GB/T 740894数据元和交换格式、信息交换、日期和时间表示法规定的要求,一律用阿拉伯数字书写。如“2004年3月15日”或“2004-03-15”。毕 业 设 计(论 文)任 务 书1本毕业设计(论文)课题应达到的目的: 本文所要设计单片机控制交通信号灯,主要利用单片机内的定时器功能进行延时,当接通电源后,可以通过LED管摸拟十字路口的红绿灯来协调道路的交通情况。2本毕业设计(论文)课题任务的内容和要求(包括原始数据、技术要求、工作要求等):技术要求:(1)掌握Proteus软件的基本应用,用于设计与仿真;(2)需要用protel软件绘制电路原理图及局部原理图;(3)掌握单片机编程语言,可选用汇编语言或C语言;(4)掌握焊接电路的步骤与技巧。工作要求:(1)当接通电源时,LED管开始计时,时间为25秒,南北方向的红灯亮,东西方向的绿灯亮,此时,东西方向为通路;(2)当时间为5秒时,东西方绿灯开始闪烁,南北方向红灯不变;(3)当时间为2秒时,东西方绿灯变为黄灯,南北方向红灯不变;(4)当时间为0秒时,南北方向变为绿灯,东西方变为绿灯,此时,南北方向为通路,LED重新显示时间为25秒。毕 业 设 计(论 文)任 务 书3对本毕业设计(论文)课题成果的要求包括毕业设计、论文、图表、实物样品等:(1)关于单片机交通信号控制器设计论文一篇;(2)系统的硬件设计框图及硬件电路原理图;(3)做出具备显示交通灯信号的系统实物。4主要参考文献:1胡汉才.单片机原理及其接口技术.M.北京:清华大学出版.1996.32付家才.单片机控制工程实践技术.M.北京:化学工业出版社.2004.53吴金戎.沈庆阳.8051单片机实践与应用.M.北京:清华大学出版社.2003.4潘新民.微型计算机控制技术M.北京:人民邮电出版社.1999.95余锡存.单片机原理及接口技术M.西安:西安电子科技大学出版社.2000.76雷丽文.微机原理与接口技术M.北京:电子工业出版社.1997.27周航慈.单片机应用程序设计技术M.北京:航空航天大学出版社.1991.毕 业 设 计(论 文)任 务 书5本毕业设计(论文)课题工作进度计划:起 迄 日 期工 作 内 容2008.112008.12 购买相关器材,总体规划设计(模型设计),电路设计,焊接,抗扰测试。2009.012009.03设计工程方案确定,纯硬件测试调试,软件编写,软硬协作调试, 并不断修改完善,确定系统模型。2009.032009.04进一步的完善软硬件,并开始着手论文的写作。2009.042009.05完善论文的写作及相关程序的整理工作。指导教师审查意见:指导教师(签名): 年 月 日单片机交通信号控制器摘 要一个完整的交通灯相当于一个简单的单片机系统,该系统有交通灯设置电路、单片机、显示电路等构成。信号灯控制的实现是通过电路与汇编程序的结合来完成,其中信号灯的模拟采用了发光二极管,发光二极管有熄灭、点亮和闪烁三种信号,其中闪烁信号的产生运用了延时程序来实现,而时间倒数方面引进了LED数字显示,克服了人们在等待时的心急的心情,减少了红灯未灭,闯红灯的现象。电路部分原理图是通过用PROTEL软件绘制设计,汇编程序的设计与调试都在KEIL上完成。最后使用PROTEUS软件上的虚拟元件来代替所有的电路元件完成整个系统的调试和仿真,这样就大大保证了焊制硬件实物能正常运行。 本系统功能设计完善,采用AT89C51单片机为核心,具有实用,方便,灵活的特点。随着电子技术的广泛应用,车辆日益增多将成为一种发展趋势,所以要有一套安全可靠的交通指示灯。关键字:AT89C51;LED显示;交通灯Single-chip traffic signal controller AbstractA complete traffic signal equivalent to a simple single-chip system, which has set up traffic lights circuit, microcontroller, display circuit, etc. The realization of the control signal through the circuit and the combination of the compilation process to complete, including analog signal using a light-emitting diodes, light emitting diodes are off, the three flashing lights and signals, flashing signals which have used the procedure to delay the realization of The last time the introduction of LED digital display, to overcome the people anxiously waiting for the mood at the time, a decrease of red light did not eliminate, the phenomenon of red light running. Part of the circuit schematic diagram is drawn by using PROTEL software design, compilation and debugging of the design procedures are completed in KEIL. PROTEUS software on the final use of the virtual component to replace all the circuit elements to complete the testing and simulation systems, so much to ensure that the welding system to the normal operation of the physical hardware. The well-designed system using AT89C51 single-chip microcomputer as the core, with practical, convenient and flexible. With the extensive application of electronic technology, an increasing number of vehicles will become a trend, so to have a safe and reliable indicator of the traffic.Keyword:TheAT89C51;LEDshow;trafficlights目 录1 引言12 交通管理设计流程32.1 设计任务32.2 流程介绍33 交通灯系统硬件设计53.1 单片机概述53.2 系统构成63.3芯片选择与介绍63.3.1 AT89C51芯片63.3.2 74LS164芯片介绍83.3.3 74LS04输出信号与信号灯93.3.4 AT89C51 单片机的复位电路和时钟振荡电路103.3.5 交通灯控制线路图124 交通灯软件设计134.1 交通信号灯模拟控制系统设计程序流程图1342交通信号灯控制程序代码1443程序运行后状态表205 调试与检测215.1硬件检测215.1.1静态检测215.1.2动态检测215.2软件调试216实验平台226.1实验平台226.1.1 KEIL软件介绍226.1.2程序编写与调试236.1.3 proteus软件介绍246.1.4 用PROTUES 绘制本设计电路256.1.5仿真结果与分析277实物展示29结论30参考文献31致谢32301 引言今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两块以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。1914年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,当车辆接近时,红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下喇叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。随着经济的发展,交通运输中出现了一些传统方法难以解决的问题。道路拥挤现象日趋严重,造成的经济损失越来越大,并一直保持大比例的增长。现在交通系统已不能满足经济发展的需求。由于生活水平的提高,人们对交通运输的安全性及服务水平提出了更高的要求。在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。 中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的作用。智能交通灯的管理比重修一条马路无论在经济、交通运行速率上都有很好的效益、更加节约资源。使交管人员有更多的精力投入到管理整个城市交通控制,带来更大的经济和社会效益,为创造美好的城市交通形象发挥更多的作用。2 交通管理设计流程2.1 设计任务东西(A)、南北(B)两干道交于一个十字路口,各干道有一组红、左转绿、绿三个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。红灯的设计时间为25秒,绿灯20秒后开始闪烁警示,倒计时剩2秒时绿灯灭黄灯亮。设A道和B道的车流量相同。2.2 流程介绍本论文主要的工作就是通过一个交通信号灯系统的硬件、软件的设计来实现红绿灯的正常工作,具体工作安排大概描述为:一是根据系统控制要求设计硬件电路,这里是用PROTEUS软件来完成;二是根据硬件电路编写相应的程序流程图,然后编写相关程序,这里程序的编制主要是用KeilC51软件来完成;三是在KEIL上用已经编好的程序生成.hex文件载入到PROTEUS中,实现PROTEUS与KEIL的联调,完成调试和仿真,观察调试结果是否满足设计要求,若不满足需要继续检查程序和其他情况直至实现正确的仿真为止。四是按成功仿真的原理购买电子元件进行硬件实物焊制,完成整个系统设计。交通信号控制器设计的具体流程图如图2-1所示:确定设计方案使用PROTEL设计电路图根据电路图编写程序流程图使用KEIL编写程序调试在PROTEUS中仿真生成.HEX文件购买元件焊制硬件实物完成设计不成功成功不成功成功图2-1 交通信号控制器设计的具体流程图3 交通灯系统硬件设计3.1 单片机概述单片机是由运算器、控制器、存储器、输入设备以及输出设备共五个基本部分组成的。单片机是把包括运算器、控制器、少量的存储器、最基本的输入输出口电路、串行口电路、中断和定时电路等都集成在一个尺寸有限的芯片上。通常,单片机由单个集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引脚的多功能化,以及低电压、低功耗。可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。它主要是作为控制部分的核心部件。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。3.2 系统构成电路板一块,AT89C51单片机一片,74LS164芯片两片,七段数码管两个。74LS04反向器一片,发光二极管12个(红、黄、绿各四个),5伏电源一个,一条数据下载线。系统工作流程:(1)程序设置初始时间,通过AT89C51单片机内部相应寄存器来实现。 (2) 由AT89C51单片机的定时器每秒钟通过P3.0口向74LS164的数据端口送信息,由74LS164的输出口显示红、绿、黄灯的燃亮时间情况;由AT89C51的P1.0、P1.1、P1.2、P1.3口显示每个灯的燃亮情况。 (3) AT89C51通过程序设置各个信号灯的燃亮时间,通过程序设置黄、绿、红时间依次为2秒、20秒、25秒循环,由AT89C51的 P3口向74LS164的数据口输出。(4)通过AT89C51单片机的P3口来控制系统是工作。(5)74LS164的A、B口用于串行输出时间位,经过串并转换送到七段数码管的八的引脚。而P1口用于输出控制信号而通过74LS04反向器实现控制各个灯的情况它采用5V的直流电来驱动二极管。(6)AT89C51本身集成了看门狗指令,当系统出现异常看门狗将发出溢出中断。通过专用端口输出,引起RESET复位信号复位系统。3.3芯片选择与介绍3.3.1 AT89C51芯片AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,内含4k bytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可为您提供许多高性价比的应用场合,可灵活应用各种控制领域。主要特性: 与MCS-51 兼容 4K字节可编程闪烁存储器寿命:1000写/擦循环 数据保留时间:10年全静态工作:0Hz-24Hz 三级程序存储器锁定128*8位内部RAM 32可编程I/O线两个16位定时器/计数器 5个中断源可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 图3-1 AT89C51引脚结构引脚功能说明:VCC:供电电压。 GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如表3-1所示。表3-1特殊功能口 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.3.2 74LS164芯片介绍74LS164为串行输入、并行输出移位寄存器,74LS164为单向总线驱动器。在串行口为方式0状态,即工作在移位寄存器方式,波特率为振荡频率的十二分之一。器件执行任何一条将SBUF作为目的寄存器的命令时,数据便开始从RXD端发送。在写信号有效时,相隔 一个机器周期后发送控制端SEND有效,即允许RXD发送数据,同时,允许从TXD端输出移位脉冲。第一帧(8位)数据发送完毕时,各控制信号均恢复原状态,只有TI保持高电平,呈中断申请状态。第一个74HC164把第一帧数据并行输出,LED1显示该数据。然后,用软件将TI清0,发送第二帧数据。第二帧数据发送完毕,LED1显示第二帧数据,第一帧数据串行输入给第二个74HC164,LED2显示第一帧数据。依此类推,直到把数据区内所有数据发送出去。应该注意,数据全部发送完后,第一帧数据在最后一个LED显示。由于TXD端最多可以驱动8个TTL门。注意:当LED显示器超过8个时,我们采用74HC244芯片驱动。每个74HC244有8路驱动,每一路可驱动8个LED,即每增加一个74HC244,可增加64个LED驱动。七段数码管,用于显示09的数字。3.3.3 74LS04输出信号与信号灯要使行人能看见信号灯的情况,必须把P1口输出的信号进行放大,这里我们用74LS04反向器,当极性为高电平时晶闸管导通,该支路指示灯亮;当极性为低电平时关断,该支路指示灯灭。LED 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点亮。如下图: 而七段数码管的显示及与74HC164的连接显示不同的字形如SP,g,f,e,d,c,b,a 管角上加上0FE,所以上为伏,不亮其余为高电平,全亮则显示为。采用共阴极连接:表3-2 驱动代码表显示数值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 00F6H74LS04(6反向器)主要对信号起了反向作用。3.3.4 AT89C51 单片机的复位电路和时钟振荡电路复位是使单片机或系统中的其他部件处于某种确定的初始状态。单片机的工作就是从复位开始的。8051的复位引脚(RST)是第9脚,当此引脚连接高电平超过2个机器周期(一个机器周期为6个时钟脉冲),即可产生复位的动作。当在80C51单片机引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作(如果RST引脚继续保持高电平,单片机就处于循环复位状态)。复位操作有两种基本形式:一种是上电复位,另一种是上电与按键均有效的复位。如图3-2所示。图3-2 单片机复位电路 AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路参见图3-3、3-4。图3-3 单片机晶振内部振荡电路图3-4 单片机晶振外部振荡电路3.3.5 交通灯控制线路图 图3-5 系统线路图4 交通灯软件设计南北方向红灯亮,东西方向绿灯亮,延时南北方向红灯亮,东西方向绿灯闪烁,延时3秒南北方向绿灯亮,东西向方绿灯亮,延时2秒东西向方红灯亮,南北方向绿灯亮,延时东西方向红灯亮,南北方向绿灯闪烁,延时3秒东西方向红灯亮,南北方向黄灯亮,延时2秒4.1 交通信号灯模拟控制系统设计程序流程图 开始 图4-1 程序流程图42交通信号灯控制程序代码编程提示:(1) 通过74LS164控制发光二极管,以模拟交通灯的控制。(2) 程序中设定好计数初值,开始倒数。(3) 各发光二极管共阴极,使其点亮应使对应的端口输出高电平。 ;=交通灯控制器 =SECOND1EQU30H;东西路口计时寄存器SECOND2EQU31H;南北路口计时寄存器 DBUFEQU40H;显示码缓冲区1TEMPEQU44H;显示码缓冲区2LED_G1BITP2.1;东西路口绿灯LED_Y1BITP2.2;东西路口黄灯LED_R1BITP2.3;东西路口红灯LED_G2BITP2.4;南北路口绿灯LED_Y2BITP2.5;南北路口黄灯LED_R2BITP2.6;南北路口红灯ORG0000HLJMPSTARTORG0100HSTART:MOVTMOD,#01H;置T0为工作方式1MOVTH0,#3CH;置T0定时初值50msMOVTL0,#0B0HCLRTF0SETBTR0;启动T0CLRAMOVP1,A;关闭不相关的LED;*LOOP:MOVR2,#20;置1s计数初值,50ms*20=1sMOVR3,#20;红灯亮20sMOVSECOND1,#25;东西路口计时显示初值25sMOVSECOND2,#25;南北路口计时显示初值25sLCALLDISPLAYLCALLSTATE1;调用状态1WAIT1:JNBTF0,WAIT1;查询50ms到否CLRTF0MOVTH0,#3CH;恢复T0定时初值50msMOVTL0,#0B0HDJNZR2,WAIT1;判断1s到否?未到继续状态1MOVR2,#20;置50ms计数初值 DECSECOND1;东西路口显示时间减1sDECSECOND2;南北路口显示时间减1sLCALLDISPLAYDJNZR3,WAIT1;状态1维持20s;*MOVR2,#5;置50ms计数初值5*4=20MOVR3,#3;绿灯闪3sMOVR4,#4;闪烁间隔200msMOVSECOND1,#5;东西路口计时显示初值5sMOVSECOND2,#5;南北路口计时显示初值5sLCALLDISPLAYWAIT2:LCALLSTATE2;调用状态2JNBTF0,WAIT2;查询50ms到否CLRTF0MOVTH0,#3CH;恢复T0定时初值50msMOVTL0,#0B0HDJNZR4,WAIT2;判断200ms到否?未到继续状态2CPLLED_G1;东西绿灯闪MOVR4,#4;闪烁间隔200msDJNZR2,WAIT2;判1s到否?未到继续状态2MOVR2,#5;置50ms计数初值DECSECOND1;东西路口显示时间减1sDECSECOND2;南北路口显示时间减1sLCALLDISPLAYDJNZR3,WAIT2;状态2维持3s;*MOVR2,#20;置50ms计数初值MOVR3,#2;黄灯闪2sMOVSECOND1,#2;东西路口计时显示初值2sMOVSECOND2,#2;南北路口计时显示初值2sLCALLDISPLAYWAIT3:LCALLSTATE3;调用状态3JNBTF0,WAIT3;查询100ms到否CLRTF0MOVTH0,#3CH;恢复T0定时初值100msMOVTL0,#0B0HDJNZR2,WAIT3;判断1s到否?未到继续状态3MOVR2,#20;置100ms计数初值DECSECOND1;东西路口显示时间减1sDECSECOND2;南北路口显示时间减1sLCALLDISPLAYDJNZR3,WAIT3;状态3维持2s;*MOVR2,#20;置50ms计数初值MOVR3,#20;红灯闪20sMOVSECOND1,#25;东西路口计时显示初值25sMOVSECOND2,#25;南北路口计时显示初值25sLCALLDISPLAYWAIT4:LCALLSTATE4;调用状态4JNBTF0,WAIT4;查询100ms到否CLRTF0MOVTH0,#3CH;恢复T0定时初值100msMOVTL0,#0B0HDJNZR2,WAIT4;判断1s到否?未到继续状态4MOVR2,#20;置100ms计数初值DECSECOND1;东西路口显示时间减1sDECSECOND2;南北路口显示时间减1sLCALLDISPLAYDJNZR3,WAIT4;状态4维持20s;*MOVR2,#5;置50ms计数初值MOVR4,#4;红灯闪20msMOVR3,#3;绿灯闪3sMOVSECOND1,#5;东西路口计时显示初值5sMOVSECOND2,#5;南北路口计时显示初值5sLCALLDISPLAYWAIT5:LCALLSTATE5;调用状态5JNBTF0,WAIT5;查询100ms到否CLRTF0MOVTH0,#3CH;恢复T0定时初值100msMOVTL0,#0B0HDJNZR4,WAIT5;判断200ms到否?未到继续状态5CPLLED_G2;南北绿灯闪MOVR4,#4;闪烁200msDJNZR2,WAIT5;判断1s到否?未到继续状态5MOVR2,#5;置100ms计数初值DECSECOND1;东西路口显示时间减1sDECSECOND2;南北路口显示时间减1sLCALLDISPLAYDJNZR3,WAIT5;状态5维持3s;*MOVR2,#20;置50ms计数初值MOVR3,#2;红灯闪2sMOVSECOND1,#2;东西路口计时显示初值2sMOVSECOND2,#2;南北路口计时显示初值2sLCALLDISPLAYWAIT6:LCALLSTATE6;调用状态6JNBTF0,WAIT6;查询100ms到否CLRTF0MOVTH0,#3CH;恢复T0定时初值100msMOVTL0,#0B0HDJNZR2,WAIT6;判断1s到否?未到继续状态6MOVR2,#20;置100ms计数初值DECSECOND1;东西路口显示时间减1sDECSECOND2;南北路口显示时间减1sLCALLDISPLAYDJNZR3,WAIT6;状态6维持2sLJMPLOOP;大循环;*STATE1:;状态1SETBLED_G1;东西路口绿灯亮CLRLED_Y1CLRLED_R1CLRLED_G2CLRLED_Y2SETBLED_R2;南北路口红灯亮RETSTATE2:;状态2CLRLED_Y1CLRLED_R1CLRLED_G2CLRLED_Y2SETBLED_R2;南北路口红灯亮RETSTATE3:;状态3CLRLED_G1CLRLED_R1CLRLED_G2CLRLED_Y2SETBLED_R2;南北路口红灯亮SETBLED_Y1;东西路口绿灯亮RETSTATE4:;状态4CLRLED_G1CLRLED_Y1SETBLED_R1;东西路口红灯亮SETBLED_G2;南北路口绿灯亮CLRLED_Y2CLRLED_R2RETSTATE5:;状态5CLRLED_G1CLRLED_Y1SETBLED_R1;东西路口红灯亮CLRLED_Y2CLRLED_R2RETSTATE6:;状态6CLRLED_G1CLRLED_Y1SETBLED_R1;东西路口红灯亮CLRLED_G2CLRLED_R2SETBLED_Y2;南北路口红灯亮RETDISPLAY:;数码显示MOVA,SECOND1;东西路口计时寄存器MOVB,#10;16进制数拆成两个10进制数DIVABMOVDBUF+3,AMOVA,BMOVDBUF+2,AMOVA,SECOND2;南北路口计时寄存器MOVB,#10;16进制数拆成两个10进制数DIVABMOVDBUF+1,AMOVA,BMOVDBUF,AMOVR0,#DBUFMOVR1,#TEMPMOVR7,#4DP10:MOVDPTR,#LEDMAPMOVA,R0MOVCA,A+DPTRMOVR1,AINCR0INCR1DJNZR7,DP10MOVR0,#TEMPMOVR1,#4DP12:MOVR7,#8MOVA,R0DP13:RLCAMOVP3.0,CCLRP3.1SETBP3.1DJNZR7,DP13INCR0DJNZR1,DP12RETLEDMAP:DB3FH,06H,5BH,4FH,66H,6DH;0,1,2,3,4,5DB7DH,07H,7FH,6FH,77H,7CH;6,7,8,9,A,BDB58H,5EH,7BH,71H,0,40H;C,D,E,F, ,-END运行实验程序编译程序时,在系统“P.”状态后,运行程序时 L1L12发光二极管模拟交通灯显示。43程序运行后状态表其中0代表灯灭,1代表灯亮。表4-1运行状态状态南东北西黄绿红黄绿红黄绿红黄绿红PB3PB2PB1PB0PA7PA6PA5PA4PA3PA2PA1PA0该四个工作状态按此次序将重复出现南北红灯亮,东西绿灯亮001010001010南北红灯亮,东西黄灯亮001100001100南北绿灯亮,东西红灯亮010001010001南北黄灯亮,东西红灯亮1000011000015 调试与检测5.1硬件检测硬件检测又分为,静态检测和动态检测。5.1.1静态检测第一步:目测,检查外部的各种元件或则电路是否有断点;第二步:用万用表测试。先用万用表复核目测中有疑问的连接点,再检测各种电源线与地线之间是否有短路现象;第三步:加电检测。给板加电,检测所有的插座或是器件的电源端是否符合要求的值; 第四步:是联机检查。因为只有用单片机开发系统才能完成对用户系统的调试。5.1.2动态检测 动态检测是在用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等的一种硬件检查。动态调试的一般方法是由近及远、由分到合。由分到合是指首先按逻辑功能将用户系统硬件电路分为若干块,当调试电路时,与该元件无关的 器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。当各块电路无故障后,将各电路逐块加入系统中,在对各块电路功能及各电路间可能存在的相互联系进行调试。由分到合的调试既告完成。由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的分层,然后分层调试。调试时,仍采用去掉无关元件的方法,逐层调试下去,就会定位故障元件了。5.2软件调试软件调试是通过对拥护程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。程序后,编辑,查看程序是否有逻辑错误。6实验平台6.1实验平台6.1.1 KEIL软件介绍Keil 是美国Keil公司的C51编译器,它被嵌入到了Keil uVis
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年本地网传输系统项目提案报告模板
- 2025年广告投放合同模板:电梯广告租赁协议
- 内蒙古自治区赤峰市红山区赤峰第四中学2024-2025学年高一下学期4月月考生物试题 无答案
- 旅游支部共建协议书
- 施工班组进度协议书
- 果酒项目合作协议书
- 气囊电脑维修协议书
- 客房培训心得体会
- 水泥建材转让协议书
- 打人小孩和解协议书
- 国家开放大学2025年《机电控制工程基础》形考任务1-4答案
- 顶管机租凭合同协议
- 出纳人员面试题及答案
- 中招美育考试试题及答案
- 2025年湖南中考英命题分析及复习备考策略指导课件
- 四年级下册英语竞赛试题
- 《全球教育服务贸易》课件
- 玻璃加工协议书模板
- 2024年广州市海珠区招聘事业单位工作人员考试真题
- 企业区块链技术及反洗钱合规策略分析
- 井下电钳工题库(含答案)
评论
0/150
提交评论