毕业设计(论文)基于单片机的智能交通灯控制系统设计.doc

上传人:laozhun 文档编号:3980750 上传时间:2023-03-30 格式:DOC 页数:41 大小:1.10MB
返回 下载 相关 举报
毕业设计(论文)基于单片机的智能交通灯控制系统设计.doc_第1页
第1页 / 共41页
毕业设计(论文)基于单片机的智能交通灯控制系统设计.doc_第2页
第2页 / 共41页
毕业设计(论文)基于单片机的智能交通灯控制系统设计.doc_第3页
第3页 / 共41页
毕业设计(论文)基于单片机的智能交通灯控制系统设计.doc_第4页
第4页 / 共41页
毕业设计(论文)基于单片机的智能交通灯控制系统设计.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

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

1、 毕 业 设 计基于单片机的智能交通灯控制系统设计指导教师 学院名称工程学院 专业名称电气工程及其自动化论文提交日期 论文答辩日期答辩委员会主席 _评 阅 人 _摘 要交通灯是现代交通非常重要的一个组成部分,一套好的交通灯系统往往对提升城市交通运输效率,降低事故发生率有至关重要的影响。本系统由单片机系统、双电源供电系统、交通灯演示系统、中断系统组成。选用单片机作为此次设计的控制系统主要是考虑到单片机的通用性和廉价性。通用性是指单片机的电路以及编程语言相对比其他控制模块来说更加简单和通用,这个对于往后功能的添加以及系统的维护来说更加简便和易行。廉价性是单片机相对于其他的控制模块来说成本更低,一块

2、成熟的STC89C52的成本不过10元,加上其他的外围电路成本也不超过100元,无论是开发成本和维护成本都能够得到很好的控制。本设计选用STC89C52主要也就是基于上述的两个原因。本交通灯系统选用了LED灯和双位数码管来模拟显示的交通灯切换状态。双电源供电系统采用的是主电源和后备电源供电的方案。双电源供电方案主要是为了应对市电突然掉电或者出现故障的情况,对于持续的保持整体系统的正常工作具有重要意义,其原理主要是利用二极管的单向导电性所带来的开关功能来实现双电源瞬时的切换。中断系统所实现的功能是在有特定需要的情况下实现对交通灯状态的控制。这些状态包括全红灯和高低峰即时切换。本系统除了实现最基本

3、的交通灯功能以外,还可实现高低峰分时段控制方案以应对不同时段的不同交通状况,城市的交通早晚时段的流量往往能够达到最大,分时控制对于提高城市交通效率有非常重要的作用。关键词: 单片机 STC89C52 交通灯 分时系统 双电源目 录1前言.11.1 交通灯的历史和现状.11.2 单片机相关介绍.11.3 课题意义.22课题内容.33方案比较、设计和论证.33.1 供电方案.33.2 显示界面方案.33.3 输入方案.44 系统设计.44.1 交通灯规则方案.44.1.1 相位的概念.44.1.2 交通灯状态.44.1.3 高低峰分时管理机制.64.2 软件编程.84.3 硬件设计部分.94.3.

4、1 单片机系统.94.3.2 交通灯演示系统.124.3.3 双电源供电电路.124.3.4 中断系统.145 系统调试.145.1 断电调试.145.2 通电调试.155.3 基本要求部分的测试与分析.156 结论.15致 谢.16参 考 文 献.17英 文 摘 要.18附录一 系统主板电路.19附录二 程序清单.20附录三 系统实物图.36成绩评定表1. 前言1.1 交通灯的历史和现状当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是

5、世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两色旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红

6、外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全

7、停车时可以进入交叉路口。本设计的单片机控制交通灯就是基于信号灯。1.2 单片机相关介绍单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。 通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引脚的多功能化,以及低电压低功耗。本设计选用了市面上较为常见的STC89C52单片机,S

