07电信2011届生初稿_第1页
07电信2011届生初稿_第2页
07电信2011届生初稿_第3页
07电信2011届生初稿_第4页
07电信2011届生初稿_第5页
已阅读5页,还剩31页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录摘要IIIAbstractIV绪论1第一章1.11.21.3第二章选题背景1国内外研究现状及发展趋势1研究的主要内容2系统总体方案及硬件设计3系统方案设计3方案的实现6总体硬件设计6AT89C51 单片机简介62.12.22.32.42.4.12.4.22.4.3AT89C51结构简介7系统时钟电路8系统复位电路82.52.6计时器显示电路9信号灯显示控制电路102.7第三章按键电路设计11系统设计133.13.23.33.43.5设计思路及. 13流程13设计程序说明14延时函数14读状态函数程序及流程图153.63.7显示函数16定时器 0 中断函数17第四章系统仿真194.14.24

2、.34.44.5第五章Proteus 仿真介绍19Proteus Keil C51 Keil uViProteus的功能特点与模块19简介192 编译程序20仿真21总结与展望24参考文献25附录A26附录B27致谢33交通灯控制系统设计摘要交通灯控制系统是近现代经济快速发展下的产物,随着社会经济的发展,城市交通问题越来越引起人们的关注。人、车、路三者关系的和谐,已经成为了交通治理部分需要解决的主要问题之一。交通工具的性的增加和道路资源的有限性产生了一套独特的公共管理系统。要保证高效安全的交通秩序,还需要通过一定的科技加以实现。本文对目前交通控制进行了深入的分析之后,提出以单片机为,以双色LE

3、D 发光管箭头作为直行和左右拐弯指示,以 LED 数码管作为倒计时,LED 行人通行指示的系统方案,并对路口的直行做了模拟仿真。设计过程中对在编写程序的时,对各种情况下的函数做了简要的分析,和对于编译程序 Keil Proteus 关键使用做了说明。基于 80C51 单片机的交通灯控制系统是由 80C51 单片机、交通灯显示、LED 倒计时等模块组成。系统除基本交通灯功能外,还具有通行按键紧急状况处理、可倒计时仿真显示等相关功能。理论证明该系统能够简单、经济、有效地疏导交通,提高交通路口的通行能力。:交通控制;MCS-51 单片机;LED 显示;ProteusTraffic control s

4、ystem designAbstractTraffic light control system is the modern product of raeconomic development, with the sol and economic development, urban transport problems has drawn increasingattention. People, vehicles, road three harmony betn the traffic control hase partof one of the main ies to be resolve

5、d. The explosive increase in transport and roadlimited resour had a unique set of public management systems. To ensure safe andefficient traffic order, but also scientific and technological means by some to be realized. Inthis pr, traffic control is currently conducted in-depnalysis, the proed singl

6、e chipas the core, two-color LED light tube as a straight left and right arrows turn directions to acountdown LED digital tube, LED indication of system solutions pedestrians, and theCrossroads straight mouth made a simulation. The design pros for the preparation ofsoftware program, the function of

7、each case a brief ysis, and software for the Keilcompiler and simulation software, the key used to make the description of Proteus.80C51 microcontroller based traffic light control system is a 80C51 microcontroller,traffic lights display, LED countdown and other modules. In addition to basic traffic

8、 lightsystem function, but also has the acs key emergency treatment, the countdown displayand other related functions. Theoretical proof t the system is simple, economical andeffective way to ease the traffic junction to improve traffic capacity.Keywords: Traffic control, MCS-51 microcontroller, LED

9、 display, Proteus第一章绪论1.1选题背景近年来,的快速增长,经济水平的快速发展。人们的生活水平也日益好了起来,因此交通工具性的增加了。由于道路资源的有限,所以交通控制就应运而生,在人类的生活、工作环境通扮演着极其重要的角色,人们的出行都无时不刻与交通打着交道。自 18 世纪工业以来,工业动整个交通的发展,从而催生了单独的交通控制学问与管理机构。然而随着近现代社会物流、出行等交通的发展产生了一套独特的公共管理系统交通控制系统。要保证高效安全的交通秩序,除了制定一系列的交通规则,还需要通过一定的技术加以实现。就目前人类的科学技术,特别是电子科学技术的发展和成熟能比较好的解决系统建

