ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:262.28KB ,
资源ID:7716883      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-7716883.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(课设交通灯.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

课设交通灯.docx

1、课设交通灯摘 要实现路口交通灯系统的控制方法很多,可以用标准逻辑器件、可编程序控制器PLC、等方案来实现。但是这些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了功能修改及系统调试的困难。因此,在本次设计中采用单片机技术,应用目前广泛应用的C语言描述,实现交通灯系统控制器的设计,完成系统的控制作用。本系统选用AT89S51单片机,配合一些简单的外围电路完成交通控制系统。由于该单片机具有简单实用、高可靠性、良好的性能价格比以及体积小等优点,已经在各个技术领域得到了迅猛发展。实现同样的功能,这个方案既简单又经济!该灯控制逻辑可实现3种颜色LED灯的交替点亮。经PROTEUS仿真模拟

2、的试验,该系统得到了预期的实时控制效果. 本论文针对单片机控制技术,从硬件设计和软件设计两个方面分别介绍通用小型实时交通监控系统的设计方法。 关键词:交通灯; 单片机; 硬件设计; 软件设计AbstractThere are many ways to control the Intersection traffic signal systems .That you can use standard logic devices, programmable logic controller PLC, and other programs to achieve. However, the funct

3、ions of these control methods require modification and debugging support for hardware circuit, to a certain extent, an increase of functional modifications and system debugging difficulties. Thus, in this design, using SCM technology, applicating C-language to describe and realize the design of traf

4、fic signal system controller to complete the system control action. The system chose AT89S51 microcontroller, with a few simple external circuit to complete the traffic control system. Since the microcontroller has a simple, practical, high reliability, good performance and low cost, as well as the

5、advantages of small size, has been in various technical fields has been developing rapidly. To achieve the same function, this program is simple and economical! The lamp control logic can realize three kinds of alternating color LED lamps lit. The PROTEUS simulation experiments, the system has been

6、the expected real-time control effect. In this paper, for the microcomputer control technology, from hardware design and software design introduce two aspects of universal small-scale real-time traffic monitoring system design method.Key words:traffic signal systems;SCM technology;hardware design an

7、d software design 目 录1 概述 11.1 交通灯产生的背景 11.2 单片机概述 12 MSC-51芯片 22.1 MCS-51单片机内部结构 22. 2 MCS-51的引脚图 33.方案论证 43.1交通管理的方案论证 43.2系统硬件选择43.2.1系统总框图53.2.2 分部件介绍 54交通灯的程序设计64.1 程序流程图 64.2延时的设定 64.3 延时子程序 7 4.4 主程序说明 75电路制作及调试过程 76课程设计的体会8参考文献 9谢辞10附录11 1. 概述1.1 交通灯产生的背景当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但

8、这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红

9、绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯

10、是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。1.2 单片机概述 单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。 通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源

11、在增多,引角的多功能化,以及低电压底功耗。.2. MSC-51芯片2.1 MCS-51单片机内部结构 AT89S51是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。AT89S51单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。图1是MCS-51系列单片机的内部结构示意图图12.2 MCS-51的引脚图图2MCS-51系列单片机中多种型号均采用40Pin封装的双列直接DIP结构,图2是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,

12、4组8位共32个I/O口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明: Pin9:RESET/Vpd复位信号复用脚,当芯片通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态。AT89S51的复位方式可以是自动复位,也可以是手动复位。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用

13、电源,以保证单片机内部RAM的数据不丢失。Pin30:ALE/ 当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。如果单片机是EPROM,在编程其间, 将用于输入编程脉冲。Pin29: 当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。Pin31:EA/Vpp程序存储器的内外部选通线,80

14、51和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的8031,EA端必须接地。在编程时,EA/Vpp脚还需加上21V的编程电压。3.方案论证3.1交通管理的方案论证东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停车时间。 图3.状态表时间间隔10S 3S

15、10S3S东西道绿灯亮黄灯闪 红灯亮红灯亮南北道红灯亮红灯亮绿灯亮黄灯亮 说明: (1)当南北方向为红灯,此道车辆禁止通行,东西道行人可通过;东西道为绿灯,此道车辆通过,行人禁止通行。时间为10秒。(2)东西道在3秒内黄灯闪烁5下,警示车辆和行人绿灯的状态即将切换。 (3)当东西方向为红灯,此道车辆禁止通过,行人通行;南北方向为绿灯,南北道车辆通行。时间为10秒。 (4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。3.2系统硬件选择选用设备:AT89S51单片机一片,红LED灯3个(其中一个用来作电源指示灯),黄、绿LED各两个,按钮开关一个、10uf电容2

16、个,22pf电容2个,0.1uf电容一个,12M晶振一个。电阻阻值:100,10K,1K和6个330.3.2.1系统总框图如下图43.2.2 分部件介绍(1)电源图5:电源部分C3,C4为滤波电容用在电源整流电路中,用来滤除交流成分,使输出的直流更平滑。此处的LED用作电源指示灯。实际设计中,由于单片机电源用5V电压,为了供电方便,我也可以设计USB接口来实现电源供电功能,如图6所示。图6(2)时钟信号输入 在单片机的应用电路中,常使用晶振来输入时钟信号。本电路就是采用12M石英晶振来产生频率的。因为晶振的频率稳定性非常高,抗外界干扰。(3)复位功能在单片机的RST端口经过一按钮开关与VCC相

17、连,如图7所示。按钮开关控制RST端口,当单片机工作发生错乱或死机,按开关进行复位。图7(4)单片机输出部分 6个LED从P0_0至P0_5经上拉电阻接VCC。4交通灯的程序设计4.1 程序流程图4.2延时的设定 延时方法可以有两种。一种是利用MCS-51内部定时器溢出中断,另一种是采用软件延时的方法。定时器工作时必须给计数器送计数器初值,这个值是送到TH和TL中的。他是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值设为C,计数初值设定为TC ,可得到如下计算通式:T计数是单片机时钟周期的12倍;C=12*TC;如单片机的主脉冲频率为12MHZ

18、 ,经过12分频 TMAX65536 *12/12M65536毫秒 显然1秒钟已经超过了计数器的最大定时间,所以我选择软件软件延时办法解决这个问题4.3 延时子程序 通过编写延时子程序来设置。如12M晶振ms级别的延时子程序如下:void DelayMS(uint x) /*延时子程序*/ uchar i; while (x-) for (i=0;i120;i+);则1秒的延时程序就可以如下表示:DelayMS(1000)4.4 主程序说明在PC机上学习C语言编程不同的是,对于所有的嵌入式系统来说,其控制软件都必须是一个无限循环,换句话说,嵌入式软件的main()函数都不能够返回,通过一个wh

19、ile(1)使得这段程序不停地进入循环。如果一个嵌入式软件的程序不是无限循环,当所有的程序代码执行完后,单片机将以不可预知的方式运行,俗称单片机“跑飞”,这在实际的工业控制等应用中是十分危险的现象,要极力避免单片机出现“跑飞”的现象。5电路制作及调试过程(1)使用PROTEL DXP 画原理图,做PCB图,步线。(2)印板,腐蚀,打孔。(3)焊接元器件。(4)会运用KIEL 设计单片程序。(5)运用Proteus 7.0 ISIS 进行电路仿真并调试程序(6)烧写正确的单片机程序。6课程设计的体会本次课设就是充分利用了MSC-51系列单片机来设计交通灯控制器,实现了红绿灯循环点亮,倒计时剩3秒

20、时黄灯闪烁警示的功能(交通灯信号通过PA口输出)。此次设计在软件编写程序方面花费时间太多我们上网找资料,上图书馆,尽可能多的了解交通灯控制和单片机程序编写的相关知识。通过这次课程设计,掌握了Keil集成开发环境的使用方法,了解单片机芯片的烧写方法与步骤,进一步加深了对单片机常用指令的理解与运用。能够较熟练的运用 protel DXP绘制电路原理图及PCB图,对PCB板的一般制作过程有了一定的了解。同时在老师的悉心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域对我今后进一步学习计算机方面的知识有极大的帮助。这次设计的不足之处是交通灯的控制不够智能,延时时间也不够精确,这

21、是由于使用软件延时不及定时器延时稳定。交通灯与流水灯的不同之处在于延时的准确性,而一般准确的延时通过定时器中断产生或汇编语言编写。由于个人能力不足,未能完善交通灯的倒计时显示。这使我认识到理论知识的重要性,同时也感受到理论与实践之间的差距,使我们对单片机系统的应用有了更加深刻的认识。总之,通过这次课程设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是C语言)的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。参考文献1 林华兵编著.MCS-51单片机原理及应用.武汉:华中科

22、技大学出版社,2003.62 先锋工作室编著.单片机程序设计实例.清华大学出版社,2003.13 王卫东等编著.高频电子电路.电子工业出版社,2004.84 黄维通 马里妮编著.C语言程序设计.清华大学出版社,2003.55 张洪润、蓝清华编著.单片机应用技术教程.清华大学出版社,1997.116 求是科技、勒达编著.单片机应用系统开发实例导航.人民邮电出版社,2003.107 南建辉、熊鸣、王军茹编著.MCS-51单片机原理及应用实例.清华大学出版社,2004.38王忠飞、胥芳编著.MCS-51系列单片机系统原理及嵌入式系统应用.西安电子科技大学,20079 白驹珩、雷晓平编著.单片计算机及

23、其应用.成都:电子科技大学出版社,1997.1210 徐爱钧 彭秀华编著.单片机高级C51应用程序设计.电子工业出版社,1998.611 刘刚, 彭荣群编著.rotel DXP 2004 SP2原理图与PCB设计北京:电子工业出版社,200712 袁涛编著.单片机C高级语言程序设计及其应用.清华大学出版社,2001.1013 张天凡等. 51单片机C语言开发详解. 北京:电子工业出版社,2008谢 辞本论文设计在陈紫强副教授的悉心指导和严格要求下业已完成,从课题选择到具体的写作过程,无不凝聚着陈紫强老师的心血和汗水,在我的课程设计论文写作期间,陈紫强老师为我提供了种种专业知识上的指导和一些富于

24、创造性的建议,没有这样的帮助和关怀,我不会这么顺利的完成课程设计论文。在此向陈紫强老师表示深深的感谢和崇高的敬意。 在此,我还要借此机会向在这两年多中给予了我帮助和指导的所有老师表示由衷的谢意,感谢他们两年多来的辛勤栽培。不积跬步何以至千里,各位任课老师认真负责,在他们的悉心帮助和支持下,我能够很好的掌握和运用专业知识,并在设计中得以体现,顺利完成课程设计论文。同时,在论文写作过程中,我还参考了有关的书籍和论文,在这里一并向有关的作者表示谢意。 我还要感谢同组的各位同学,在课程设计的这段时间里,你们给了我很多的启发,提出了很多宝贵的意见,对于你们帮助和支持,在此我表示深深地感谢。附 页程序源代

25、码 #include #define uchar unsigned char#define uint unsigned intsbit RED_A = P00;/*设定管脚连接的灯*/sbit YELLOW_A = P01;sbit GREEN_A = P02;sbit GREEN_B = P03;sbit YELLOW_B = P04;sbit RED_B = P05;uchar Flash_Count = 0, Operation_Type=1;/*Flash_Count表示黄灯状态改变次数,Operation_Type表示工作状态*/void DelayMS(uint x) /*延时子程

26、序*/ uchar i; while (x-) for (i=0;i120;i+);void Traffic_Light() switch (Operation_Type) case 1: /*状态1:东西道 绿灯亮 南北道 红灯亮*/ RED_A=1;YELLOW_A=1;GREEN_A=0; RED_B=0;YELLOW_B=1;GREEN_B=1; DelayMS(10000); /*调用延时子程序*/ Operation_Type=2; /*状态转到2*/ break; case 2: /*状态2:东西道 黄灯闪 南北道 红灯亮*/ DelayMS(3000); YELLOW_A=!Y

27、ELLOW_A;GREEN_A=1; if(+Flash_Count!=10) return; /*黄灯状态转换10次,即闪烁5下*/ Flash_Count=0; Operation_Type=3; /*转到状态3*/ break; case 3: /*状态3:东西道 红灯亮 南北道 绿灯亮*/ RED_A=0;YELLOW_A=1;GREEN_A=1; RED_B=1;YELLOW_B=1;GREEN_B=0; DelayMS(10000); Operation_Type=4; /*转到状态4*/ break; case 4: DelayMS(300); /*状态4:东西道 红灯亮 南北道 黄灯闪*/ YELLOW_B=!YELLOW_B;GREEN_B=1; if(+Flash_Count!=10) return; Flash_Count=0; Operation_Type=1; /*又转到状态1,如此循环*/ break; void main() while(1) Traffic_Light();

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2