8、TC89C52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在线系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52的管脚图如图1所示。图1 STC89C52管脚图1.3 课题意义使用单片机作为本设计的控制方案主要是考虑到其低廉的成本和易学易用的特性,相较于类似ARM这类性能更为强大的控制方案,单片机的性能并非其优势所在。

9、但是如何充分利用单片机已有的功能进行最大化的开发才是本设计的重点。总的来说,本设计意义有如下4个方面:(a). 对单片机这一成熟的解决方案在交通灯领域的应用进行研究和开发;(b). 探究分时管理系统在交通灯系统中的应用,对分时管理系统的C语言算法进行开发。举一反三,延伸到其他类似领域的应用。(c). 探究全新的交通灯管理系统;(d). 建立不间断电源在实际应用领域的具体模型和电路结构。2 课题内容本课题的主要内容包括如下几个方面:(a). 设计交通灯状态的管理方案;(b). 设计单片机最小系统和周边电路;(c). 设计交通灯系统、不间断供电系统以及中断系统的电路结构;(d). 设计整个系统的电

10、路分布和接线;(d). 使用C语言编写整个系统运行所需要的程序,重点是分时管理系统和紧急中断系统的程序。3 方案比较、设计和论证3.1 供电方案为使模块稳定工作,须有可靠电源。本设计考虑了两种电源方案:方案一:采用独立的稳压电源。此方案的优点是稳定可靠,且有各种成熟电路可供选用;缺点是各模块都采用独立电源,会使系统复杂,且可能影响电路电平。方案二:采用单片机控制模块提供电源。本方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。考虑到实际情况和电路的简洁,本设计采用了第二套方案,同时在考虑到突发断电的情况,还增加了一个后备电源,在打开后备电源的时候,如果主电源断电,后备电源瞬间接通继续供电

11、,这里会利用到二极管的单向导电性。3.2 显示界面方案本设计涉及到倒计时、状态灯等功能。基于功能需求,本设计考虑如下三个方案:方案一:完全采用数码管显示。这种方案只显示有限的符号和数码字符,无法胜任功能需求。方案二:完全采用点阵式LED 显示。这种方案实现复杂,且须完成大量的软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形等。方案三:采用数码管与点阵LED 相结合的方法因为设计既要求倒计时数字输出,又要求有状态灯输出等,为方便观看并考虑到现实情况,用数码管与LED灯分别显示时间与提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。3.3 输入方案考虑到紧急情况和具体现场的

12、情况,本设计考虑两种方案:方案一:采用8155扩展I/O 口及键盘,显示等。该方案的优点是:使用灵活可编程,并且有RAM,及计数器。若用该方案,可提供较多I/O 口,但操作起来稍显复杂。方案二: 直接在I/O口线上接上按键开关。该方案优点是:编程更加简洁,使用更加简单,且成本更低。缺点就是功能有限综合考虑本设计的实际需要,在使用输入的时候不需要过于复杂的功能,故采用方案二。4 系统设计4.1 交通灯规则方案本设计的交通灯以十字路口为模型,在实现基本的功能前提下增加了高低峰分时管理机制和人工干预机制。4.1.1 相位的概念为保证交通系统的严谨性和公平性,本设计规定“相位”概念。相位的定义如下:在

13、单个十字路口,整个状态周期每个绿灯亮起的时间为一个固定值。相位的意义在于在一个循环状态周期内,根据每个路口车流量大小可以分配适时适当的绿灯时间以保证时间的充分利用,保证车流大的干道可以通过足够多的车辆,车流小的干道不用浪费时间。从总体上提升系统的效率。4.1.2 交通灯状态为方便说明交通灯状态,交通灯系统的示意图如图2所示。如图2,交通道路系统是由常见的双车道加人行道组成,由南向北行驶的车辆所看的交通灯是北路口的车行道交通灯,由北向南的车辆所看的交通灯是南路口的车行道交通灯,由西向东行驶的车辆所看的交通灯是东路口的车行道交通灯,由东向西行驶的车辆所看的交通灯是西路口的车行道交通灯。现规定如下状