10、立中硬方面要求的技术难题。交通对于社会的工业经济和人们的生活生产中有着十分重要的意义。城市道路交通自动控制的发展与汽车工业是并行发展的。在其各个发展阶段,由于交通的各种矛盾不断出现,人们总是尽可能地把各个历史阶段当时的科技成果应用到交通自动控制中来,从而促进了交通自动控制技术的不断发展。交通控制研究的发展,旨在解决人类交通因需求的增多而日益繁重带来,局限于道路建设的暂时和交通工具的快速增长,就要使的车辆安全高效的利用有限的道路资源,避免因无序和抢行等无控制原因造成的不必要阻塞甚至瘫痪。1.2国内外研究现状及发展趋势近年来,交通红绿灯已经安装在各个城市的道口上,成为了疏导交通的最常见有效的方法。

11、但这以技术早在 19 世纪就已经出现了。19 世纪 50 年代伦敦安装的是以燃煤气为光源的红蓝信号灯。随后 60 年代英国机械工程师纳在伦敦区的议会前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成。红色表示“停止”,绿色表示“注意”。1869 年 1 月 2 日,煤气灯爆炸,使受伤,遂被取消。1914 年纽约出现了电器启动的红绿灯,它由红绿黄三色圆形的投光器组成。红色表示“停止”,绿色表示“通行”。1918 年又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,遇红绿灯时按一下喇叭,就

12、使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光速能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。目前设计交通灯的方案有很多,有应用 CPLD 设计实现交通信号灯控制器方法;有应用 PLC 实现对交通灯控制系统的设计;有应用单片机实现对交通信号灯设计的方法。目前,国内的交通灯一般设在路门,在醒目位置用红、绿、黄三种颜色的指示灯加上倒计时显示计时器来控制行车。1.3研究的主要内容基于整个交通控制系统的发展情况,这次设计主要进行如下方面的研究,用智能,集

13、成,且功能强大的单片机为控制空心,设计出一套简单、有效并且经济的路口的交通控制系统,以指挥该路口的实时通行状态。并且对路口车辆通行方案做了全面、深入、具体的剖析及论证。使在道路中通行的车辆,人能够和谐有规律的。然后就是。确定系统交通控制的总体设计,包括,路口具体的通行方案设计以及系统应拥有的各项功能,本次设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显示提示和按键紧急处理等功能。对于硬件系统的各个硬件分开进行了简单的介绍和分析其使用性能。然后进行了显示电路等的设计对各器件的选择及连接,大体分配各个器件及模块的基本要求。最后进行系统的设计,对于这次系统的设计,采用了C 语言进行编写

14、,通过keil uVi2 进行编译。在对单片机结构和工作情况做了充足的研究,了解定时器,中断以及延时原理。采用流行的 proteus进行电路图的绘制与仿真。第二章系统总体方案及硬件设计2.1系统方案设计在城市的各个路口都由交通控制系统来指挥车辆和行人的安全,各道上都有一组LED 红、黄、绿指示灯,红灯用来表示通行,绿灯用来表示允许通行,黄灯用来人们注意红绿灯状态即将切换。对于城市的路口,不同的城市的不同路段所设计的交通控制系统方案是有区别的,对于道路宽敞,车流量小的城市的路口所设计系统则比较简单,而且倒计时时间长。然而对于道路资源窄,车流量大的路口则需要一套能够在某时间段能最大限度的疏通车辆的

15、系统。方案:下面的方案主要介绍的是在道路资源有限,且车流量大的路口。能最大限度的疏通较大的车流量。以缓解交通压力1。两干道相交于一个路口,各干道有一组 LED 信号显示灯(如下图所示),用来指挥行人和车辆的安全通行。设南北方向为主干道,东西为次干道。南北干道西干道的车流量大,交通灯以以下四种状态循环。图 2.5 状态 S5图 2.6 状态 S6图 2.7 状态 S7图 2.8 状态 S8状态 S5,当南北显示绿灯的时候,南北车道车辆通行;东西车道显示红灯,东西车道车辆通行,此时东西车道上行人通行。时间为 30 秒(调试时时间改为 5 秒),南北为主干道,车流量大,所以通行时间长。状态 S6 和

