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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

用单片机控制交通灯设计.docx

1、用单片机控制交通灯设计基于单片机控制交通灯设计摘要:本文集中论述了如何使用AT89C51单片机来实现交通灯模拟控制系统,该系统能具体根据实际车流量的情况进行实时控制和管理东西和南北方向的交通灯实时切换,并通过单片机控制数码管显示其对应的准确时间。该系统采用的是点亮发光二极管模拟交通灯的实际情况。系统具有实用实时性强、操作简单、扩展性能较好价格便宜等特点。关键词:单片机;AT89C51;数码管;交通灯;模拟控制一 引言现今大小城市中红绿灯安装在各个街道口上,已成为疏导交通车辆最常见和最有效的也是不可缺少的工具, 这一方法和技术其实早在19世纪就已经出现了。1858年,在英国伦敦的主要街头就已经安

2、装了一种以燃煤气为光源的红、蓝两色的机械扳手式信号灯,用以指挥马车的顺利有序通行,这可能就是世界上最早的交通信号灯了。从那以后经过不断地发展,这种简单的交通信号灯方法技术逐渐演变成现在的通用的城市交通信号灯控制系统,红灯亮表示“停止”,绿灯亮表示“通行”,黄灯是警告信号。交通信号灯的出现,使交通得以顺畅的运行,它对于疏导交通流量、分辨交通方向、提高道路通行能力减少交通事故有不可代替的作用。如今有很多方法可以实现交通信号灯的控制,但传统的交通灯控制电路一般由数字电路构成,电路相当复杂而且体积大、成本高不利于普遍使用。现在随着单片机技术的发展和广泛应用可以采用单片机来实现控制交通灯的任务,不但可以

3、轻松解决上述问题,而且还具有了显示时间的功能,非常的方便和实用。本文就是介绍一种采用51系列单片AT89C51为中心器件来设计的交通灯控制系统,下面就设计过程及关键技术作一些具体介绍。 该文将主要为硬件和软件两部分来介绍如何用AT89C51实现该交通灯控制系统的。其中硬件系统设计包括:交通灯方案的设计和系统硬件的设计两部分。软件系统包含:延时时间的设计和时间显示的设计以及中断切换程序设计三部分。最后介绍测试方法和结果做出详细总结以及一些个人体会。二 方案比较、设计与论证1 电源提供方案:为使模块稳定工作,须有可靠电源。我们考虑了两种电源方案。方案一:采用独立的稳压电源。此方案的优点是稳定可靠,

4、且有各种成熟电路可选用;缺点是各模块都采用独立电源,会使系统复杂,且可能影响电路电平。 方案二:采用单片机控制模块提供电源。改方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。综上所述,我们选择第二种方案。2 显示界面方案: 该系统要求完成倒计时、状态灯等功能。基于上述原因,我们考虑了三种方案: 方案一:完全采用数码管显示。这种方案只显示有限的符号和数码字苻,无法胜任题目要求。 方案二:完全采用点阵式LED 显示。这种方案实现复杂,且须完成大量的软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形等。 方案三:采用数码管与点阵LED 相结合的方法因为设计既要求倒计时数字输出,又要求

5、有状态灯输出等,为方便观看并考虑到现实情况,用数码管与LED灯分别显示时间与提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。权衡利弊,第三种方案可互补一二方案的优缺,我们决定采用方案三以实现系统的显示功能。3 输入方案: 题目要求系统能手动设灯亮时间、紧急情况处理,我们讨论了两种方案: 方案一:采用8155扩展I/O 口及键盘,显示等。该方案的优点是:使用灵活可编程,并且有RAM,及计数器。若用该方案,可提供较多I/O 口,但操作起来稍显复杂。 方案二: 直接在IO口线上接上按键开关。因为设计时精简和优化了电路,所以剩余的口资源还比较多,我们使用四个按键,分别是K1、K2、K3

