基于AT89C51的交通灯控制系统设计
基于AT89C51单片机的交通灯系统设计

基于AT89C51单片机的交通灯系统设计摘要:本文设计了一种基于AT89C51单片机的交通灯系统。
该系统通过使用AT89C51单片机作为控制核心,结合LED灯、红外传感器等硬件部件,实现了智能交通灯的功能。
利用AT89C51单片机的高性能和可编程性,本文提出了基于状态机的控制算法,实现交通灯的精确控制,以提高交通效率和安全性。
试验结果表明,所设计的交通灯系统稳定可靠,具有一定的应用价值。
关键词:AT89C51、单片机、交通灯、智能控制、状态机1. 引言交通灯作为城市道路交通的重要组成部分,对交通的顺畅和安全起着至关重要的作用。
传统的交通灯系统通常接受定时控制方式,无法依据实际交通状况进行灵活调整,导致交通拥堵和交通事故频发。
因此,设计一种智能交通灯系统,能够依据实时交通状况智能调整交通信号灯的状态,具有重要的现实意义。
2. 系统设计2.1 系统硬件设计本文所设计的交通灯系统接受AT89C51单片机作为控制核心,具有较高的性能和可编程性。
系统硬件部件包括LED灯、红外传感器、电路板等。
其中,LED灯用于表示交通灯的红、黄、绿三种状态;红外传感器用于感知车辆的存在与否。
这些硬件部件通过电路板毗连并与AT89C51单片机进行相应的电路毗连,构成完整的交通灯系统。
2.2 系统软件设计系统软件主要包括控制算法的设计和程序编写。
本文接受了基于状态机的算法,实现交通灯的智能控制。
系统依据红外传感器感知到的车辆状况和交通灯当前的状态来进行裁定,从而确定下一时刻交通灯的状态。
详尽实现过程如下:状态1:红灯状态。
当红灯亮起时,表示该方向的车辆需要停车等待。
系统检测到车辆通过红外传感器时,切换到状态2。
状态2:绿灯状态。
当绿灯亮起时,表示该方向的车辆可以通行。
系统计时一定时间后,切换到状态3。
状态3:黄灯状态。
当黄灯亮起时,表示该方向的车辆应注意停车。
系统计时一定时间后,切换到状态1。
该算法能够依据交通灯的当前状态和车辆的状况进行相应的状态切换,实现智能交通灯的控制。
课程设计(论文)基于at89c51单片机的交通信号灯控制系统

摘要随着中国城镇化速度的较快,交通事故也日趋发生,所以合理的交通控制方法能有效的缓解交通拥挤、法能有效的缓解交通拥挤、减少尾气排放及能源消耗、减少尾气排放及能源消耗、减少尾气排放及能源消耗、缩短出行延时,缩短出行延时,缩短出行延时,改善我国改善我国独有的交通问题。
而平面交叉口是城市交通的关键,它是整个城市道路的瓶颈地带,对其进行交通信号控制方法的研究具有重大意义。
所以交通信号灯是维护城市交通的主要设施,而我们本次复杂的十字路口交通灯控制系统设计主要是利用A T89C51制作并仿真.并且在单片机的选择上,考虑到电路的简单和成本的削减,我们选择性价比最好的A T89C51,而且能够使程序简单。
对紧急车辆通过的处理,采用中断的方法,采用中断的方法,由中断处理程序处理。
由中断处理程序处理。
由中断处理程序处理。
通过单片机控制交通灯不仅能提高通过单片机控制交通灯不仅能提高我们理论联系实际的能力,而且能够熟练掌握汇编语言的编程方法,掌握定时/计数器的使用方法和简单程序的编写,最终提高逻辑抽象能力和动手能力。
关键字:A T89C51 中断交通信号控制目 录1 1 概概 述............................................................. 12 2 原理及说明原理及说明原理及说明........................................................ ........................................................ 23 3 硬件电路设计硬件电路设计硬件电路设计...................................................... ......................................................3 3.1 3.1 单片机复位电路单片机复位电路.............................................. 3 3.2 3.2 交通交通LED 灯外围驱动电路...................................... 3 3.3 3.3 单片机主电路单片机主电路................................................ 4 3.4 3.4 整体电路图设计整体电路图设计.............................................. 5 4 4 软件设计软件设计软件设计.......................................................... ..........................................................6 4.1 4.1 系统程序流程图设计系统程序流程图设计.......................................... 6 4.2 4.2 系统程序设计系统程序设计................................................ 6 总 结结............................................................. 10 感 谢谢.............................................................11 参考文献参考文献........................................................... .. (12)1 概 述目前在世界范围内,目前在世界范围内,一个以微电子技术、一个以微电子技术、一个以微电子技术、计算机和通信技术为先导的,计算机和通信技术为先导的,计算机和通信技术为先导的,以信以信息技术和信息产业为中心的信息革命方兴未艾。
基于AT89C51单片机的交通灯系统设计与模拟

