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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

交通灯课程设计Word格式文档下载.docx

1、此方案总体分为三个模块:交通灯转换模块、时间显示模块和一秒时间控制模块。现分别叙述如下:交通灯转换模块:本次设计最初只要求设计东南两个方向的指示灯,如果要增加西北两个方向指示灯,不能只是进行简单的对称增加并同步运行,比方说不能东南两个方向同时允许左拐。所以在设计上我进行了六种状态的轮换,如下图所示:图1 交通灯轮换图时间显示模块:由于有四路指示灯,所以需要四个数码管来对等待时间进行显示,每个数码管都是十位数,可以选用7-seg-mpx2-ca,此数码管是共阳极的,是高电平点亮。一秒时间控制模块:此模块通过89c51内部的定时器/计数器来精确对一秒时间进行判断,然后判断红绿灯或者数码管是否切换。

2、除了上述三个模块外,另外还有人行道的红绿灯模块和基于中断的控制模块,红绿灯模块通过硬件电路实现,控制模块通过中断来实现。1.2 方案原理图及其说明图2方案原理图1) 正常运行时首先进入主程序,提取存储在寄存器里面的时间值,进行倒计时预置数,通过秒脉冲源给倒计数器发送秒脉冲,倒计时器开始倒计时,驱动时间显示器显示,并且交通灯也正常运行,当倒计时器计到0时,自动进入到下一个寄存器并提取时间值,同时控制和改变交通灯的显示如此往复循环。2) 紧急情况时当按下紧急开关时,倒计时器一直处于清零状态,车辆通行的交通灯四个方向的红灯以及人行道红灯同时亮起。并且在紧急情况过后拨回开关即能恢复正常时的最后状态。如

3、果路口灯出现不正确显示时,按一下初始化按钮,可以对系统进行初始化操作,所有状态全部复位。另外还有一个对路灯延时的操作,它可以对数码管显示进行加一,并对交通灯延时一秒。2设计总体框图图3 设计总体框图 3. 设计单元电路3.1 单片机芯片AT89C51在设计之中选取的是C51芯片,芯片包含有一个8位CPU;一个片内振荡器及时钟电路;4KB ROM程序存储器;128B RAM数据存储器;可寻址64KB外部数据存储器和64KB外部程序存储空间的控制电路;32条可编程的I/O线(4个8位并行I/O端口);两个16位的定时/计数器;一个可编程全双工串行口;5个中断源、两个优先级嵌套终端结构。芯片如下图:

4、图4 单片机芯片AT89C51AT89C51单片机为40引脚芯片如图23所示。图5 AT89C51引脚图I/O口线: P0、P1、P2、P3共四个八位P0口是三态双向口, 通称数据总线口, 因为只有该口能直接用于对外部存储器的读写操作。P0口也用以输出外部存储器的低8位地址。由于是分时输出, 故应在外部加锁存器将此地址数据锁存, 地址锁存信号用ALE。P1口是专门供用户使用的I/O口, 是准双向口。P2口是从系统扩展时作高8位地址线用。不扩展外部存储器时, P口也可P2口也是准双向口。P3口是双功能口, 该口的每一位均可独立地定义为第一I/O 功能或第二I/O功能。作为第一功能使用时操作同P1

5、口。P3口的第二功能如表21。控制口线: PSEN (片外取控制)、AL E( 地址锁存控制)、EA (片外储器选择)、RE2SET (复位控制) ;电源及时钟: CCC、VSS; XTAL 1, XTAL 2表1 引脚功能表第一功能标记第二功能P3.0RXD串行输入口P3.1TXD串行输出口P3.2NT0外部中断0输入P3.3NT1外部中断1输入P3.4T0定时/计数器0外部输入P3.5T1定时/计数器1外部输入P3.6WD外部数据存储器写选通P3.7RD外部数据存储器读选通3.2 数码管芯片7seg-mpx2-caLED数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,根据LED数码

6、管的驱动方式的不同,可以分为静态式和动态式两类。A、 静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O埠进行驱动,或者使用如BCD码二-十进位*器*进行驱动。B、 动态显示驱动:动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp 的同名端连在一起,另外为每个数码管的公共极COM增加位元选通控制电路,位元选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位元选通COM端电路的控制。这里选择的是由四个数码管7seg-mpx2-ca,7seg示七段数码管,mp

7、x2-表示是两位,ca是表示共阳极。其芯片如图所示图6 7seg-mpx2-ca 芯片图4 电路原理说明4.1 主程序框图图7 主程序框图4.2 程序说明4.2.1 初始化程序ORG 0000H LJMP START /跳转到初始化程序ORG 000BHLJMP DISP /显示中断程序ORG 001BHLJMP TIME /一秒控制中断程序ORG 0003HLJMP INX /紧急外部中断程序ORG 0013HLJMP INY /加一程序ORG 0030HSTART:MOV SP,#60H MOV P1,#0 MOV R3,#0 MOV TMOD,#11H MOV TH0,#0D8H MOV

