课程设计(论文)单片机交通灯 设计.doc

上传人:文库蛋蛋多 文档编号:3993325 上传时间:2023-03-30 格式:DOC 页数:39 大小:428KB
返回 下载 相关 举报
课程设计(论文)单片机交通灯 设计.doc_第1页
第1页 / 共39页
课程设计(论文)单片机交通灯 设计.doc_第2页
第2页 / 共39页
课程设计(论文)单片机交通灯 设计.doc_第3页
第3页 / 共39页
课程设计(论文)单片机交通灯 设计.doc_第4页
第4页 / 共39页
课程设计(论文)单片机交通灯 设计.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《课程设计(论文)单片机交通灯 设计.doc》由会员分享,可在线阅读,更多相关《课程设计(论文)单片机交通灯 设计.doc(39页珍藏版)》请在三一办公上搜索。

1、课程设计题目名称 单片机交通灯 学生姓名 学号 专业 指导教师 2011年5月制摘 要一个完整的交通灯相当于一个简单的单片机系统,该系统有交通灯设置电路、单片机、显示电路等构成。信号灯控制的实现是通过电路与汇编程序的结合来完成,其中信号灯的模拟采用了发光二极管,发光二极管有熄灭、点亮和闪烁三种信号,其中闪烁信号的产生运用了延时程序来实现,而时间倒数方面引进了LED数字显示,克服了人们在等待时的心急的心情,减少了红灯未灭,闯红灯的现象。电路部分原理图是通过用PROTEL软件绘制设计,汇编程序的设计与调试都在KEIL上完成。最后使用PROTEUS软件上的虚拟元件来代替所有的电路元件完成整个系统的调

2、试和仿真,这样就大大保证了焊制硬件实物能正常运行。 本系统功能设计完善,采用AT89C51单片机为核心,具有实用,方便,灵活的特点。随着电子技术的广泛应用,车辆日益增多将成为一种发展趋势,所以要有一套安全可靠的交通指示灯。关键字:AT89C51;LED显示;交通灯AbstractA complete traffic signal equivalent to a simple single-chip system, which has set up traffic lights circuit, microcontroller, display circuit, etc. The realiza

3、tion 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 realizat

4、ion 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

5、 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

6、 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

7、;LEDshow;trafficlights目 录1 引言12 交通管理设计流程32.1 设计任务32.2 流程介绍33 交通灯系统硬件设计53.1 单片机概述53.2 系统构成63.3 芯片选择与介绍63.3.1 AT89C51芯片63.3.2 74LS164芯片介绍93.3.3 74LS04输出信号与信号灯93.3.4 AT89C51 单片机的复位电路和时钟振荡电路103.3.5 交通灯控制线路图124 交通灯软件设计134.1 交通信号灯模拟控制系统设计程序流程图134.2 交通信号灯控制程序代码144.3 程序运行后状态表215 调试与检测225.1 硬件检测225.1.1 静态检测2

8、25.1.2 动态检测225.2 软件调试226实验平台236.1实验平台236.1.1 KEIL软件介绍236.1.2 程序编写与调试256.1.3 proteus软件介绍256.1.4 用PROTUES 绘制本设计电路276.1.5 仿真结果与分析29结论31参考文献33致谢341 引言今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世

9、界上最早的煤气红绿灯。它由红绿两块以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。1914年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,当车辆接近时,红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下喇叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段

10、时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。随着经济的发展,交通运输中出现了一些传统方法难以解决的问题。道路拥挤现象日

11、趋严重,造成的经济损失越来越大,并一直保持大比例的增长。现在交通系统已不能满足经济发展的需求。由于生活水平的提高,人们对交通运输的安全性及服务水平提出了更高的要求。在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。 中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的作用。智能交通灯的管理比重修一条马路无论在经济、交通运行速率上都有很好的效益、更加节约资源。使交管人员有更多的精力投入到管理整个城市交通控制,带来更大的经济和社会效益,为创造