目录基于AT89C51单片机的交通灯系统设计与模拟 (1)1绪论 (3)1.1引言 (3)1.2 交通灯发展历史 (4)1.3智能交通灯的研究意义 (4)1.4设计目的及内容 (5)1.4.1设计目的 (5)1.4.2设计内容 (6)2硬件选择与说明 (6)2.1单片机及其最小系统 (6)2.1.1控制芯片AT89C51介绍 (7)2.1.2单片机主控制系统 (8)2.2 LED数码管模块 (10)2.2.1 74247七段显示译码器 (11)2.2.2 74HC238译码器 (12)2.2.374HC573锁存器 (13)2.3 LED发光二极管 (14)3交通灯系统各电路模块 (15)3.1车辆指示灯工作模块 (15)3.1.1交通信号灯规定 (15)3.1.3交通灯的工作流程 (16)3.1.4可调整工作模式 (20)3.2车流量检测电路 (20)3.5违规通行检测报警电路 (22)3.6按键部分 (23)4 供电电源 (24)4.1 太阳能供电部分 (25)4.2 交流供电部分 (26)4.3 电源自动切换部分 (27)4.4 其他部分 (28)5 信号灯设施防雷保护 (30)5.1 交通灯的引雷特性 (30)5.2 交通灯防雷措施 (31)参考文献 ............................................ 错误!未定义书签。
致谢 ................................................ 错误!未定义书签。
附录 (35)基于AT89C51单片机的交通灯系统设计与模拟摘要:随着机动车行业的蓬勃发展,机动车的数量逐年增加,不仅对城市道路交通产生了巨大的压力,而且对城市的交通秩序也产生了非常的大影响。
造成交通拥堵有着多方面的原因:车辆数目多,道路数目少;道路修建不合理;交通事故等等。
为保证城市道路交通秩序,提高安全性和效率,除了制定必要的交通规则,还必须实施红绿灯指挥控制系统。
课程设计(论文)基于at89c51单片机的交通信号灯控制系统

摘要随着中国城镇化速度的较快,交通事故也日趋发生,所以合理的交通控制方法能有效的缓解交通拥挤、减少尾气排放及能源消耗、缩短出行延时,改善我国独有的交通问题。
而平面交叉口是城市交通的关键,它是整个城市道路的瓶颈地带,对其进行交通信号控制方法的研究具有重大意义。
所以交通信号灯是维护城市交通的主要设施,而我们本次复杂的十字路口交通灯控制系统设计主要是利用AT89C51制作并仿真.并且在单片机的选择上,考虑到电路的简单和成本的削减,我们选择性价比最好的AT89C51,而且能够使程序简单。
对紧急车辆通过的处理,采用中断的方法,由中断处理程序处理。
通过单片机控制交通灯不仅能提高我们理论联系实际的能力,而且能够熟练掌握汇编语言的编程方法,掌握定时/计数器的使用方法和简单程序的编写,最终提高逻辑抽象能力和动手能力。
关键字:AT89C51 中断交通信号控制目录1 概述 (1)2 原理及说明 (2)3 硬件电路设计 (3)3.1 单片机复位电路 (3)3.2 交通LED灯外围驱动电路 (3)3.3 单片机主电路 (4)3.4 整体电路图设计 (5)4 软件设计 (6)4.1 系统程序流程图设计 (6)4.2 系统程序设计 (6)总结 (10)感谢 (11)参考文献 (12)1 概述目前在世界范围内,一个以微电子技术、计算机和通信技术为先导的,以信息技术和信息产业为中心的信息革命方兴未艾。
为使我国尽快实现经济信息化,赶上发达国家水平,必须加速发展我国的信息技术和信息产业。
而计算机技术怎样与实际应用更有效的结合并有效的发挥其作用是科学界最热门的话题,也是当今计算机应用中空前活跃的领域。
本文主要从单片机的应用上来实现十字路口交通灯的管理,用以控制过往车辆的正常运作。
本设计从定时控制控制着手,解决交叉口信号控制中存在的问题:定时控制信号周期固定,不能根据实际的交通流状况随时调整信号控制参数,因此造成很多不必要的时间等待和资源浪费;对左转车辆较少的单交叉口一般采用有固定左转相位的定时控制方法,此信号控制中的左转车辆通行对直行车辆影响很大;行人过街信号与上游交叉口的不协调导致车辆通过上游交叉口后遇到行人过街而再次停车。
基于AT89C51单片机的交通灯模拟控制系统