14、态:S1:南北方向车辆通行,东西方向、南左转到西、北左转到东、西左转北、东左转南禁行,东西方向人行道通行、南北方向人行道禁行。S1状态如图3所示。图2 交通灯示意图图3 S1状态示意图S2:东西方向车辆通行,南北方向、南左转到西、北左转到东、西左转北、东左转南禁行,南北方向人行道通行、东西方向人行道禁行。S2状态如图4所示。S3:南左转西、北左转东车辆通行,南北方向、东西方向、西左转北、东左转南车辆禁行,南北方向、东西方向人行道禁行。S3状态如图5所示。S4:西左转北、东左转南车辆通行,南北方向、东西方向、南左转西、北左转东车辆禁行,南北方向、东西方向人行道禁行。S4状态如图6所示。图4 S2

15、状态示意图图5 S3状态示意图S5:全红灯,紧急事件状态。S5状态如图7所示。4.1.3 高低峰分时管理机制本设计为提升交通灯系统效率,设置了高低峰分时管理机制。高低峰分时定义如下:高峰时段:8点到10点,一般为上班上学出行的高峰期,18点到20点,一般为下班放学出行高峰期,此时主干道车流量高于次干道的车流量;图6 S4状态示意图图7 S5状态示意图 低峰时段:除高峰时段的其他时段。在高峰时段,采取增加主干道绿灯通行时间,减少次干道绿灯通行时间以最大限度的通过车辆。在低峰时段,采取减少主干道绿灯通行时间,增加次干道绿灯通行时间以平衡通过车辆。高低峰时段状态如表1所示。表1 高低峰时段状态表S1

16、S2S3S4低峰时段高峰时段南北向车行道绿灯时长20s南北向车行道绿灯时长25s东西向车行道绿灯时长15s东西向车行道绿灯时长10s南左转西,北转东绿灯时长10s南左转西,北转东绿灯时长10s东左转南,西左转北绿灯时长10s东左转南,西左转北绿灯时长10s在高低峰两个时段中,全部车行道绿灯的总和都为55秒,即相位都为55s。在发生突发事件的时候启动紧急状态S5,全部红灯亮。这种状态主要适用于例如救护车,军车执行任务时候使用。状态转换图如图8所示。图8 状态转化图4.2 软件设计在本次设计中,采用了C语言作为程序编程的语言。相较于C语言,汇编语言的机器代码生成效率很高但可读性却并不强,复杂一点的

17、程序就更是难读懂,而C 语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言,而且C 语言还可以嵌入汇编来解决高时效性的代码编写问题。对于开发周期来说,中大型的软件编写用C 语言的开发周期通常要小于汇编语言很多。综合以上C 语言的优点,本设计在编程的时候选择了C 语言。本设计在编程环境上也选择了Keil Vision 2.0。这款软件支持众多不同公司的MCS51架构芯片,它集编辑、编译、仿真为一体,同时还支持PLM、汇编和C语言的程序设计,界面友好、简单易学,在调试程序。软件仿真方面都有很强大的功能。在初期的软件调试阶段,Keil Vision会提供非常便利

18、的环境。在没有突发事件按钮和高低峰切换按钮都没有按下时交通灯的执行预定方案。预定程序执行方案流程图如图9。根据本设计交通灯的模型和实现的功能,程序流程图如图10所示。图9 预定程序执行方案流程图4.3 硬件设计部分根据本设计交通灯的模型和实现的功能,硬件部分可以分为以下两个大的系统:单片机系统、交通灯演示系统、双电源供电系统、中断系统。整个系统的硬件架构图如图11。4.3.1 单片机系统本设计单片机主要是用于控制交通灯的演示系统,故只需要单片机最小系统即可完成。单片机的最小系统是指能够驱动单片机工作的最小电路。此电路由单片机、时钟电路、电源、复位电路4个组成部分组成。图12为单片机最小电路的电