16、状态 S8 都没有直行的情况,而且这 2 个状态,人行道都通行。所有的车辆只有转弯状态。状态 S7,当东西显示绿灯的时候,东西车道车辆通行;南北车道显示红灯,南北车道车辆通行,此时南北车道行人通过。时间为 20 秒(调试时时间改为 4 秒),东西车道为次干道,车流量小,所以通行时间短。注意状态 S6 与状态 S8,它们在一个时间段四个方向都可以通车,这种状态能在一定的时间内疏通较大的车流量,效率特别高。其循环流程图如下图 2.9 所示:图 2.9 状态流程图2.2方案的实现本文采用的单片机是用 AT89C51 为中心器件来设计交通灯控制器,采用 C 语言为程序编译语言,是用 Keil当行的Pr

17、oteus按联合完成编辑、编译、连接、调试、仿真等流程。该系统具体分为电源部分,紧急按键,复位,系统时钟等4 个输入模块。和LED 数码管,信号灯 2 个输出模块。2.3总体硬件设计交通灯控制系统的结构框图如图 2.8 所示。总体设计方案共有五个部分组成,分别是:单片机 AT89C51、红、绿、黄灯显示电路、LED 数显时间电路、晶振及复位控制电路、控制与调时开关电路。在进行仿真调试过程中,程序运行正确,五个部分就同时工作,从而实现了交通灯的基本功能及调时功能。系统的总的原理框图3如下图2.10 所示。图 2.10 硬件设计方案2.4AT89C51 单片机简介单片机所具有的特点是具有优异的性能

18、价格比;集成度高、体积小、可靠性高;控制功能强;低电压,低功耗。然而 AT89C51 是ATMEL 公司生产的低功耗,高性能 CMOS8 位单片机微处理器,片内含 4K bytes 的可系统编程的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性技术生产,兼容标准 MCS-51 产品指令系统,片内置通用 8 位处理器(CPU),功能强大的 AT89C51 单片机可以提供许多高性价比的应用场合,可灵活应用于各种控制领域2。2.4.1AT89C51结构简介处理器:处理器(CPU)是整个单片机的,是 8 位数据宽度的处理器,能处理 8 位二进制数据或代码,CPU 负责控制、指

19、挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据器、程序器:数据器(RAM)用于存放变化的数据。AT89C51 中数据器的地址空间为 128*8 字节RAM。程序器(ROM)用于存放程序和固定不变的常数等。通常采用只读器,且其有多种类型,在 89 系列单片机中全部采用闪存。AT89C51配置了 4KB 可重复写flash 闪存器。定时/计数器(ROM)定时/计数器用于实现定时和计数功能。AT89C51 共有 2 个 16 位定时/计数器。并行输入输出(I/O 口)80C51 共有 4 组 8 位 I/O 口(P0、P1、P2 或 P3),用于对外部数据的传输。每个口都由

20、1 个锁存器和一个驱动器组成。它们主要用于实现与外部设备中数据的并行输入与输出,有些I/O 口还有其它功能。全双工串行口AT89C51 内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。时钟电路时钟电路的作用是产生单片机工作所需要的时钟脉冲序列。中断系统中断系统的作用主要是对外部或的终端请求进行管理与处理。AT89C51 有 5个中断源,其中 2 个是外部中断源,分别是外部中断 0 和外部中断 1,和 3 个 断源,分别是T0、T1、串行中断3(包括串行接收中断 RI 和串行发送中断TI)。AT89C51 的引脚图如下图 2.1

21、1 所示:中图 2.11 AT89C51 引脚图2.4.2系统时钟电路晶振采用了时钟信号源的方式。对于时间要求不是很高的系统,只要按图进行设计就能使系统可靠起振并稳定运行。但由于图中的 C1、C2 电容起着系统时钟频率微调和稳定的作用,因此,在本系统的实际应用中一定要注意正确选择参数(3010 PF),对称性(尽可能匹配)。电路图如下图 2.12。图 2.12 系统时钟电路2.4.3系统复位电路复位电路我采用上电+按钮复位的方式。当开关打开时,RST 通过电阻接地,当有开关闭合时由于电容的作用使电源 VCC 通过电阻施加在单片机复位端 RST 上,实现单片机复位。在仿真器调试过程中,该复位电路

