基于单片机控制交通灯的毕业论文.doc

上传人:小飞机 文档编号:3867195 上传时间:2023-03-25 格式:DOC 页数:28 大小:417KB
返回 下载 相关 举报
基于单片机控制交通灯的毕业论文.doc_第1页
第1页 / 共28页
基于单片机控制交通灯的毕业论文.doc_第2页
第2页 / 共28页
基于单片机控制交通灯的毕业论文.doc_第3页
第3页 / 共28页
基于单片机控制交通灯的毕业论文.doc_第4页
第4页 / 共28页
基于单片机控制交通灯的毕业论文.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《基于单片机控制交通灯的毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机控制交通灯的毕业论文.doc(28页珍藏版)》请在三一办公上搜索。

1、江苏农牧科技职业学院 毕业设计(论文) 题目: 基于单片机控制交通灯 姓名: xxxxxxxxx 学号: xxxxxxxxxx 二级院系部: 机电工程系 班级: 应用电子10 专业: 应用电子技术 指导教师: xxx 职称: 讲师 二 一三 年 五 月【摘要】随着全球城市化进程的加快,机动车的使用数量也越来越多,造成了城市交通上的各种问题,如何控制好城市的交通已经成为一个全球化的问题。交通灯的出现使交通得以有效管制,对于疏导交通流量,提高交通通行能力,减少交通事故有明显效果。本设计利用单片机8051为核心部件,外加定时器复位电路晶振电路显示电路设计一个比较符合交通规则的模拟交通灯。设计中通过L

2、ED七段数码管作为计时显示用,用发光二级管指示车辆的通行,定时器工作于方式一并定时50ms,配合软件计时器调用中断程序,中断程序设置20次,从而达到1s的定时,同时调用显示程序,显示倒计时的时间。本交通灯系统简单实用性强成本低使用维护方便,软件功能强,运行稳定可靠的特点。【关键词】 单片机;交通灯;定时器Abstract As the global urbanization speeding up, the number of motor vehicles more and more, caused the various problems of urban traffic, how to c

3、ontrol the urban traffic has become a global problem. The emergence of the traffic light is able to effectively control the traffic, for facilitating traffic flow, improve the traffic capacity, reduce traffic accidents have obvious effect. I pick made traffic lights project, analysis of the problems

4、 of modern urban traffic control and management status quo, combined with the actual situation of urban and rural traffic illustrates the working principle of traffic light control system, this design 8051 microcontroller as the core components, plus timer, reset circuit, crystals circuit, display c

5、ircuit design a simulation traffic light compared with the traffic rules. Through the design of LED display with seven segment digital tube for timing, using leds indicate vehicle traffic, timer timing 50 ms, along with all the work on ways to cooperate with software timer calls interrupt program, i

6、nterrupt program set up 20 times, so as to achieve the timing of the 1 s, at the same time call display program, display the countdown time. This traffic light system is simple, strong practicability, low cost, convenient in operation and maintenance, software function is strong, stable running, rel

7、iable characteristic. Key Words single chip microcomputer; The traffic light; The timer目 录【摘要】I【关键词】IKey WordsII绪 论11.设计任务及方案选定21.1设计任务21.2 设计要求21.3方案选定32. 系统所用芯片简介42.1 MCS-51单片机简介42.1.1 MCS-51单片机内部结构42.1.2 MCS-51的引脚说明52.2 8255A并行接口芯片内部结构82.3 74LS373芯片简介93. 系统硬件设计113.1交通灯硬件线路图113.2 系统工作原理114.软件设计134

8、.1延时方法的设定134.2 软件延时134.3 时间及信号灯的显示144.3.1 8255A并行口的扩展144.3.2 显示原理144.3.3 LED灯简介144.3.4 8255A输出信号与数码管的连接154.4 程序设计164.4.1流程图164.4.2 程序源代码16设计总结22致 谢23参考文献24绪 论当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制

9、的红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接