基于AT89C51单片机的交通灯模拟控制系统一、概述随着城市化进程的加速,交通问题日益凸显,而交通灯作为城市交通的重要组成部分,其控制系统的设计和优化显得尤为重要。
基于AT89C51单片机的交通灯模拟控制系统,作为一种智能化、高效化的解决方案,正逐渐受到广泛关注和应用。
本系统以AT89C51单片机为核心控制器,结合外围电路和编程技术,实现对交通灯信号的有效控制。
AT89C51单片机以其高性能、低功耗、易编程等特点,在交通灯控制领域具有广泛的应用前景。
通过本系统的设计与实现,不仅能够模拟真实交通场景下的交通灯控制过程,还能够为实际交通灯控制系统的优化提供有益的参考和借鉴。
我们简要介绍了基于AT89C51单片机的交通灯模拟控制系统的研究背景和意义,以及系统的主要特点和优势。
本文将详细阐述系统的硬件设计、软件编程、功能实现以及性能优化等方面的内容,以期为相关领域的研究和实践提供有益的参考和启示。
1. 交通灯控制系统的重要性交通灯控制系统在现代城市生活中扮演着至关重要的角色。
随着城市化进程的加速和汽车保有量的不断增加,道路交通压力日益增大,交通拥堵和交通事故频发成为制约城市发展的重要因素。
一个高效、稳定的交通灯控制系统对于提高道路交通效率、减少交通事故发生率具有不可忽视的意义。
交通灯控制系统能够规范交通秩序,确保车辆和行人有序通行。
通过合理设置红绿灯的时长和顺序,交通灯控制系统能够实现对交通流的精确控制,避免车辆和行人之间的冲突,减少交通拥堵和混乱现象的发生。
交通灯控制系统能够提高道路通行能力,缓解交通压力。
通过优化交通灯的控制策略,可以减少车辆在交叉口等待的时间和次数,提高道路的通行效率。
这不仅可以缓解城市交通拥堵问题,还可以减少车辆尾气排放,有利于改善城市环境质量。
交通灯控制系统还具有一定的智能化和自适应能力。
随着物联网、大数据等技术的不断发展,交通灯控制系统可以实现对交通流量的实时监测和预测,并根据实际情况自动调整控制策略,以适应不同时间段和交通状况的需求。
基于单片机AT89C51的交通灯控制器的设计