22、是不起作用的,有点可惜。具体电路如下图 2.13。图 2.13 系统复位电路2.5计时器显示电路LED,发光二极管,它是一种固态的半导体器件,可以直接把电转化为光。LED的心脏是一个半导体晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来,半导体晶片由三部分组成,一部分是 P型半导体,在它里面空穴占主导地位,另一端是N 型半导体,在这边主要是电子,中间通常是 1 至 5 个周期的量子阱。当电流通过导线作用于这个晶片的时候,电子和空穴就会被推向量子阱,在量子阱内电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED 发光原理。而光的波长也就是光的颜

23、色,是由形成 P-N 结的材料决定的。根据发光二极管的个数可将数码管分成 7 段数码管和 8 段数码管,8 段数码管比 7 段数码管多一个用于显示小数点的发光二极管,根据连接形式可将数码管分成共阳数码管与共阴数码管4。8 段 LED 是一种常用的数码显示屏。这种数码管的每个线段都是一个发光二极管,因而把它叫做 LED 数码管。由于在数码管的右下角增加了一个小数点,形成了所谓的 8 段数码管。E10501 是属于共阴极类型的数码管,只要公共端接地,其它端送上就能点亮。E10501 不仅具有工作电压低,体积小,长,可靠性高等优点,而且响应时间短(一般不超过 0.1 微妙),亮度也比较高。缺点是工作

24、电流比较高,一般工作电流都在 10 毫安左右。E10501 的外形图和等效电路图如下图 2.14 所示:图 2.14 LED 数码管在这次设计中,为了系统图的美观,我采用了 6 个数码管组成的数码管组,采用共阴极接法。如下图 2.15 所示:图 2.15 系统数码管电路2.6信号灯显示控制电路自从六十年代末LED作为商品面市以来已有三十年,发光二极管在高亮度化和多色化方面取得了长足的进步,发光效率几乎每十年提高十倍,至今已提高了一千倍以上。由于LED有长达10年的,省电和耐等突出的优点,早在九十年代初就有人开始研究LED交通信号灯,由于亮度低和色度不对,难以做出合格的样品来,随着LED亮度化和

25、多色化的实现,于1995年研制成了整套的LED交通信号灯5。在设计路灯时,采用了发光二极管代替路灯。先介绍一下二极管,如下图 2.16。二极管工作原理是单向导通,即只有正极电压高于负极电压某特定值时才会导通,而负极电压高于正极电压是不导通的。图2.16 发光二极管示意图发光二极管是一种特殊的二极管,导通时会发光(发光二极管导通压降一般为1.7V1.9V)。此外,工作电流要满足该二极管的工作电流。发光二极管的正负极可以用万用表进行判断,把万用表拨至二极管档或电阻挡,用两个表笔分别接触二极管的两个引出脚。若发光二极管被点亮,则与红表笔相接的引出脚为正极。从外观上看,发光二极管的正极引脚的长度也比较

26、长。一般发光二极管与I/O端口之间都会再连接一个电阻,其作用在于限制通过二极管的电流,从而达到减少功耗或者满足端口对最大电流的限制。一般发光二极管的点亮电流为5mA至10mA。 路灯设计时我采用了红、黄、绿三种发光二级管。如下图2.17所示。图2.17 LED信号灯二极管电路2.7按键电路设计按键工作方式可以是中断方式也可以是扫描方式,对扫描方式来说,扫描是一直调用按键扫描程序,也可以用定时调用按键扫描程序,不管哪一种,都需要占用系统宝贵的时间资源,相比较而言中断就有优势,中断键盘只有在有按键按下时才去执行键盘程序,在没有按键按下的情况下,可以处理其他的事务,使资源得到充分的利用,故中断键盘有