19、路图。其中,复位电路如图13。单片机复位电路原理是在单片机的复位引脚rst 上外接电阻和电容,实现上电复位,而复位时间是(时钟周期=12振荡周期,振荡周期=1/f),这个时间只能大不能小,具体数值可以由rc电路计算出时间常数。图10 主程序流程图图11 系统总架构图图12 STC89C52最小系统图图13 复位电路图单片机复位后各寄存器的状态:A00H,表明累加器已被清零; PSW00H,表明选寄存器0组为工作寄存器组;SP07H,表明堆栈指针指向片内RAM 07H字节单元,根据堆栈操作的先加后压法则,第一个被压入的内容写入到08H单元中;Po-P3FFH,表明已向各端口线写入1,此时,各端口

20、既可用于输入又可用于输出;IP00000B,表明各个中断源处于低优先级;IE000000B,表明各个中断均被关断;时钟电路如图14所示。时钟电路中最为重要的就是晶振,晶振的作用是为系统提供基本的时钟信号。晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。图14 时钟电路图通常一个系统共用一个晶振,便于各部分保持同步。晶振结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振的提供的时钟频率越高,那单片机的运行速度也就越快。4.3.2 交通

21、灯演示系统根据功能,交通灯的演示系统从功能上则分为:倒计时电路、红绿灯功能电路。交通灯演示系统电路图如图15所示。倒计时电路主要是由双位共阴数码管和74HC573N驱动模块组成,控制信号通过单片机的端口P1口进行信号的传输。倒计时电路负责的是显示红绿灯持续显示的时间。当绿灯或者红灯持续显示时,数码管显示该状态的持续时间,在黄灯闪烁显示时,起到倒计时秒数的作用。红绿灯功能电路主要是由各色的发光二极管和74HC573N驱动模块组成,控制信号跟数码管一样都是通过P1口进行传输。红绿灯电路负责的是各个车行道和人行道通行状态的显示。4.3.3 双电源供电电路供电电路由主电源和备用电源组成。主电源主要是由

22、变压器、6A整流桥、2颗1000F电容以及7805三端稳压管组成。这个部分为系统提供主要的供电,输出电压为5V直流。备用电源主要是由4位的5号电池盒组成。这个部分在主电源断电时能够几乎瞬时的为系统提供电源,输出电压也是6V直流。该电源直接接到单片机的电源端。图15 交通灯演示系统电路图备用电源存在的意义就在于,如果主电源一旦断电的话能够及时的提供系统所需要的电力,以保证整个系统在主电源断电的时间内依然能够正常的工作。在实际的应用过程中,备用电源可以根据需要设置一个合适的容量,本设计出于演示的需要就只提供了4颗5号电池为载体的备用电源。主电源和备用电源的切换功能电路如图16所示。该切换电路的原理

23、是根据二极管的单向导电性。单向导电性是指二极管的PN结加正向电压时,电阻值很小,PN结导通;加反向电压时,电阻值很大,PN结截止。当主电源正常工作时,由于二极管处于截止状态,由主电源供电,当主电源突然断开时,二极管导通,由电池组供电。此处选用双二极管串联工作原因是:当选用一个时,图16 主电源和备用电源切换功能电路假设二极管处于截止状态,此时二极管阴极电位为5V,阳极电位为6V,所以电压差为1V,此时二极管一定处于导通状态,所以假设不成立。当主电源工作时电池组也提供电源,这会造成两个不同电压的电源并联,造成干电池组给主电源充电。而当选用两个二极管串联时,假设二极管 处于截止状态,此时电压差为0

24、.5V,0.5V0.7V二极截止,假设成立。而当主电源断开时,能提供电压为6V减去2个二极管的压降为4.6V,此电压能保证单片机正常工作。4.3.4 中断系统中断系统主要是负责高低峰方案和紧急方案的切换。电路图如图17所示。图17 中断系统5 系统调试5.1 断电调试为安全起见,防止硬件烧坏,首先进行断电调试,用万用表检测系统是否有短路现象,再检查严原理是否正确,各个线路的电平是否正常。经检测,未出现短路现象以及各个电平都正常。5.2 通电调试(a). 关掉交流电源开关,用万用表直流电压档测量稳压输出电压,测量结果只有4.2V,用12V电源直接接入7805输入端,测量输出电压达到4.99V。经