摘要本文采用AT89C51单片机芯片为核心控制器件设计的交通灯控制器,该系统主要包括单片机最小系统,按键,数码管显示,交通灯演示系统。
系统主要具有有人行道,交通灯的基本功能,倒计时,紧急情况处理,根据具体情况手动控制等功能。
通过AT89C51并接数码管和发光二极管来实现交通灯的变化规律,P1口设置红,绿灯点亮时间功能的实现;红绿灯循环点亮,倒计时剩余10秒时黄灯闪烁警示。
本系统的研发周期短,可靠性高,实用性,操作简单,维护方便,扩展功能强大。
本系统软硬件相结合,通过Proteus软件仿真,基本实现了交通信号灯的模拟。
关键词:AT89C51;数码管;交通灯控制器ABSTRACTIn this paper, AT89C51 chip as the core control device design traffic light controller, the system includes smallest single-chip system, keyboard, digital display, traffic lights demonstration system. System mainly has a sidewalk, the basic functions of traffic lights, countdown, emergency treatment, according to the specific circumstances of manual control and other functions. And connected via AT89C51 LED digital tube and realized traffic lights change, P1 port settings of red, green lighting time function is implemented; traffic light cycle light, countdown 10 seconds remaining yellow flashing warning. The system development cycle is short, high reliability, practicality, simple operation, easy maintenance, expansion and powerful. This system combines hardware and software, Through the Proteus Software Simulation,the basic realization of traffic lights simulation.Keywords: AT89C51; System; Digital pipe; Traffic light controller目录绪论 (1)1.整体方案设计 (2)1.1 方案分析 (2)1.2 方案确立 (3)2.系统的硬件设计 (3)2.1设计原理及方法 (3)2.2 AT89C51单片机最小系统 (4)2.2.1 复位电路 (4)2.2.2 时钟电路 (5)2.2.2 EA脚的功能及接法 (6)2.3其它硬件模块介绍及连接 (7)2.3.1 倒计时显示模块 (7)2.3.2 交通灯显示模块 (8)2.3.3 按键控制模块 (9)2.3.4 电源模块 (10)3.系统的软件设计 (10)3.1系统相关参数计算 (10)3.1.1 T0的计数初值 (10)3.1.2 倒计时显示的理论分析 (10)3.1.2 交通灯状态显示的理论分析 (11)3.2系统主程序设计 (11)4.系统的Proteus软件仿真 (12)4.1 Proteus仿真图 (12)4.2 Proteus仿真的结果分析 (12)结束语 (14)参考文献 (14)致谢 (15)附录:程序源代码 (16)绪论随着人口的迅速增长,道路资源的有限性和交通工具爆炸性的发展,城市交通正面临着严峻考验,因此造成日益严重的交通问题,每天的交通拥堵成了家常便饭但又不得不忍受。
基于AT89C51单片机的交通灯研究设计

摘要随着全球城市化进程的加快,机动车的数量大增,各地的交通承受的压力都很大,因而出现的问题也越来越多。
如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道.城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。
随着电子技术的发展,利用单片机技术对交通灯进行智能化管理,已成为目前广泛采用的方法。
本设计采用AT89C51为核心器件来控制交通灯。
Protues软件是英国Labcenter electronics公司出版的EDA工具软件,是做仿真的得力助手。
本交通灯以单片机为核心,以LED灯作为倒计时显示。
有系统简单.实用性强.运行稳定且可靠等优点。
关键词:交通灯;单片机;ProteusAbstractWith the accelerated process of global urbanization, significant increase in the number of motor vehicles, the traffic around the great pressure to bear, so more and more problems. How to use the appropriate control method to maximize the use of a good city to invest in costly high-speed road construction to ease the main road and ramp. City with traffic congestion around the area, has increasingly become a transportation management and urban planning department solved the main problem. With the development of electronic technology, the use of SCM technology for intelligent management of traffic lights, has become widely used method. This design uses AT89C51 as the core component to control the traffic lights. Protues software is published by the British Labcenter electronics companies EDA software tools, simulation of the right hand is doing. The single chip microcomputer as the core of traffic lights to LED lights as the countdown display. A simple system. Practicability. Run stable and reliable.Key words: traffic lights; SCM; Proteus目录上海师范大学本科毕业论文(设计)诚信声明 (I)上海师范大学本科毕业论文(设计)选题登记表 (II)上海师范大学本科毕业论文(设计)指导记录表 (IV)中文摘要及关键词 (V)英文摘要及关键词 (VII)1.单片机概述 (1)1.1单片机的发展 (1)1.2单片机的定义 (2)1.3单片机的特点 (2)1.4单片机的应用领域 (3)2.选题背景 (5)2.1交通灯的简介 (5)2.2AT89C51芯片简介 (6)3. 交通灯的研究思路 (7)3.1概述 (7)3.2需求分析 (7)3.3设计思想 (7)3.4设计要求 (7)4.交通灯的仿真实现 (9)4.1protues仿真软件 (9)4.2实现原理 (9)4.3实现过程 (10)4.3.1 选取元器件 (10)4.3.2 系统连线 (12)4.3.4运行状态 (13)4.4测试 (15)5.总结 (16)参考文献 (17)附录 (18)1.绪论在城市中很明显的能感受到交通的日益拥堵,各种各样的问题都会出现在马路上,像行人穿马路,车辆的行进,都少不了交通灯的指挥,可以说如果没有了交通灯,交通将会瘫痪。
基于AT89c51的交通灯设计