27、占用资源少,响应速度快的优点,但在有按键按下时有数码管闪烁的缺点,这是因为处理中断时,数码管停止了扫描,对显示要求不高的场合下,这也是完全可以满足要求的。但实际应用中,为了保证安全查询键值和响应,通常还要进行按键去抖和等待键(查询按键是否抬起)的动作, 由于按键本身是机械开关,所以在触点闭合或断开的瞬间会出现电压抖动的现象。此次的按键设计是一种TTL电路,它是电路原理图中比较简单的电路,这类电路一般可分成三个主要部分,输入级、输出级和中间级6。按键设计如下图2.18所示。图2.18 应急按键电路第三章系统设计3.1设计思路及51 的编程语言常用的有两种。一种是汇编语言,一种是 C 语言。虽然汇

28、编语言的机器代码生成效率很高但可读性却不强,复杂一点的程序很难读懂。不过 C 语言在大多数情况下其机器代码生成效率和汇编语言相当,但是可读性和可移植性远远超过了汇编语言。C 语言还可以嵌入汇编来解决高时效性的代码编写程序。综合以上 C 语言的优点,本次交通灯控制程序的设计程序在编写时选择 C 语言来作为编译语言。一个完整的交通灯相当于一个简单的单片机系统,该系统有交通灯设置电路、单片机、显示电路等。单片机是集成的 IC,只需根据实际设计要求选型。其他部分都需要根据应用要求和性能指标自行设计。首先了解实际交通灯的变化规律。交通等红、绿、灯色的变化规律已经在提出方案时,车辆通行状态 S5S8 中提

29、出了。然后这次的系统程序只针对直行方案的编写,程序设计过程将原来的 30 秒缩短到 5 秒,20 秒缩短到 4 秒,黄灯 5 秒缩短到 1 秒。3.2流程系统总体流程图如下图 3.1 所示:图 3.1 整体设计流程图3.3设计程序说明这部分定义了一些全局变量的数组和变量以及位标志,只是些定义的东西不需要画流程图。这部分程序如下:#include#defineucharunsignedchar#definesbit ucharuunsignednom=P37;codeled_table10=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f

30、,0 x6f;/显示数码表ucharcodelight_se=0 x21,0 x12,0 x0c,0 x12;/交通灯状态表ucharucharcodeem_se3=0 x24,0 x21,0 x0c;/紧急灯状态显示表light_time2=0,20,0,6,0,30,0,6;/显示时间表ucharusebef,time1s=100,se=0;/time;/显示时间变量紧急灯状态,定时基数,状态基数bitmd_flag,se_flag=1,red;/显示时间更改状态,状态切换标志位,红绿切换标志位3.4延时函数通常,延时可以使用 Sleep()函数。但是在执行该函数时,用户界面将得不到更新,

31、为了解决该问题,使用 Delay()函数。通过再循环等待期间检测消息变化,防止界面出现假死机现象。在延时语句中,使用了 for 语句,for 语句是有限循环语句,一个有限的循环需要三个条件,表达式 1 定义了循环的起始值,表达式 2 表示结束值,表达式 3 表示增量值7。延时函数的程序如程图如下图 3.2 所示:/*延时函数*/void delay(void)uchari,j;for(i=100;i0;i-)for(j=100;j0;j-);/循环 10000 次3.2延时函数流程图3.5读状态函数程序及流程图状态函数如下,程序如下图 3.3:/*读状态函数:判断是否有紧急灯状况出现*/Uch

32、arUcharrd emse(void)value;value=p3; value=4;value&=0 x07;if(value!=sebef)sebef=value;return 1;/判断是否有紧急灯状况发生,/保存按键值,置返回标志为 1else return 0;图 3.3延时函数流程图3.6显示函数显示函数如下:voiddisplay(void)if(md_flag=1)/显示更改时间状态if(1=red) / 南北方向红灯时间显示P2=0 xf6; P0=led_tablelight_time00;delay();/分钟P2=0 xed; P0=led_tablelight_ti