8、 TL0,#0F0H MOV 40H,#3 /状态1等待时间 MOV 42H,#4 /状态2等待时间 MOV 44H,#5 /状态3等待时间 MOV 46H,#6 /状态4等待时间 MOV 48H,#7 /状态5等待时间 MOV 4AH,#8 /状态6等待时间 SETB EA SETB ET0 /开启定时器0 SETB ET1 /开启定时器1 SETB TR0 SETB TR1 SETB EX0 /开启外部中断0 CLR IT0 /设置为低电平中断 SETB EX1 /开启外部中断1 SETB IT1 /设置为下降沿中断4.2.2 交通灯点亮程序MAIN: MOV P1,#64H MOV P2

9、,#04H /点亮东南方向的红灯,西方向的绿灯,北方向的黄灯 MOV R2,40H /取出寄存器40H所存储的时间,给R2LOOP1:MOV A,42H ADD A,R2 MOV 30H,A /西方向绿灯的等待时间为40H+42H MOV 32H,R2 /北方向黄灯的等待时间为40H MOV 34H,R2 /东方向红灯的等待时间为40H MOV 36H,30H /南方向红灯的等待时间为40H+42HNEXT1:CJNE R2,#0,LOOP1 /计时到0时跳转到下一个状态MOV P1,#4CH MOV P2,#08H /点亮东西方向的绿灯,南北方向的红灯 MOV R2,42H /取出寄存器42

10、H所存储的时间,给R2LOOP2:MOV 30H,R2 /西方向绿灯的等待时间为42H MOV A,44H MOV 32H,A /北方向红灯的等待时间为42H+44H MOV 34H,32H /东方向绿灯的等待时间为42H+44H MOV 36H,R2 /南方向红灯的等待时间为42HNEXT2:CJNE R2,#0,LOOP2 /计时到0时跳转到下一个状态4.2.3 显示中断程序DISP: CLR EA CLR TR0 PUSH ACC PUSH PSW /入栈保护数据 ACALL HEXBCD /显示时间的个位和十位分开,分别存储 MOV R0,#50H /显示西方向数码管的十位 MOV R

11、1,#0 /选中西方向的数码管十位显示LD: MOV DPTR,#TAB1 MOV A,R1 MOVC A,A+DPTR MOV P3,A /输出使其选中要显示的数码管 MOV DPTR,#TAB MOV A,R0 MOVC A,A+DPTR MOV P0,A /显示时间 ACALL DELAY INC R0 /选中下一个存储时间的寄存器 INC R1 /选中下一个要显示的数码管 CJNE A,#8,LD /数码管的8位选完后退出中断EXIT1:MOV TH0,#0D8H POP PSW POP ACC /出栈 SETB TR0 /开启定时器0中断 SETB EA /开启总中断 RETI4.2

12、.4 一秒控制中断程序TIME: CLR TR1 PUSH PSW /入栈保护 INC R3 CJNE R3,#20,EXIT0 /判断是否等待1s时间 DEC R2 /如果等待了一秒,即对R2进行减一EXIT0:MOV TH1,#03CH MOV TL1,#0B0H /设置中断时间为50ms SETB TR1 /开启定时器1中断 SETB EA /开启总中断4.2.5 紧急中断程序INX: CLR EA /关闭总中断 CLR TR0 /关闭定时器1中断 CLR TR1 /关闭定时器1中断 JB P3.2,KAI /如果p3.2为低电平,执行红灯点亮 MOV P0,#00H MOV P1,#2

13、4H MOV P2,#09H JNB P3.2,$KAI: SETB TR0 /开启定时器0中断4.2.6 等待时间加一中断程序INY: INC R2 /对R2加一RETI5 设计心得在这学期的课程设计中,我通过查找大量资料,以及不懈的努力,培养了独立思考的能力。更重要的是,我学会了遇到问题时要调整好心态解决问题,而这是日后最实用的,真正对自己有意义的收获。这次单片机课程设计,使我掌握了如何独立编写程序,编写程序的基本过程及其各阶段的基本任务,并了解了总流程框图的编写思路,对课本上的知识有了更深层次的理解。课本上的知识永远都是机械的,表面的,只有通过把书本上的知识在实际中实现,才能把原来以为很

14、深奥的东西变得更加容易理解。另外,在设计的过程中,我发现了自己存在的不足。比方说,对以前所学过的知识理解得不够深刻,掌握得不够牢固。但是通过查阅大量有关资料并咨询老师同学,不仅使我克服了障碍,而且使自己学到了不少新的知识,同样收获巨大。这次设计虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。6 参考文献1 李朝青.单片机原理及接口技术.北京航空

15、航天大学出版社,2006年2 何立民.单片机应用技术大全.北京航空航天大学出版社,1994年3 周润景. proteus入门实用教程.机械工业出版社,2007年4 李建忠.单片机原理及应用.西安电子科技大学出版社, 2002年5 潘新民.微型计算机控制技术.电子工业出版社, 2003年附录元器件清单表2 原件清单中文名称元件代号数量(个)单片机AT89C51U11数码管7SEG-MPX2-CA无4红色发光二极管LED-REDD1D4绿色发光二极管LED-GREEND5D8交通灯TRAFFIC LIGHTS电阻10WATT 0R22R1R1515与门74LS08U3AU3D非门74LS04U4AU4D排阻RESPACK-8RP138译码器74LS138U2单刀双掷开关SW-SPDT-MOMSW1按钮BUTTON2

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

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