




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录TOC\o"1-3"\f\h\u294621.我国的城市交通灯系统现状 4300111.1国内城市交通灯系统现状 4146251.2国内城市交通灯系统的不足点 4255082.单片机的概述 6168742.1单片机的介绍 631612.2单片机交通灯控制的优点 6166972.3单片机的作用 6231002.3.1单片机交通灯定时原理 6193902.3.2单片机交通灯控制原理 6223453.芯片的介绍 649593.1芯片内部结构简介 715783.2芯片引脚图 7120554.程序设计 1033454.1程序主体设计流程图 1048154.2程序清单 12257965.总结 2016072参考文献 205320致谢 21基于单片机的交通灯的设计摘要:基于51单片机的特点及交通灯在实际控制中的特点,论文中对在单片机应用中可能遇到的重要技术问题都有涉足。论文中在对十字路口的交通灯状态设为两张:一种是正常状态,一种是紧急状态,分别用红、绿、黄色灯的不同组合来设计。论文中还介绍了控制的基本原理以及控制的表现,介绍了用于城市十字路口的三色灯交通信号时间显示的研制方案,对其电源供电、发光二极管构成的负载结构、灯色时间检测都给出了精妙合理的优化结构,大幅度地提高了产品可靠性并降低了制造成本。关键词:51单片机;交通灯;时间显示;定时器;延时我国的城市交通灯系统现状1.1国内城市交通灯系统现状随着经济的发展,城市现代化程度不断提高,交通需求和交通量迅速增长,城市交通网络中交通拥挤日益严重,道路运输所带来的交通拥堵、交通事故和环境污染等负面效应也日益突出,逐步成为经济和社会发展中的全球性共同问题。交通问题已经日益成为世界性的难题,城市交通事故、交通阻塞和交通污染问题愈加突出。为了解决车和路的矛盾,常用的有两种方法:一是控制需求,最直接的办法就是限制车辆的增加;二是增加供给,也就是修路。但是这两个办法都有其局限性。交通是社会发展和人民生活水平提高的基本条件,经济的发展必然带来出行的增加,而且在我国汽车工业正处在起步阶段的时期,因此限制车辆的增加不是解决问题的好方法。而采取增加供给,即大量修筑道路基础设施的方法,在资源、环境矛盾越来越突出的今天,面对越来越拥挤的交通,有限的源和财力以及环境的压力,也将受到限制。这就需要依靠除限制需求和提供道路设施之外的其他方法来满足日益增长的交通需求。交通系统正是解决这一矛盾的途径之一。智能交通系统是将先进的信息技术、数据通讯传输技术、电子传感技术、电子控制技术及计算机处理技术等有效的集成运用于整个地面交通管理系统而建立的一种在大范围内、全方位发挥作用的实时、准确、高效的综合交通运输管理系统。对城市交通流进行智能控制,可以使道路畅通,提高交通效率。合理进行交通控制可以对交通流进行有效的引导和调度,使交通保持在一个平稳的运行状态,从而避免或缓和交通拥挤状况,大大提高交通运输的运行效率,还可以减少交通事故,增加交通安全,降低污染程度,节省能源消耗,论文中就是通过对交叉路口交通信号的智能控制,达到优化路口交通流的目的。1.2国内城市交通灯系统的不足点交通控制存在的问题我国城市交通运输的现状和存在的问题,借鉴国外城市交通管理的先进经验,强调建立城市交通管理体制的重要性,提出加强城市交通研究的交通规划,建立稳定的交通基础设施建设的资金出道,实行公交优先政策,建立先进的交通信息系统等对策。随着城市机动车增长速度的加快。1994年卧轨城市机动车保有量已接近500万辆。20世纪90年代以来,经济的发展加快,从1985年到1995年,机动车增长率达13%左右,近几年更是增多。然而,与此同时,城市道路建设规模也在加大,我国城市普遍存在道路密度,道路面积率偏低的问题,这是我国城市尤其是大城市有机的一个重要原因。我国城市道路的密度只有6.8km每平方千米,而在20世纪80年代,世界发达国家就已到达20km每平方千米。20世纪90年代,我国部分城市道路面积率,北京为5.9%,上海为6.4%,而国外东京为13.8%,巴黎为25%,普遍高于我国。近几年,国家虽不断加大城市道路建设的力度,但仍赶不上车辆的增长速度,且与世界其他国家相比,差距仍很大。出租车以及公交的发展经营情况并不尽如人意,虽然车辆和线路长度增长,但运营速度成了瓶颈,新增的运动被运输效率低下所抵消。交通管理方面水平还欠发展,随着交通需求越来越旺盛,而我国城市中小交通管理和交通安全的现代化设施却做得不足。在车辆,道路和交通管理系统,城市交通信号灯控制系统,城市交通管理中应用人工智能技术,信息采集和信息提供技术等方面都与发达国家有很大的差距。近几年,虽然有部分城市研究和引进一些国外先进的交通信号管理系统,但是由于交通管理设施不足等原因,我国交通事故率居高不下。城市车流行驶速度逐年下降,目前不少城市交通车运量年年增长,但运输速度普遍下降,这都源于交通通行不佳。国内的交通灯一般设在十字路口,在醒目位置用红、绿、黄三种颜色的指示灯,加上一个倒计时的显示计时器来控制行车。而目前绝大多数交通灯的时间都是设定好的,还存在以下缺点:(1)两车道的车辆轮流放行时间相同且固定,在十字路口,经常一个车道为主干道,车辆较多,放行时间应该长些;另一车道为副干道,车辆较少,放行时间应该短些。(2)没有考虑紧急车通过时,两车道应采取的措施,臂如,消防车或急救车执行紧急任务通过时,两车道的车都应停止,让紧急车通过。这些缺点的存在,决定了传统交通灯不能适应当前城市交通的要求,不能使城市车流的调节达到最优。2.单片机的概述2.1单片机的介绍单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、4代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。2.2单片机交通灯控制的优点单片机价格适当,它体积小,运算速度快,定时器通过中断方式给CPU发送信号,使CPU可以及时响应,减少了系统开销降低了系统功耗。单片机通过程序方式控制各种输入输出信号,可以方便的设计运行规则,而且可以在系统运行过程中设定交通灯亮灭的时间和选择规则,从而实现多种复杂功能。2.3单片机的作用2.3.1单片机交通灯定时原理当工作在定时器状态时,定时器寄存器在每一个时钟信号时加1,时钟信号为系统时钟或系统时钟的12分频。每个定时器都有几种不同的工作方式,其中重载式工作方式可以使定时器在定时结束时,重新装入定时值,重新开始计数。即可以作为自动重载的定时器使用。并且计时结束时,通过中断方式给CPU发送信号。2.3.2单片机交通灯控制原理单片机根据接收倒的定时器中断,输出控制信号控制信号灯的亮灭,还可以输出脉冲信号控制数码管显示倒计时时间。单片机控制系统直接控制定时器,外部输出设备和键盘。可以通过键盘设定时间和规则。3.芯片的介绍3.1芯片内部结构简介中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(内部RAM):数据存储器用于存放变化的数据。AT89S51中数据存储器的地址空间为256个RAM单元,但其中能作为数据存储器供用户使用的仅有前面的128个,后128个被专用寄存器占用。程序存储器(内部ROM):程序存储器用于存放程序和固定不变的常数等。通常采用只读存储器,且其又多种类型,在89系列单片机中全部采用闪存。AT89S51内部配置了3KB闪存。定时/计时器(ROM):定时/计数器用于实现定时和计数功能。AT89S51共有2个16位定时/计数器。并行输入输出(I/O)口:89S51共有4组8位I/O口(P0、P1、P2或P3),用于对外部数据的传输。每个口都由1个锁存器和一个驱动器组成。它们主要用于实现与外部设备中数据的并行输入与输出,有些I/O还有其他功能。全双工串行口:AT89S51内置一个全双工串行通信口,用于与其他设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。时钟电路:时钟电路的作用是产生单片机工作所需要的时钟脉冲序列。中断系统:中断系统的作用主要是对外部或内部的终端请求进行管理与处理。AT89S51共有5个中断源,其中有2个外部中断源和3个内部中断源。3.2芯片引脚图VCC:AT89S51电源正端输入,接+5V。VSS:电源地端。XTAL1:单芯片系统时钟的反向放大器输入端。XTAL2:系统时钟的反向放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英振荡晶体系统就可以动作了,此外可以在两个引脚与地之间加入一个20PF的小电容,可以使系统更稳定,避免噪声干扰而死机。RESET:AT89S51的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。EA/Vpp:表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。如果是使用8751内部程序空间时,此引脚要接成高电平。此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(Vpp)。ALE/PROG:表示地址锁存器启用信号。AT89S51可以利用这个引脚来触发外部的8位锁存器(如74LS373),将端口0的地址总线(A0~A7)锁进锁存器中,因为ATAT89S51是以多工的方式送出地址及数。平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6,因此可以用来驱动其他周边晶片的时基输入。此外在烧录8751程序代码时,此引脚会被当成程序规划的特殊功能来使用。PSEN:为程序储存启用,当8051被设成为读取外部程序代码工作模式时(EA=0),会送出此信号以便取得程序代码,通常这支脚是接到EPROM的OE脚。AT89S51可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。PORT0(P0.0~P0.7):端口0是一个8位宽的开路电极(OpenDrain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当作I/O用时可以推动8个LS的TTL负载。如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0~A7)及数据总线(D0~D7)。设计者必须外加一个锁存器将端口0送出的地址锁住成为A0~A7,再配合端口2所送出的A8~A15合成一组完整的16位地址总线,而定位地址到64K的外部存储器空间。PORT2(P2.0~P2.7):端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。P2除了当作一般I/O端口使用外,若是在AT89S51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这个时候P2便不能当作I/O来使用了。PORT1(P1.0~P1.7):端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LSTTL负载,同样地,若将端口1的输出设为高电平,便是由此端口来输入数据。如果是使用8052或是8032的话,P1.0又当作定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发引脚。PORT3(P3.0~P3.7):端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。其引脚分配如下:P3.0:RXD,串行通信输入。P3.1:TXD,串行通信输出。P3.2:INT0,外部中断0输入。P3.3:INT1,外部中断1输入。P3.4:T0,计时计数器0输入。P3.5:T1,计时计数器1输入。P3.6:WR,外部数据存储器的写入信号。P3.7:RD,外部数据存储器的读取信号。4.程序设计4.1程序主体设计流程图整个软件程序方面主要分三大部分:主程序部分、运行部分程序和中断处理程序。流程图如图所示。开始开始设置中断工作方式、触发方式、初始化是否有中断运行过程执行中断YN中断结束,退出中断,返回主程序运行过程运行过程SN:绿灯(24),EW:红灯是否到6秒SN:黄灯亮,EW:红灯Count<10?SN:黄灯灭,EW:红灯是否到0秒NYYNNEW:绿灯(24s),SN:红灯是否到6秒EW:黄灯每秒闪一次,SN:红灯Count<10?EW:黄灯灭,EW:红灯是否到0秒YYYNNNLED显示缓冲区DISPY中断程序流程4.2程序清单以下是用C语言编写的交通灯控制程序://晶振11.0592M定时器0定时,方式1,25ms常数a600,10ms常数dc00,5ms常数ee00,//全红0x55;全绿0xaa;全黄0x00;南北红,东西绿0x66;南北绿,东西红0x99;#include<reg51.h>sfrsmdis=0x80;sfrjtd=0xa0;sfrjtdh=0x90;sfrP4=0xC0;sfrP4SW=0xBB;sbitweishuang0=P4^4;sbitweishuang1=P4^5;sbitweishuang2=P4^6;sbitNLR=P3^6;sbitNLG=P3^7;unsignedcharcodemd[]={0xf5,0x05,0xb3,0x97,0x47,0xd6,0xf6,0x85,0xf7,0xd7,0xe7,0x76,0xf0,0x37,0xf2,0xe2,0x00};//0,1,2,3,4,5,6,7,8,9,A,b,C,d,E,Funsignedchartime=0;unsignedcharsec=10;unsignedcharwaittime=10;unsignedcharp33;unsignedcharfangshi=0;bitflag=0;//运行方式控制,立即转换标志//状态数组中,第一个数字为P2口的数据,北红绿,西红绿,南红绿,东红绿;//第二个数字为P1口的数据,北(P1.0)西南东黄灯,南左黄灯,北左黄灯//南左红(P1.6)绿(P1.6)//第二个数字为P3口的数据,仅P3。6接北左红,P3.7接北左绿unsignedcharS0[]={0x59,0x7f,0x80,35};//状态S0unsignedcharS1[]={0xdd,0xca,0xc0,3};//状态S1unsignedcharS2[]={0x95,0xbf,0x40,35};//状态S2unsignedcharS3[]={0xf7,0xa4,0xc0,3};//状态S3unsignedcharS4[]={0x66,0xbf,0x80,20};//状态S4unsignedcharS5[]={0x7f,0xd1,0x80,3};//状态S5unsignedcharS5[]={0x77,0xb5,0x80,3};//状态S5unsignedcharS6[]={0x55,0xbf,0x80,10};//状态S6;中断状态或紧急控制状态 unsignedcharshu0,shu1,shu2,tc=0;voiddissmg() { if(tc==0){smdis=md[shu0];weishuang0=0;weishuang1=1;weishuang2=1;}elseif(tc==1){smdis=md[shu1];weishuang0=1;weishuang1=0;weishuang2=1;}elseif(tc==2){smdis=md[shu2];weishuang0=1;weishuang1=1;weishuang2=0;} }****************************************************定时中断程序****************************************************voidint_t0()interrupt1using1{TR0=0; time++;tc++; if(tc>=3){tc=0;} if(time==100){waittime--;}elseif(time==200) { waittime--; sec--; time=0; shu0=sec%10; shu1=sec/10; }TH0=0xee;TL0=0x00;if(tc==0){smdis=md[shu0];weishuang0=0;weishuang1=1;weishuang2=1;}elseif(tc==1){smdis=md[shu1];weishuang0=1;weishuang1=0;weishuang2=1;}elseif(tc==2){smdis=md[shu2];weishuang0=1;weishuang1=1;weishuang2=0;} //if(tc>=3){tc=0;} TR0=1;}****************************************************显示控制函数*****************************************************voidstatusdis(unsignedchar*status){ sec=1+status[3];waittime=2*sec; //time=100; while(waittime) { if(flag) { flag=0; time=0; sec=1+status[3];waittime=2*sec; }jtd=status[0];//东西南北灯状态jtdh=status[1];//东西南北灯状态//jtdl=jtdl&0x0f;//jtdl=jtdl|status[1];//南左转,北左转灯状态 p33=status[2]; if(p33&0x40) { NLR=1;//北向左转红灯 } else { NLR=0; }if(p33&0x80) { NLG=1;//北向左转绿灯 } else { NLG=0; } dissmg();//如果用此句,可以增强显示 }}****************************************************中断程序****************************************************voidint_int0()interrupt0using2{unsignedcharwaittime1,sec1,time1,jtd1,jtdh1,p331;//进中断时保存现场用的 EX0=0; waittime1=waittime;sec1=sec;time1=time;jtd1=jtd;jtdh1=jtdh;p331=p33 statusdis(S6); waittime=waittime1;sec=sec1;time=time1;jtd=jtd1;jtdh=jtdh1;p33=p331; EX0=1; }voidint_int1()interrupt2using3{unsignedlongk; EX1=0;for(k=65000;k>0;k--)dissmg();//用此句延时去抖,可以增强显示 fangshi++; flag=1; if(fangshi>=4)fangshi=0; switch(fangshi) { case0://默认的运行方式 S2[3]=S0[3]=35; S4[3]=20; shu2=16;//不显示 break;case1: S2[3]=S0[3]=50; S4[3]=20; shu2=10;//显示A break;case2: S2[3]=S0[3]=60; S4[3]=30; shu2=11;//显示b break;case3: S2[3]=S0[3]=35; S4[3]=35; shu2=12;//显示C break;default: break; } for(k=80000;k>0;k--)dissmg();//用此句延时去抖,可以增强显示 EX1=1; }********************************************主程序********************************************voidmain(){//unsignedinti;P4SW=0xff;//把P4口设置成I/O口TMOD=0x01;//定时器0方式1********************************************中断入口程序********************************************TH0=0xee;TL0=0x00;EA=1;ET0=1; PT0=1; PX0=0;PX1=0; EX0=1; IT0=0;EX1=1; IT1=1;TR0=1;shu0=35%10; shu1=35/10; hu2=16;//不显示;****************************************************显示程序**************************************************** //statusdis(S5);while(1);while(1){ //S0 //东西红灯,南绿北红0x59 //南左转绿灯,北左转红灯0x60 //等待35秒 35statusdis(S0);//S1//东西红;南北黄灯0x11//东西红灯3秒,南北左转均为黄灯0x00//等待3秒3statusdis(S1);//S2//东西红灯,南红北绿0x95//南转左红灯,北转左绿灯
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校目标化管理制度
- 学校里学生管理制度
- 学生小菜园管理制度
- 完善危机值管理制度
- 实体化公司管理制度
- 实验室仪器管理制度
- 审计清单式管理制度
- 家具厂环境管理制度
- 库房进出入管理制度
- 征收办公章管理制度
- 2025年广东省广州市南沙区中考二模道德与法治试题
- 2025届重庆市普通高中学业水平选择性考试预测历史试题(含答案)
- 2025-2030中国眼底照相机行业市场发展趋势与前景展望战略研究报告
- 2024年深圳市大鹏新区区属公办中小学招聘教师真题
- 人教版小学语文四年级下册作文范文2
- 大学语文试题及答案琴
- 实验题(7大类42题)原卷版-2025年中考化学二轮复习热点题型专项训练
- CJ/T 362-2011城镇污水处理厂污泥处置林地用泥质
- 红十字会资产管理制度
- 2025安全宣传咨询日活动知识手册
- T/CSPSTC 112-2023氢气管道工程施工技术规范
评论
0/150
提交评论