6、、K4。 由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O 口就可实现,且本身的计数器及RAM已经够用,故选择方案二。三 控制器硬件系统设计1.交通灯方案设计设A、B两干道交于一个十字路口,各干道有一组红( L1与L4为红灯) 、黄( L2与L5为黄灯) 、绿( L3与L6为绿灯) 三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为A、B两干道的公共停车时间。指示灯燃亮的方案设计见图一和表1。图一 交通灯设计方案表1指示灯控制方案及时间显示过程P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0

7、控制码状态说明时间显示空空空空空绿灯黄灯红灯0000010004HA线行B线止25秒0000001002HA线警B线止5秒0000000101HA线止B线行25秒0000001002HA线止B线警5秒2.系统硬件设计( 1) 选用设备AT89C51芯片一片, 74LS04一片,共阳极的七段数码管两个,红、黄、绿发光二极管各4个,开关键盘、连线若干。系统总框图如图二所示。图二 硬件系统总框图( 2) 交通灯控制线路图( 见图三)( 3) 系统工作原理1) 编程设置好交通灯初始时间,通过编程器写入89C51单片机系统。2) 由89C51单片机的定时器每秒钟通过P1口输送交通图三 交通灯控制线路图信

8、号信息,显示红、绿、黄灯的燃亮情况;由P0、P2口显示每个灯的燃亮时间。3) 通过89C51单片机的RESET位来控制系统是工作或设置初值,为0就对系统进行初始化,为1系统就开始工作;通过AT89C51单片机的P3.2,P3.3位来控制系统东西、南北方向切换,当P3.2为0切换东西方向为绿灯,P3.3为0切换南北方向为绿灯。四 控制器的软件设计系统软件的设置主要包含延迟时间设计、显示程序设计以及中断切换程序设计。其中延迟时间设计方法有两种:一种是采用软延时的方法;另一种是利用MCS- 51内部定时器产生溢出中断来确定1秒的时间。本系统采用后一种方法,其优势是延时时间精确,不易发生时间叠加导致故

9、障,从而引起死机。具体方案设计如下:1.延时时间的设计( 1) 定时器初值计算定时器工作时必须给计数器送计数器初值,这个值是送到TH和TL上的。它是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此可以把计数器记满为零所需的计数值设定为C和计数初值设定为Tc可得到如下计算公式:Tc=M- C式中, M为计数器总值,且在方式1时M为216,( 在方式0时M的值为213,在方式2和3为28)由此可知:当工作于方式1时,定时时间最长,所以将定时器工作于方式1,即M=216=65536;同时设定单片机的主脉冲频率fosc=12MHz,根据公式T=(M- Tc) T计数得出:当定时器工作于方式1

10、时:Tmax=2161s=65.536ms显然1秒钟已经超过了计数器的最大定时时间,所以只有采用定时器和软件相结合的办法才能解决问题。( 2) 软件计时1秒的方法在主程序中设定一个初值为20的软件计数器和使T0定时50毫秒。这样每当T0到50毫秒时CPU就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,CPU先使软件计数器减1,然后判断它是否为零,若为零表示1秒已到可以返回到输出时间显示程序。( 3) 定时器计时参考程序代码主程序定时器需定时50毫秒,故T0工作于方式1。 中断服务子程序初值: Tc=M- T/T计数=216 - 50ms/1us=15536 =3CB0HOR

11、G000BHORG1000H AJMPBRT0START: MOVTMOD, #01HBRT0: DJNZR0, NEXTMOVTH0, #3CH AJMPTIMEMOVTL0, #B0H DJNZ:MOVR0, #14HMOVIE, #82HMOVTH0,#3CHSETBTR0MOVTL0,#B0HMOV RO, #14H MOVIE,#82HLOOP: SJMP$ RETI2.时间显示的设计当信号灯按照给定的变化规律进行运行时,同时用2位数码管进行30s递减时间显示,分别从P0、P2口输出LED显示器的数值,达到显示时间的目的。当定时时间为1秒时,程序跳转到时间显示及信号灯显示子程序,它将