10、近停车线而不能安全停车时可以进入交叉路口。 交通信号灯控制电路是由振荡电路、三进制计数器、译码电路、显示驱动电路和开关控制电路等电路组成。在本课程设计中,通过EDA设计程序使十字路口的工作顺序为主干道每次通行时间都设为30秒、支干道每次通行间为20秒,时间可设置修改。在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道;后5秒黄灯亮,黄灯亮时,要求每秒闪亮一次。东西方向、南北方向车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用显示器进行显示(采用计时的方法),依次重复。 本设计采用8051单片机实现汽车尾灯控制电路,其电路设计比较简单,外围电路少,易于控制和检查,单片机的应用具有范围广的特

11、点,对各个行业的技术改造和产品智能化的更新换代起着重要的推动作用。采用单片机来对他们控制,不仅具有控制方便、简单和灵活性大等特点,而且还可以大幅度提高被控对象的技术指标,从而大大提高控制器的质量。1.设计任务及方案选定1.1设计任务本系统由单片机系统、键盘、LED 显示、交通灯演示系统组成。最后,系统要求实现如下的交通灯的功能:1)南北方向(主干道)车道和东西方向(支干道)车道两条交叉道路上的车辆交替运行,主干道每次通行时间都设为30秒、支干道每次通行间为20秒,时间可设置修改。2)在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道。 3)黄灯亮时,要求每秒闪亮一次。4)东西方向、南北方向

12、车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用显示器进行显示(采用计时的方法)。 5)依次重复。1.2 设计要求 该设计在熟练掌握单片机及其仿真系统的使用方法基础上,综合应用单片机原理、微机原理、微机接口技术等课程方面的知识,设计一个采用8051单片机控制的交通灯控制电路。 根据设计功能及要求,我们可得系统的原理框图如图1-1所示。 图1-1 系统的原理框图 根据系统的原理框图,分别分析各部分电路的元器件的功能以及选择合适的元件。具体设计思路如下:收集并整理资料,硬件设计,软件设计,Proteus仿真,设计体会与总结。1.3方案选定 交通灯在安全行车过程中起着十分重要的作用,现在交通灯一般

13、设在十字路口,在醒目位置用红、绿、黄三种颜色的指示灯, 加上一个倒计时的显示计时器来控制行车, 对于一般情况下的安全行车、车辆分流发挥着作用, 但根据实际行车过程中出现的情况, 如何全面有效地利用交通灯指示交通情况,我们尝试用单片机来控制交通灯,在软、硬件方面采取一些改进措施,,使交通灯在控制中灵活而有效。 硬件系统是指构成单片机系统的实体和装置,通常由运算器、控制器、存储器、输入接口电路和输入设备、输出接口电路和输出设备等组成。单片机实质上是一个硬件的芯片,在实际应用中,通常很难直接和被控对象进行电气连接,必须外加各种扩展接口电路、外部设备、被控对象等硬件和软件,才能构成一个单片机应用系统。