12、美好的城市交通形象发挥更多的作用。2 交通管理设计流程2.1 设计任务东西(A)、南北(B)两干道交于一个十字路口,各干道有一组红、左转绿、绿三个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。红灯的设计时间为25秒,绿灯20秒后开始闪烁警示,倒计时剩2秒时绿灯灭黄灯亮。设A道和B道的车流量相同。2.2 流程介绍本论文主要的工作就是通过一个交通信号灯系统的硬件、软件的设计来实现红绿灯的正常工作,具体工作安排大概描述为:一是根据系统控制要求设计硬件电路,这里是用PROTEUS软件来完成;二是根据硬件电路编写相应的程序流程图,然后编写相关程序,这里程序的编制主要是用KeilC51软

13、件来完成;三是在KEIL上用已经编好的程序生成.hex文件载入到PROTEUS中,实现PROTEUS与KEIL的联调,完成调试和仿真,观察调试结果是否满足设计要求,若不满足需要继续检查程序和其他情况直至实现正确的仿真为止。四是按成功仿真的原理购买电子元件进行硬件实物焊制,完成整个系统设计。交通信号控制器设计的具体流程图如图2-1所示:确定设计方案使用PROTEL设计电路图根据电路图编写程序流程图使用KEIL编写程序调试在PROTEUS中仿真生成.HEX文件购买元件焊制硬件实物完成设计不成功成功不成功成功图2-1 交通信号控制器设计的具体流程图3 交通灯系统硬件设计3.1 单片机概述单片机是由运

14、算器、控制器、存储器、输入设备以及输出设备共五个基本部分组成的。单片机是把包括运算器、控制器、少量的存储器、最基本的输入输出口电路、串行口电路、中断和定时电路等都集成在一个尺寸有限的芯片上。通常,单片机由单个集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引脚的多功能化,以及低电压、低功耗。可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时

15、代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出

16、来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。它主要是作为控制部分的核心部件。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。3

17、.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秒

18、、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的可反

19、复擦写的只读程序存储器(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个中断源可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电

20、路 图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编程和校验

21、时,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门

22、电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如表3-1所示。表3-1特殊功能口 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过

23、一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用

24、于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.3.2 74LS164芯片介绍74LS164为串行输入、并行输出移位寄存器,74LS164为单向总线驱动器。在串行口为方式0状态,即工作在移位寄存器方式,波特率为振荡频率的十二分之一。器件执行任何一条将SBUF作为目的寄存器的命令时,数据便开始从RXD端发送。在写信号有效时,相隔 一个机器周期后发送控制端SEND有效,即允许RXD发送数据,同时,允许从TXD端输出移位脉冲。第一帧(8位)数据发送完毕时,各控制信号均恢复原状态,只有TI保持高电平,呈中断申请状态。第一个

25、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输出信号与信号灯要使行人能看

26、见信号灯的情况,必须把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

27、 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个

28、时钟脉冲),即可产生复位的动作。当在80C51单片机引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作(如果RST引脚继续保持高电平,单片机就处于循环复位状态)。复位操作有两种基本形式:一种是上电复位,另一种是上电与按键均有效的复位。如图3-2所示。图3-2 单片机复位电路 AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路参见图3-3、3-4。图3-3 单片机晶振内部振荡电路图3-4 单片机晶振外部振荡电路3.3.5 交通灯控制线路图 图

29、3-5 系统线路图4 交通灯软件设计南北方向红灯亮,东西方向绿灯亮,延时南北方向红灯亮,东西方向绿灯闪烁,延时3秒南北方向绿灯亮,东西向方绿灯亮,延时2秒东西向方红灯亮,南北方向绿灯亮,延时东西方向红灯亮,南北方向绿灯闪烁,延时3秒东西方向红灯亮,南北方向黄灯亮,延时2秒4.1 交通信号灯模拟控制系统设计程序流程图 开始 图4-1 程序流程图4.2 交通信号灯控制程序代码编程提示:(1) 通过74LS164控制发光二极管,以模拟交通灯的控制。(2) 程序中设定好计数初值,开始倒数。(3) 各发光二极管共阴极,使其点亮应使对应的端口输出高电平。 ;=交通灯控制器 =SECOND1EQU30H;东

30、西路口计时寄存器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;启动T0CLRAMO

31、VP1,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;

32、南北路口显示时间减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;东西绿灯闪MOV

33、R4,#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;恢复T

34、0定时初值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到否CLRTF

35、0MOVTH0,#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;调用状态5J

36、NBTF0,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;东西路口

37、计时显示初值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;东西路口绿灯亮

38、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_R2RETSTA

39、TE5:;状态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,5DB7

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号