25、检查分析为稳压芯片7805输入端电容没有接入,输入电压变化太大,造成7805无法稳压。经处理问题解决。(b). 检查系统时钟是否正常工作,用万用表直流电压档测量XTAL1与AXTAL2两端间的电压,检测到电压若为2.5V左右,则视为正常工作。(c). 检查复位电路是否正常工作。(d). 检查数码管显示和LED灯是否正常。5.3 基本要求部分的测试与分析(a). 系统上电后,显示交通灯基本状态,按中断按键,中断正常,直接进入S5状态,按复位按键,整个系统复位成功。(b). 按高低峰切换按键,系统即时切换到高峰时段方案,再按下高低峰切换按键,系统即时切换到低峰时段方案,最后按下高低峰按键,系统重新

26、进入预定流程。(c). 在未进行任何的中断和复位操作时,交通灯按照预定流程进行,在高低峰两个设定时段内变化。6结论本文探究了单片机在当今智能交通方面的应用。相对于其他解决方案来说,单片机具有成本低廉,通用性高,维护简单,软件灵活,成熟度高等优势。但是,单片机发展到现在也有存储空间较小、下游方案较少等局限性。本设计在实现相应功能的时候主要是考虑到现有的条件,采用成熟度高的STC89C52作为CPU的解决方案,同时用LED灯和双位数码管作为显示模块,软件则使用了移植性好的C语言。从功能需求上来看,已经能够满足实际需要。供电方案也采用了现在热门的双电源供电,电路结构简单,可靠性高,从一定程度上解决了

27、实际中可能出现的由于电源引发的问题。高低峰分时管理方案作为灵活的交通灯状态方案,对提高交通运输系统的运行效率也有很大的帮助。单片机作为已经发展了30年的成熟产品,很多优势正在逐渐失去,让位于更加先进的芯片解决方案。但是作为成熟方案还是在很多领域能够发挥作用。致 谢 首先,要感谢伟大的国家,如果没有国家的稳定,我也没有机会在大学四年安然度过。在本次毕业设计的过程中,我进一步的巩固了如下所学知识:模拟电路、数字电路、单片机、C语言程序设计。与此同时,我自身的专业知识、动手能力和文档撰写能力也得到了很大程度的提升。这也让我感受到“理论联系实践”这个硬道理,对于我未来的工作和人生都有很大的帮助。本次设

28、计的完成不仅仅是我一个人努力的结果,XX老师在设计的过程中给予我很多的指导和提供了很多建设性的思路,特别是在我同时要上班、考试和做设计这繁忙的事务中,杨老师依然给了我很大的空间去完成毕业设计。除此以外,XX同学在我设计电路和编程的时候也给予了我方方面面的指导,这跟他自身热心助人和扎实过硬的专业知识是牢不可分的!因为他自己也需要完成自己的毕业设计,所以他能够在自己所剩不多的时间内,抽出一部分来帮助我完成设计,这让我非常的感激。在此向XX老师和XX同学表示深切的感谢和崇高的敬意,同时也对工程学院所提供的良好学术环境表示感激。参 考 文 献谭浩强.2005.C程序设计(第三版).北京:清华大学出版社

29、.95-104肖金球.2004.单片机原理与接口技术.北京:清华大学出版社.210-230彭冬明,韦友春.2007.单片机实验教程.北京:北京理工大学出版社.58-65 范立南.1996.单片微机接口与控制技术.沈阳:辽宁大学出版社.110-135李华.1993.MCS-51系列单片机实用接口技术.北京:北京航空航天大学出版社.36-56温欣玲,张玉叶.1999.基于单片机交通灯智能控制系统研究. 微计算机信息,23(10):90-91胡汉才. 1996.单片机原理及接口技术.北京:清华大学出版社.周美珍,江志华.2005.单片机控制交通灯的硬件与软件设计.家庭电子,9(20):20-21蒋汝