12、依次显示信号灯时间,同时一直显示信号灯的颜色,依次把所有的灯色的时间显示完后在重新给时间计数器赋初值,重新进入循环( 见图四) 。图四 数码管时间显示时间显示参考程序如下:DISP: DEC 2AHMOV A,2AHMOV B,#0AHDIV ABMOV DPTR,#TABLEMOVCA,A+DPTRMOV P0,AMOV A,BMOVCA,A+DPTRMOV P2,ARETTABLE: DB 0C0H 0F9H 0A4H 0B0H 99H 92H82H 0F8H 80H 90H3.中断切换程序的设计( 1) 切换程序流程图( 见图五)图五 切换程序流程( 2) 根据图5, 做出参考程序如下:

13、LAMP: JB P3.3, LAMP1 ; P3.3控制南北方向切换为绿灯MOV P1, #04HLAMP1:JB P3.2, LAMP2 ; P3.2控制东西方向切换为绿灯MOV P1, #01HLAMP2:JB P3.4, LPPLCALL CLOCKLPP: AJMPLAMP五 测试、数据及结果分析1状态灯显示测试 当电路连接完毕后,将写好的测试程序刷写到芯片内,K1 和K2分别给端口送高电平和低电平,通电即可检测。2数码管的测试 将串口的和电路板上的接口连接,将写好的测试程序刷写到芯片内,开电源即可测试。3整体电路测试 系统上电,刷写好程序即可开始测试,观测一个周期(共计S1S4四个

14、状态,默认140秒)灯的显示状态是否正常,同时观察倒计的计数是否正常。六 结论与体会本系统采用MSC- 51系列单片机89C51为中心器件来设计交通灯控制器, 实现了能根据实际车流量通过89C51芯片的P1口设置红、绿灯燃亮时间的功能, 显示时间直接通过P0、P2输出。系统设计简便、实用性强、操作简单、程序设计简便。系统不足之处不能控制车的左转、右转以及自动根据车流改变红绿灯时间等。这是由于系统设置、本身地理位置以及车流量情况所致, 如果需要, 亦可以设计扩充原系统来实现。由于使用的是单片机作核心控制元件,使得电路的可靠性比较高,功能也比较强大,而且可以随时的更新系统,进行不同状态的组合。但在

15、我们设计和调试的过程中,也发现了一些问题,譬如红灯和绿灯的切换还不够迅速,红绿灯效率还不是很高等等,这需要在实践中进一步完善。通过这次的课程设计,使我对单片机有了更深的认识,从理论和实践上都得到了很大的提高,所以这次设计的完成让我学到了很多东西。首先,丰富了自己的知识面,学到了以前没能学通的东西,具体了解了怎样去完成一个电路的设计:从方案图、流程图、电路图等入手。从课程设计中,学到了单片机AT89C51的内部结构及其工作原理,了解了时钟电路和控制电路的工作原理,巩固了汇编语言的使用能力,提高了自己动手的能力,学到了很多经验,并且提高了自己分析问题的能力和创新能力,得到了理论联系实际的机会,做出

16、了成果。使自己在硬件设计方面树立了信心,为以后从事这方面的工作打好了基础,这也是这次课程设计的最大收获。七 参考文献1 李广弟. 单片机基础 M . 北京航空航天大学出版社. 2001.2 何立民. 单片机应用技术选编 M . 北京航空航天大学出版社. 2004.3 何立民.单片机应用技术大全M.北京航空航天大学出版社. 19944 张毅刚. 单片机原理及接口技术M.哈尔滨:哈尔滨工业大学出版社.19905 谭浩强.单片机课程设计M. 清华大学出版社.19896 蒋汝根 钱丹浩.基于AT89C51单片机的交通灯模拟控制系统J.无锡商业职业技术学院学报. 2006.12 (6 卷6 期)7 张虔铭.用单片机控制交通灯M.成都电子科大.20028.杨恢先 黄辉先.单片机原理及应用M国防科技大学出版.2003.39.黄智伟 朱卫华.单片机与嵌入式系统应用M.南华大学.2005.310.Micrel Inc. QwikRadio TM Low Power UHF ReceiverA .2001.8

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1