33、me01/10;delay();/秒的十位P2=0 xdb; P0=led_tablelight_time01%10;delay();/秒的个位else/正常状态,显示时间P2=0 xf6;P0=led_tabletime/100; delay();/分钟P2=0 xed;P0=led_tabletime/10%10;delay();/秒的十位P2=0 xdb;P0=led_tabletime%10; delay();/秒的个位3.7定时器 0 中断函数定时器中断函数是利用单片机的定时中断,实现每隔 1S 点亮一个 LED,即先点亮第一个,后点亮第二个,再点亮第三个,直到点亮第八个,又重新开始

34、8。定时器 0 中断函数如下:voidTime0(void)errupt1 EA=0;TH0=-10000/256;TL0=-10000%256;time1s-;if(time1s=0)/一秒中到,重新置数time1s=100;time-;/显示时间自减if(time=0)/显示时间减到 0 时切换显示时间状态se+;/四个状态轮流切换if(se=4)se=0;se_flag=1;/置状态切换标志位EA=1;第四章系统仿真4.1 Proteus 仿真介绍Proteus是英国Labcenter electronics 公司的EDA 工具。它不仅具有其它 EDA 工具的仿真功能,还能仿真单片机及器

35、件。它是目前最好的仿真单片机及器件的工具。虽然目前国内推广刚起步,但是已经受到单片机者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。它是世界上著名的 EDA 工具,从原理图布图、代码调试到单片机与电路协同仿真,一键切换到 PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真、PCB设计虚拟模型仿真三合一的设计,其处理器模型支持 8051、HC11、PIC10/12/16/18/24/30/DSPIC33、AVR、ARM、8086 和 MSP430 等等。在编译方面也支持IAR、Keil 和MPLAB 等多种编译器。4.2Proteus的功能特点与模块Pro

36、teus具有其它 EDA 工具的功能,这些功能分别是原理布图、PCB 自动或人工布线、SPICE 电路仿真。它的性特点是互动的电路仿真(可实时采用诸如RAM、ROM、键盘、马达、LED、LCD、AD/DA,部分 SPI 器件,部分IIC 器件)和仿真处理器及其电路(可仿真 51 系列、AVR、PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型)。它的功能模块有智能原理图设计(ISIS)、完善的电路仿真功能(Prospice)、独特的单片机协同仿真功能(VSM)、实用的 PCB 设9。计4.3Keil C51简介Keil C51 是Keil Software 公司的 51 系列兼

37、容单片机C 语言开发系统,与汇编相比,C 语言在功能上、结构上、可读性、可性上有明显的优势。Keil是目前最流行开发 MCS-51 系列单片机的。Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVi)将这些部分组合在一起。掌握这一款的使用对于使用 51系列单片机的者来说是十分必要的,如果要使用 C 语言编程,那么 Keil 几乎就是你的不二之选。Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型时更能体现高级语言的优势10。4.4 Keil uVi2 编译程序Keil

38、uVi2,生成 HEX 文件,如下图 4.1 所示:图 4.1 生成 HEX 文件最后编译程序无误如下图 4.2 所示:图 4.2 程序编译无误图4.5Proteus仿真1.打开 Proteus,将各个元器件按照系统总电路图连接起来,如下图 4.3 所示:图 4.3 Proteus 总体电路连接图2.双击 AT89C51,添加编译好的 HEX 文件,通电之后,开始仿真。此时的状态是 S3(南北红灯,东西绿灯),时间已经走过 2 秒。如下图 4.4 所示:图 4.4 通电之后仿真3.如下图 4.5 所示,显示的是黄灯,显示时间为 1 秒。说明下一个灯色即将到来,也就是两个干道的红、绿灯即将切换。

39、图 4.5 两干道灯色切换等待4.当南北方向绿灯走过 1 秒的时候,合上按键 K0,东西、南北两道均显示红灯,LED 倒计时暂停在 4 秒。此时只允许救护车、等特殊车辆通过。如下图 4.6 所示:图 4.6 应急灯特殊车辆通过5.当东西方向绿灯要切换到红灯时,但是此时东西方向的车两量很大,南北方向车流量稀疏,此时就得合上按键 K2,让时间暂停来缓解东西方向的交通输送压力。或者在南北方向显示绿灯时,并且车多的情况下,合上开关 K1 再打开开关 K2 会使绿灯切换到南北方向上。仿真图如下图 4.7 所示。同样,按键开关 K1 是用来控制应急南北方向灯色的。图 4.7 按键控制缓解交通压力第五章总结