14、该交通灯拟系统的硬件部分主要由键盘、显示和运算部分组成。按照题目的设计要求,本课题需要使用LED数码管显示和扩展键盘。在该交通灯系统的设计中采用8051单片机。2. 系统所用芯片简介2.1 MCS-51单片机简介 2.1.1 MCS-51单片机内部结构 8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。 8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明,如图2-1所示。图2-1 8051内部结构图中央处理器: 中央处理器(C

15、PU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(RAM):8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。 程序存储器(ROM):8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。定时/计数器: 8051有两个16位的可编程定时/计数器,以实现定

16、时或计数产生中断用于控制程序转向。并行输入输出(I/O)口: 8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。全双工串行口: 8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统: 8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。时钟电路: 8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。 2.1.2 MCS-51的引脚说明 CHMOS制造工艺

17、的8051,除采用40脚双列直插式封装外,还采用方形的封装方式。现在我们对这些引脚的功能加以说明,如图2-2所示。 图2-2 8051引脚示意图 (1)P0口(3239) 8位漏极开路型双向I/O口。在外接存储器时,P0口作为低8位地址数据总线复用口,通过分时操作,先传送低8位地址,利用ALE信号的下降沿特地址锁存,然后作为8位双向数据总线使用,用来传送8位数据。在对片内EPROM编程时,P0口接收指令代码;而在内部程序验证时,则输出指令代码,并要求外接上拉电阻。Po口能以吸收电流的方式驱动8个I0STTL负载。 (2)P1口(18) 8位具有内部上拉电阻的难双向I/O口。在片内EPROM编程

18、及校验时,它接收低8位地址。P1口能驱动3个LSTTL负载。其中P10和P1.1还具有第二变异功能:P1.0(T2)为定时器计数器2的外部事件脉冲输入端。P1.1(T2Ex)为定时器计数器2的捕捉和重新装入触发脉冲输入端。 (3)P2口(2128) 8位具有内部上拉电阻的准双向I/O口。在外接存储器时,P2口作为高8位地址总线。Atmel在对片内EPROM编程、校验时,它接收高位地址。P2u能驱动3个LSTTL负载。 (4)P3口(10l7) 8位带有内部上拉电阻的准双向I/O口。特殊功能(或称第二变异功能)。 P3.0(RXD):串行输入端口。 P31(TXD):串行输出端口。 P3.2(I

19、NT0):外部中断0输入端。 P33(1NTl):外部中断1输入端。 P34(T0):定时器计数器0外部输入端。 P35(T1):定时器计数器1AL部输入端。 P36(WR):外部数据存储器写选通。 P37(RD):外部数据存储器读选通。 P3口能驱动3个LSTTL负载。 Pin9:RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程

20、序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8051的初始态。8051的复位方式可以是自动复位,也可以是手动复位,见下图2-3。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。时钟方式见图2-4 所示。 (a)上电自动复位 (b)手动复位电路 (c)内部时钟方式 (d)外部时钟方式图2-3复位电路 图2-4 时钟方式 Pin30:ALE/当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可

21、以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。Pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。Pin31:EA/Vpp程序存储器的内外部选通线,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的8031,EA端必须接地。Pin40:VCC电源+5V输入。Pin20:VSSGND接地

22、端。Pin18和Pin19: XTAL1和XTAL2 晶振引脚。当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。 在编程时,EA/Vpp脚还需加上12V的编程电压。 2.2 8255A并行接口芯片内部结构8255A的内部结构如图2-5所示,由三部分电路组成:与CPU的接口电路、内部控制逻辑电路和与外设连接的输入/输出接口电路。图2-5 8255A内部结构图(1)与CPU的接口电路与CPU的接口电路由数据总线缓冲器和读/写控制逻辑组成。数据总线缓冲器是一个三态、双向、8位寄存器,8条数据线D0D7与系统数据总线连接,构成CPU与8255A之间信

23、息传送的通道,CPU通过执行输出指令向8255A写入控制命令或往外设传送数据,通过执行输入指令读取外设输入的数据。读/写控制逻辑电路用来接收CPU系统总线的读信号,写信号,片选择信号,端口选择信号A1,A0和复位信号RESET,用于控制8255A内部寄存器的读/写操作和复位操作。(2)内部控制逻辑电路内部控制逻辑包括A组控制与B组控制两部分。A组控制寄存器用来控制A口PA7PA0和C口的高4位PC7PC4。B组控制寄存器用来控制B口PB7PB0和C口的低4位PC3PC0。它们接收CPU发送来的控制命令,对A, B, C 3个端口的输入/输出方式进行控制。(3)输入/输出接口电路8255A片内有

24、A, B, C 3个8位并行端口,A口和B口分别有1个8位的数据输出锁存/缓冲器和1个8位数据输入锁存器,C口有1个8位数据输出锁存/缓冲器和1个8位数据输入缓冲器,用于存放CPU与外部设备交换的数据。对于8255A的3个数据端口和1个控制端口,数据端口既可以写入数据又可以读出数据,控制端口只能写入命令而不能读出,读/写控制信号(, )和端口选择信号(, A1和A0)的状态组合可以实现A, B, C 3个端口和控制端口的读/写操作。8255A的端口分配及读/写功能见表2-1。表2-18255A的端口分配及读/写功能A1 A0功能001 0 0输入指令A口001 0 1输入指令B口001 1 0

25、输入指令C口001 1 1命令写入控制寄存器010 0 0读出A口数据010 0 1读出B口数据010 1 0读出C口数据010 1 1非法操作 2.3 74LS373芯片简介 当74LS373用作地址锁存器时如图2-6所示。应使0E为低电平,此时锁存使能端C为高电平时,输出Q0Q7状态与输入端D1D7状态相同;当C发生负的跳变时,输入端D0D7 数据锁入Q0Q7。51单片机的ALE信号可以直接与74LS373的C连接。在MCS-51单片机系统中,常采用74LS373作为地址锁存器使用,其连接方法如上图所示。其中输入端D0D7接至单片机的P0口,输出端提供的是低8位地址,G端接至单片机的地址锁

26、存允许信号ALE。输出允许端E接地,表示输出三态门一直打开。 图2-6 74LS373内部引脚示意图当三态允许控制端0E为低电平时,Q0Q7为正常逻辑状态,可用来驱动负载或总线。当0E 为高电平时,Q0Q7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。当锁存允许端 LE 为高电平时,Q 随数据 D 而变。当 LE 为低电平时,D 被锁存在已建立的数据电平。当 LE 端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善 400mV。其真值表如表2-2所示。表2-2 74LS373真值表DnLEOEQnHHLHLHLLXLLQ0XXH高阻态3. 系统硬件设计3.

27、1交通灯硬件线路图 交通灯硬件线路图如图3-1所示。 图3-1 交通灯硬件线路图3.2 系统工作原理(1) 开关键盘输入交通灯初始时间,通过8051单片机P1输入到系统。(2) 由8051单片机的定时器每秒钟通过P0口向8255A的数据口送信息,由8255A的PA 口显示红、绿、黄灯的燃亮情况;由8255A的PC口显示每个灯的燃亮时间。(3) 8051通过设置各个信号等的燃亮时间,绿、红时间分别为60秒、80秒循环由8255A的 P0口向8255A的数据口输出。(4) 通过8051单片机的P3.0位来控制系统是工作或设置初值,当牌位0就对系统进行初始化,为1系统就开始工作。(5) 红灯倒计时时

28、间,当时间结束时,黄灯闪烁5s后结束。(6) 绿灯时间倒计时完毕,重新循环。4.软件设计4.1延时方法的设定延时方法可以有两种一中是利用MCS-51内部定时器才生溢出中断来确定1秒的时间,另一种是采用软延时的方法。本设计采用软件延时的方法。4.2 软件延时MCS-51的工作频率为2-12MHZ,我们选用的8051单片机的工作频率为6MHZ。机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/6M)=2us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间。具体的延时程序分析: DELAY: MOV R4,#08H ;延时1秒子程序