基于AT89c51的交通灯设计摘要交通灯是广泛应用于我们的日常生活中,它方便了我们的通行,使交通状况得到有效地改善。
现代科技的发展,使交通灯变得更加先进,更加灵敏,更为智能化,也更加人性化,这些进步都让社会获得巨大的进步,所以对交通灯的研究是非常具有现实意义的。
而利用单片机实现的交通灯,具有编程灵活、精度高、功能易扩展等优点,不仅拥有广阔的市场,也很有发展潜力,更重要的是具有科学价值。
本文是是选用AT89C51单片机,此交通灯的核心要点包括硬件的设计和软件编程。
本设计由主控制系统、键盘及状态显示系统、计时模块组成,选用七段共阳极数码管来显示结果。
软件用C语言来实现。
七段数码管上显示倒计时的时间。
同时通过按钮由用户设定时间,交通灯有很多优势,如成本低、精度高、寿命长、安全可靠,调整方便。
系统性能稳定,控制准确。
关键词:模块;数码管;系统;ABSTARCTTraffic lights are widely used in our daily lives, which facilitated our passage, so that the traffic situation has been effectively improved. The development of modern science and technology, so that the traffic lights become more advanced, more sensitive, more intelligent, more humane, these advances have let the community get a huge progress, so the study of traffic lights is very realistic. The use of SCM traffic lights, with programming flexibility, high precision, functional and easy to expand, etc., not only has a vast market, but also great potential for development, it is important to have scientific value.This article is a choice of AT89C51 microcontroller, core elements of the traffic lights, including hardware design and software programming. The design by the main control system, the keyboard and display system status, timing modules, use common anode seven-segment digital tube to display the results. Software using C language. Countdown time is displayed on the tube segment digital. At the same time set by the user through the button, the traffic lights have many advantages, such as low cost, high precision, long life, safe, reliable, easy to adjust. Stable performance andaccurate control.Key words:Module; digital pipe; systems;第一章绪论1.1 交通信号灯的发展及其研究的意义现在,在每个路口都在用交通灯,交通灯是最常见的和最有价值的技术措施,以纾缓交通车辆,这项技术有着悠久的发展历史。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于AT89C51的交通灯控制系统作品设计、发明的目的和基本思路随着我国经济的高速发展,人们对各种交通车辆的需求量不断增大,城市的交通拥护问题日益严重,目前,大部分城市的十字路口的交通控制灯,通常的做法是:事先经过车辆流量的调查,利用传统的方法设计好红绿灯的延时,然而,实际上的车流量是不断变化的,有的路口在不同的时间段车流量的大小甚至有很大的差异,所以说,统计的方法己不能适应迅速发展的交通现状。
目前,国内的交通灯一般设在十字路门,在醒目位置用红、绿、黄三种颜色的指示灯。
加上一个倒计时的显示计时器来控制行车。
对于一般情况下的安全行车,车辆分流尚能发挥作用,但根据实际行车过程中出现的情况,还存在以下缺点:1.两车道的车辆轮流放行时间相同且固定,在十字路口,经常一个车道为主干道,车辆较多,放行时间应该长些;另一车道为副干道,车辆较少,放行时间应该短些。
2.没有考虑紧急车通过时,两车道应采取的措施,臂如,消防车执行紧急任务通过时,两车道的车都应停止,让紧急车通过。
本系统是以AT89C51单片机作为控制系统的核心,模拟定周期交通信号灯的工作状态。
并采用PROTEUS进行仿真,仿真结果满足预期性能要求。
设计内容和要求:利用AT89C51单片机设计一十字路口交通灯控制系统。
1:系统由单片机系统、数码管显示、交通灯演示系统组成。
2:具有人行道、左转、右转,以及基本的交通灯的功能。
3:具有数码管倒计时功能。
4:要求甲乙车道的车辆交替运行,每次通行为60秒。
为绿灯的车道先显示40秒的直行,再显示20秒的左行。
5:要求黄灯先亮四秒,才能变换车道,黄灯亮时要求闪亮。
硬件设计控制流程分析:(1)从十字路口交通灯示意图1分析可知:东西、南北方向信号灯控制是中心对称的,即无论是主干道还是支干道两侧系统对同方向的信号灯控制是同步的。
(2)从示意图分析可知,人行道各个方向,系统对两侧的信号灯的控制也是同步的,且人行道的红绿灯变化和行车道的红绿灯变化应该是一致的。
(3)通过上面的分析,可以采用单片机的p0-p3口及r0到r7寄存器配合来实现控制发光二极管灯和数码管。
系统的硬件设计本系统选用通过P0到p3口用做输出显示控制口。
P0口用作输出南北方向led数码管字符编码,P1口用作输出东西方向led数码管字符编码。
P2 口用于输出东西、南北方面LED 数码管的位选信号,以及各个人行道发光二极管的控制信号的输出。
P3口用于输出东西、南北方向信号灯控制信号。
LED数码管采用动态显示方式实现倒计时读秒,并且本系统的了led采用的是LED的共阳极接法,共阳极接法如图2所示:共阳极7段LED显示字型编码表(表一):LED动态显示,在多位LED显示时,为了简化电路,降低成本,将段选位并联在一起,由一个八位的I/O口控制,而位选由另一个口控制,段选码、位选码每次送入后演示1ms,而人的视觉暂留时间为0.1s,所以在人看来数码管一直亮着,从而在应用中通过动态扫描的方法显示。
交通灯的正常显示交通灯系统的工作状态:上电后,南北方向数码管显示40,东西方向数码管显示60,南北方向的直行绿灯亮,车辆可以直行可以右行,人行红灯亮行人不能通过;东西方向红灯亮车辆不能通行,人行绿灯亮人可以通行。
当南北数码管显示为4时,直行绿灯熄灭,黄灯闪烁4秒,然后南北数码管显示20,左转绿灯亮车辆可以左行,人行灯和东西方向灯同上一状态,当数码管减到四时南北黄灯闪烁4秒,然后红灯亮,数码管显示60,南北车辆禁止通行,人行绿灯亮;南北数码管显示60的同时东西数码管显示40,直行绿灯亮,车辆可以直行可以右行,人行红灯亮,当东西数码管显示为4时,直行绿灯熄灭,黄灯闪烁4秒,然后东西数码管显示20,左转绿灯亮车辆可以左行,人行灯和南北方向灯同上一状态,当数码管减到4时东西黄灯闪烁4秒,然后红灯亮,东西数码管显示60,南北显示40,随后依次循环……交通灯原理图:软件设计:根据设计要求有汇编语言编写的交通灯源程序如下:ORG 0000H ;主函数地址LJMP MAINORG 000BH ;中断定时器0地址LJMP INTERPUTORG 0030H ;表的首地址LJMP TABLETABLE: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HMAIN:MOV P2, #00H ;给P2口赋初值,让数码管刚开始都不亮MOV R2, #60 ;给R2赋60,使东西的数码管显示初值为60MOV R3, #40 ;给R3赋40,使南北的数码管显示初值为40MOV P3, #0 ;使人形道的灯初始都不亮MOV R5, #0 ;给R5,R6赋初值0MOV R6, #0MOV TMOD, #01H ;定时器0工作方式1MOV TH0, #79 ;给定时器赋初值MOV TL0, #0AEHSETB EA ;允许总中断SETB ET0 ;开启定时器0中断SETB TR0 ;开启定时器计时L2:LCALL DISPLAY1 ;显示东西数码管LCALL DISPLAY2 ;显示南北数码管LCALL CHOOSE1 ;调用东西判断函数LCALL CHOOSE2 ;调用南北判断函数SJMP L2 ;一直循环INTERPUT:MOV TH0, #22H ;定时器中断里重现给定时器0赋初值MOV TL0, #0D8HMOV A, R4INC R4 ;定时器中断一次50MS,中断一次R4+1CJNE A, #20,L3 ;判断是不是加到20了,即定时器定时1SMOV R4, #0 ;R4加到20,则清0DEC R3 ;要是定时1S到了,则把R2,和R3的值都减1DEC R2L3:RETI ;中断退出CHOOSE1: ;东西判断函数MOV A, R5 ;热是一个标志CJNE A, #1, K1 ;判断R5是不是等于1,不等于1跳到K1MOV A, R2 ;要是标志位等于1CJNE A, #4, K5 ;而且R2等于4,则开启黄灯,关闭车道绿灯SETB P3.2CLR P3.3K5: JNC K3 ;要是R2小于4则闪烁绿灯CPL P3.2MOV A, R2CJNE A, #0, K3 ;判断R2是不是等于0,INC R5 ;等于0则让标志位+1CLR P3.2 ;清黄灯,开车道的左行绿灯,置人行道红灯SETB P3.0MOV R2, #20SETB P2.6CLR P2.7SJMP K3K1: JNC K2 ;CJNE这个指令比较好R5和1的值,要是R5大于1,则C=0,反之C=1,这里判断C是否等于0,既判断是否小于1,小于1执行下行,大于1则跳转K2MOV A, R2CJNE A, #60, K7 ;初值状态R2是60,判断R2是不是60,60的话开车道的红灯,开人行道的绿灯SETB P3.1SETB P2.7CLR P2.6SJMP K3 ;退出K7: C JNE A, #0, K3 ;要是R2不等于60,判断R2是不是等于0,等于0则把标志位R5加1,让车道绿灯亮,红灯灭,人行道红灯亮INC R5CLR P3.1SETB P3.3MOV R2, #40 ;再给数码管赋初值CLR P2.7SETB P2.6SJMP K3 ;退出K2: MOV A, R2 ;标志位R5大于1则跳到这里CJNE A, #4, K6 ;判断R2和4的值,等于4则开启黄灯,关闭车道的绿灯,要是不等于是,则跳到K6CLR P3.0SETB P3.2SJMP K3K6: JNC K3 ;判断R2是不是小于4,小于4则闪烁黄灯,大于4则直接退出CPL P3.2 ;取反MOV A, R3CJNE A, #0, K3 ;判断R2是不是等于0MOV R5, #0 ;等于0则清标志位,因为我们只设置了0.1.2这三个状态,到2了以后要清0,让他重新开始循环MOV R2, #60 ;给R2赋初值,开车道红灯,关车道左行绿灯,开人行道绿灯,SETB P3.1CLR P3.2SETB P2.7CLR P2.6K3: RETCHOOSE2: ;南、北判断函数,程序和东、西判断一致,这里就不写注释了MOV A, R6CJNE A, #1, H2MOV A, R3CJNE A, #4, H6SETB P3.6CLR P3.4SJMP H3H6: JNC H3CPL P3.6CJNE A, #0, H3INC R6CLR P3.6SETB P3.5MOV R3, #60SETB P2.4CLR P2.5SJMP H3H2: JNC H4MOV A, R3CJNE A, #40,H7SETB P3.7SETB P2.5CLR P2.4SJMP H3H7: MOV A, R3CJNE A, #4, H5SETB P3.6CLR P3.7SJMP H3H5: JNC H3CPL P3.6CJNE A, #0, H3SETB P3.4CLR P3.6INC R6MOV R3, #20SETB P2.5CLR P2.4SJMP H3H4:MOV A, R3CJNE A, #0, H3SETB P3.7CLR P3.5MOV R6, #0MOV R3, #40SETB P2.5CLR P2.4H3: RETDISPLAY1: ;显示东西数码管(动态显示)MOV A, R2 ;将R2放到A中MOV B, #10DIV AB ;将2位的10进制数的十位和个位分开MOV DPTR, #TABLE ;取TABLE表的首地址给DPTRMOVC A, @A+DPTR ;把表的第N个数据给AMOV P1, A ;把数据送到数码管中SETB P2.0 ;显示数码管LCALL DELAY ;延时CLR P2.0 ;把数码管暗掉MOV A ,B ;把个位给AMOVC A, @A+DPTR ;把表的个位个数给AMOV P1, A ;把数据送到数码管中SETB P2.1 ;显示数据LCALL DELAY ;延时CLR P2.1 ;让数码管暗掉RETDISPLAY2: ;显示南北数码管(显示函数和上面一样,这里注释就不写了)MOV A, R3MOV B, #10DIV ABMOV DPTR, #TABLEMOVC A, @A+DPTRMOV P0, ASETB P2.2LCALL DELAYCLR P2.2MOV A, BMOVC A, @A+DPTRMOV P0, ASETB P2.3LCALL DELAYCLR P2.3RETDELAY: ;延时函数MOV R0, #20 L1: MOV R1, #25DJNZ R1, $DJNZ R0, L1RETEND电路的仿真:。