40、与展望系统方案理论上能实时有效的疏导交通,此系统在对单片机系统,按键电路,信号灯电路等的足够了解的情况下,完成了程序的编写与总电路图的绘制,最后通过Proteus 仿真测试后,实现了基本交通灯直行控制功能,按键开关控制能实现特殊车辆的通行,还能使用按键使东西或者南北的车辆的通行量增加。设计中的地方就是在仿真的过程中只实现了道路直行的情况。还有系统设计时没有涉及车辆流量的检测电路。虽然毕业设计已经接近尾声,但是这个设计不会因为毕业设计的结束而停止。对于现在电子行业技术发展迅速,知识更新换代加快,以及车辆不断的增加。然而在道路的资源有限的情况下,我需要更加系统的去学习这方面的知识,来设计出更人性化

41、,简单、方便的服务于人们的交通控制系统。参考文献.智能交通信号灯控制器设计 J.常州工学院计算机信息1,2009,9(5):2198.2.单片机原理及应用M.:电子科技大学,2001.261.工业大学机械电子学院,2010,(5):87.3文健.浅议单片机在可控交通灯设计中的运用J.482.5.基于 FPGA 的 8 段数码管动态显示 IP 核设计J.广西民族师范学院,2009,10(17):烈.LED 交通信号灯的研究进展和市场前景D.复旦大学,2000.6胡燏.关于 TTL 与非门电路原理图的识读方法J.(205):258.建筑学院计算机系,2009,1178910,. 拿来就用单片机M.

42、:人民邮电,2008.27.,2009.9899.,2008.62.,2010.385386.C51 单片机及应用系统设计M.:电子工业.单片机原理与接术M.:人民邮电:机械工业.C51 单片机高效入门M.附录A仿真系统总电路图附录B系统源程序#include#defineucharunsignedchar#definesbituunsignednom=P37;uchar code示数码表led_table10=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;/ 显uchar uchar uchar uchar ubit/

43、*codecodelight_se=0 x21,0 x12,0 x0c,0 x12;/交通灯状态表em_se3=0 x24,0 x21,0 x0c;/紧急灯状态显示表light_time2=0,4,0,1,0,5,0,1;/显示时间表sebef,time1s=100,se=0;/time;/显示时间变量紧急灯状态,定时基数,状态基数md_flag,se_flag=1,red;/显示时间更改状态,状态切换标志位,红绿切换标志位延时函数*/voiddelay(void)uchari,j;for(i=100;i0;i-)for(j=100;j0;j-);/*读状态函数:判断是否有紧急灯状况出现*/u

44、charucharrd_emse(void)value;value=P3;value=4; value&=0 x07;if(value!=sebef)s值,置返回标志为 1ebef=value;return 1;/判断是否有紧急灯状况发生,保存按键elsereturn 0;/*显示函数*/voiddisplay(void)if(md_flag=1)/显示更改时间状态if(1=red) / 南北方向红灯时间显示P2=0 xf6; P0=led_tablelight_time00;delay();/分钟P2=0 xed; P0=led_tablelight_time01/10;delay();/秒

45、的十位 P2=0 xdb;P0=led_tablelight_time01%10;delay();/秒的个位/南北绿灯东西红灯亮时间显示 P2=0 xf6;P0=led_tablelight_time20; delay();/分钟P2=0 xed;P0=led_tablelight_time21/10; delay();/秒的十位P2=0 xdb;P0=led_tablelight_time21%10; delay();/秒的个位elseelse/正常状态,显示时间P2=0 xf6;P2=0 xed; P2=0 xdb;P0=led_tabletime/100; delay();/分钟P0=led_tabletime/10%10;delay();/秒的十位P0=led_tabletime%10; delay();/秒的个位/*主函数*/voidmain()/初始化定时器 0,外部中断 1 EA=1;EX1=1;IT1=1;ET0=1;TMOD=0 x01;TH0=-10000/256;TL0=-10000%256; TR0=1;while(1)if(rd_emse()/如果有紧急灯按下,进行如下紧急处理switch(sebef)case case

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论