29、DE2: LCALL DELAY1 DJNZ R4,DE2 RETDELAY1: MOV R6,#0 ;延时125us 子程序 MOV R5,#0DE1: DJNZ R5,$ DJNZ R6,DE1 RETMOV RN,#DATA ;字节数数为2,机器周期数为1 所以此指令的执行时间为2us,DELAY1 为一个双重循坏 循环次数为256*256=65536 所以延时时间=65536*2=131072us 约为125ms。 DELAY R4设置的初值为8, 主延时程序循环8次,所以125ms*8= 1秒,由于单片机的运行速度很快其他的指令执行时间可以忽略不计。4.3 时间及信号灯的显示 4.3

30、.1 8255A并行口的扩展 8051虽然有4个8位I/O端口,但真正能提供借用的只有P1口,因为P2和P0口通常用于传送外部传送地址和数据,P3口也有它的第二功能。由于我们用外部输入设定红绿灯倒计时初值、数码管的输出显示、红绿黄信号灯的显示都要用到一个I/0端口。扩展的方法有两种:(1)借用外部RAM地址来扩展I/O端口;(2)采用I/O接口新片来扩充。我们用8255A并行接口信片来扩展I/O端口。 4.3.2 显示原理当定时器定时为1秒,时程序跳转到时间显示及信号灯显示子程序,它将依次显示信号灯时间 ,同时一直显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个时间,这样依次