30、根,钱丹浩.2006.基于AT89C51单片机的交通灯模拟控制系统.无锡商业职业技术学院学报,6(6):8-12康华光,陈大钦.2005.电子技术基础(模拟部分).北京:高等教育出版社康华光,邹寿彬.2005.电子技术基础(数字部分).北京:高等教育出版社李朝青.2005.单片机原理及接口技术(第三版).北京:北京航空航天大学出版社.88-109张伟,王丽,赵晶.2003.电路设计与制作Protel DXP入门与提高.北京:人民邮电出版社.300-320Intelligence Traffic lights Control System Based on Single Chip Micyoco

31、 (College of Engineering, South China Agricultural University, Guangzhou 510642, China)Abstract: The traffic light is an essential part of modern transportation. A reliable traffic light system plays a key role for improving urban transportation efficiency and lowering traffic accident odds.The syst

32、em consists of SCM, duplicate power supply system, traffic light demonstration system and interruption system.Considering the universal property, it chooses single chip as the main control chip. Universal property means that circuit and programming language are easier and more common which rely on t

33、he single chip than that of other control chip. It is simpler and more convenient to add more functions and maintain the system. Inexpensive means that the single chip costs less than other control chip. A STC89C52 costs less than 10RMB. it costs less than 100RMB even pulsing peripheral circuits. In

34、 this way it can control the developing cost and maintenance cost. So, this system chooses STC89C52 as control chip.This system adopts a dual power supply system, just as the main and back-up power supply. Dual power supply scheme is mainly in response to a sudden power-down or mains failure situati

35、on. It is significant for holding the system work continually. The principle is to use one-way diode switch conductive feature to achieve dual power switching instantaneously. Interrupt system is to achieve the function of a specific need in the case of special needs of the system. These states incl

36、ude all the red and high or low peak switch immediately.This system not only achieves the most basic features of a traffic light, but also implements high and low peak time sharing control scheme to deal with the different periods of different cities in traffic conditions. The traffic flow achieves

37、its maximum in the morning and evening. So the shared-time of control has a very important role for improving urban transport efficiency. Keywords: Single Chip STC89C52 Traffic Light Time-Shared System Duplicate power 附录一 系统主板电路图附录二 程序清单/*本交通灯实现的功能:1、正常时可以分时段车流高峰与低峰进行控制2、可以紧急控制,让某些车通过3、可以人为设置为车流高峰区状

38、态*/#include #include #define uchar unsigned char#define uint unsigned intuchar t,b,s,s1,s2,s3,s4,yellowtime,yellowflag,half_sec,sec,a;uint time;sbit dula=P27;sbit wela=P26;bit g; /中断标志位uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void delay(uint z)

39、/延时函数uchar x,y;for(x=z;x0;x-)for(y=110;y0;y-);void init() /初始化函数 half_sec = 0; s = 1; sec = 20; t = 0; g = 0; time = 5; yellowtime = 5; yellowflag = 0; s1 = 15; s2 = 10; s3 = 10; s4 = 20; IT1 = 0;/设置外部中断1为低电平触发 IT0 = 0;/设置外部中断0为低电平触发 EX0 = 1;/允许外部中断0 EX1 = 1; TMOD = 0x01; /设置定时器为十六位工作方式 TH0 = (65536 - 50000)/256; TL0 = (65536 - 50000)%256; /设置定时时间为50MS EA = 1; /总中断使能 ET0 = 1; /定时器0中断开 TR0 = 1; /定时器0void main() init(); /*状态S1,绿灯亮*/ while(1) if(s = 1) & (yellowflag = 0) P1 = 0xd7; /设置车道灯 P3 = 0xed; /设置人行道灯 dula = 1; /打开段锁存器 P0 = table(sec - yellowtime)/10; /存

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号