31、把所有的灯色的时间显示完后在重新给时间计数器赋初值 ,重新进入循环。 4.3.3 LED灯简介发光二极管(LED是一种由磷化镓(GaP)等半导体材料制成的,能直接将电能转变成光能的发光显示器件。当其内部有一一电流通过时,它就会发光。7段数码管一般由8个发光二极管组成,其中由7个细长的发光二极管组成数字显示,另外一个圆形的发光二极管显示小数点。当发光二极管导通时,相应的一个点或一个笔画发光。控制相应的二极管导通,就能显示出各种字符,尽管显示的字符形状有些失真,能显示的数符数量也有限,但其控制简单,使有也方便。常见的数码管由七个条状和一个点状发光二极管管芯制成,叫七段数码管,如图4-1所示。根据其

32、结构的不同,可分为共阳极数码管和共阴极数码管两种。根据管脚资料,您可以判断使用的是何总接口类型 LED数码管中各段发光二极管的伏安特性和普通二极管类似,只是正向压降较大,正向电阻也较大。在一定范围内,其正向电流与发光亮度成正比。由于常规的数码管起辉电流只有12 mA,最大极限电流也只有1030 mA,所以它的输入端在5 V电源或高于TTL高电平(3.5 V)的电路信号相接时,一定要串加限流电阻,以免损坏器。 (a)引脚图 (b) 共阴极 (c) 共阳极图4-1 LED数码管引脚图4.3.4 8255A输出信号与数码管的连接 LED 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否

33、点量而显示不同的字形如 SP,g,f,e,d,c,b,a 管角上加上7FH,所以SP上为0伏,不亮其余为TTL高电平,全亮则显示为8,如表4-1所示。表4-1 驱动代码表显示数值dop g f e d c b a 驱动代码(16进制)0 0 0 1 1 1 1 1 1 3FH1 0 0 0 0 0 1 1 006H2 0 1 0 1 1 0 1 15BH3 0 1 0 0 1 1 1 14FH4 0 1 1 0 0 1 1 066H5 0 1 1 0 1 1 0 06DH6 0 1 1 1 1 1 0 07DH7 0 0 0 0 0 1 1 107H8 0 1 1 1 1 1 1 17FH4.

34、4 程序设计 4.4.1流程图软件流程图图如图4-2所示。开始初始化定初值红灯倒计时倒计时完毕黄灯闪5s绿灯倒计时倒计时完毕黄灯闪5s结束图4-2 程序流程图4.4.2 程序源代码 ORG 0000H ; 主程序的入口地址 LJMP MAIN ; 跳转到主程序的开始处 ORG 0003H ; 外部中断0的中断程序入口地址 ORG 000BH ; 定时器0的中断程序入口地址 LJMP T0_INT ;跳转到中断服务程序处 ORG 0013H ;外部中断1的中断程序入口地址 MAIN : MOV SP,#50H MOV IE,#8EH ;CPU开中断,允许T0中断,T1中断和外部中断1中断 MOV

35、 TMOD,#51H ;设置T1为计数方式,T0为定时方式,且都工作于模式1 MOV TH1,#00H ;T1计数器清零 MOV TL1,#00H SETB TR1 ;启动T1计时器 SETB EX1 ;允许INT1中断 SETB IT1 ;选择边沿触发方式 MOV DPTR ,#0003H MOV A, #80H ;给8255A赋初值,8255A工作于方式0 MOVX DPTR, AAGAIN: JB P3.1,N0 ; 判断是否要设定东西方向红绿灯时间的初值,若P3.1为1 则跳转 MOV A,P1 JB P1.7,RED ;判断P1.7是否为1,若为1则设定红灯时间,否则设定绿灯时间 M

36、OV R0,#00H ;R0 清零 MOV R0,A ;存入东西方向绿灯初始时间 MOV R3,A LCALL DISP1 LCALL DELAY AJMP AGAINRED: MOV A,P1 ANL A,#7FH ; P1.7置0 MOV R7,#00H ; R7清零 MOV R7,A ;存入东西方向红灯初始时间 MOV R3,A LCALL DISP1 LCALL DELAY AJMP AGAINN0: SETB TR0 ;启动T0计时器 MOV 76H,R7 ; 红灯时间存入76HN00: MOV A,76H ;东西方向禁止,南北方向通行 MOV R3,A MOV DPTR,#0000

37、H ;置8255A口,东西方向红灯亮,南北方向绿灯亮 MOV A,#0DDH MOVX DPTR, AN01: JB P2.0,B0N02: SETB P3.0 CJNE R3,#00H,N0 ;比较R3中的值是否为0,不为0转到当前指令处执行N1: SETB P3.0 MOV R3,#05H MOV DPTR,#0000H ; 置8255A口,东西,南北方向黄灯亮 MOV A,#0D4H MOVX DPTR,AN11: MOV R4,#00HN12: CJNE R4,#7DH, ;黄灯持续亮0.5秒N13: MOV DPTR,#0000H ; 置8255A口,南北方向黄灯灭 MOV A,#0

38、DDH MOVX DPTR,AN14: MOV R4,#00H CJNE R4,#7DH, ;黄灯持续灭0.5秒 CJNE R3,#00H,N1 ;闪烁时间达5秒则退出N2: MOV R7,#00H MOV A,R0 ;东西通行,南北禁止 MOV R3,A; MOV DPTR,#0000H ;置8255A口,东西方向绿灯亮,南北方向红灯亮 MOV A,#0EBH MOVX DPTR,AN21: JB P2.0,T03 N22: CJNE R3,#00H,N21N3: MOV R3,#05H MOV DPTR,#0000H ;置8255A口,东西,南北方向黄灯亮 MOV A,#0E2H MOVX

39、 DPTR,AN31: MOV R4,#00H CJNE R4,#7DH, ;黄灯持续亮0.5秒N32: MOV DPTR,#0000H ;置8255A口,南北方向黄灯灭 MOV A,#0EBH MOVX DPTR,AN33: MOV R4,#00H CJNE R4,#7DH ;黄灯持续灭0.5秒 CJNE R3,#00H,N3 ;闪烁时间达5秒则退出 SJMP N00N7: RETIT0_INT:MOV TL0,#9AH ;给定时器T0送定时10ms的初值 MOV TH0,#0F1H INC R4 INC R5 CJNE R5,#0FAH,T01 ;判断延时是否够一秒,不够则调用显示子程序

40、MOV R5,#00H ;R5清零 DEC R3;倒计时初值减一T01: ACALL DISP ;调用显示子程序 RETI ;中断返回DISP: JNB P2.4,T02DISP1: MOV B,#0AH MOV A,R3 ;R3中值二转十显示转换 DIV AB MOV 79H,A MOV 7AH,BDIS: MOV A,79H ;显示十位 MOV DPTR,#TAB MOVC A,A+DPTR MOV DPTR,#0002H MOVX DPTR,A MOV DPTR,#0001H MOV A,#0F7H MOVX DPTR,A LCALL DELAYDS2: MOV A,7AH ;显示个位 MOV DPTR,#TAB MOVC A,A+DPTR MOV DPTR,#0002H MOVX DPTR,A MOV DPTR,#0001H MOV A,#0FBH MOVX DPTR,A RETT03: MOV A,R3 SUBB A,#00H JZ N3 JB P2.0,T03 INC R7 CJNE R7,#64H,E1 M

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号