1、交通灯 51单片机课程设计南昌航空大学南昌航空大学课程设计课程名称: 微机原理与接口技术 班 级: 1 1 0 4 5 1 姓名: 吴 锦 明 学号: 11045109 指导教师评定: 签名: 2014年1月 摘 要 11. 引言 22. 总体设计方案 32.1. 设计思路 32.1.1.设计目的 32.1.2.设计任务和内容 32.1.3.方案比较、设计与论证 43. 电路模块 63.1.LED数码管显示模块 63.2.LED红黄绿灯显示模块 73.3.晶振电路 74. 小结 85. 参考文献 96. 附录 106.1. 附录1:程序清单 106.2. 附录2:电路设计总图 186.3 附录
2、3:实物图 23摘 要随着社会经济的发展,城市问题越来越引起人们的关注。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据检测、交通信号灯控制与交通疏通的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通灯的控制方式很多,本系统采用可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制器,实现本系统的各种功能。同时,本系统实用性强,操作简单。本设计系统由单片机I/O口扩展系统、交通灯状态显示系统
3、、LED数码显示系统、复位电路等几大部分组成。系统除基本的交通灯功能外,还具有倒计时等功能,较好的模拟实现了十字路口可能出现的状况。软件上采用C51编程,主要编写了主程序,LED指示灯,LED数码管显示程序等。经过整机调试,实现了对十字路口交通灯的模拟。关键字:AT89S52 交通灯 LED数码管 倒计时1. 引言当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的
4、议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能
5、把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。2. 总体设计方案2.1. 设计思路2.1.1. 设
6、计目的(1)加强对单片机和汇编语言的认识,充分掌握和理解设计各部分的工作原理、设计过程、选择芯片器件、模块化编程等多项知识。(2)用单片机模拟实现具体应用,使个人设计能够真正使用。(3)把理论知识与实践相结合,充分发挥个人能力,并在实践中锻炼。(4)提高利用已学知识分析和解决问题的能力。(5)提高实践动手能力。2.1.2. 设计任务和内容2.1.2.1. 设计任务单片机采用用AT89S52芯片,使用发光二极管(红,黄,绿)代表各个路口的交通灯,用7段数码管对转换时间进行倒时(东西路口20秒,南北路口30秒,黄灯时间3秒)。2.1.2.2. 设计内容(1)设计并绘制硬件电路图(2)制作PCB并焊
7、接好元器件(3)编写程序并将调试好的程序固化到单片机中2.1.3. 方案比较、设计与论证2.1.3.1. 电源提供方案 为使模块稳定工作,须有可靠电源,采用单片机控制模块提供电源。此方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。2.1.3.2. 复位方案复位方式有两种:按键复位与软件复位。由考虑到程序的简洁,避免冗长,本设计采用按键复位,在芯片的复位端口外接复位电路,通过按键对单片机输入一个高电平脉冲,达到复位的目的。2.1.3.3. 输入方案方案一:采用89S52扩展I/O 口及键盘,显示等。该方案的优点是:使用灵活可编程,并且有RAM,及计数器。若用该方案,可提供较多I/O 口,
8、但操作起来稍显复杂。方案二: 直接在IO口线上接上按键开关。因为设计时精简和优化了电路,所以剩余的口资源还比较多,我们使用2个按键,分别是K1、K2。由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O 口就可实现,且本身的计数器及RAM已经够用,故选择方案二2.1.3.4. 显示界面方案 该系统要求完成倒计时、状态灯等功能。基于上述原因,我们考虑了三种方案:方案一:完全采用数码管显示。这种方案只显示有限的符号和数码字符,无法胜任题目要求。方案二:完全采用点阵式LED 显示。这种方案实现复杂,且须完成大量的软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形等。方案三:采用数码管与
9、点阵LED (点阵式和8段式LED)相结合的方法因为设计既要求倒计时数字输出,又要求有状态灯输出等,为方便观看并考虑到现实情况,用数码管与LED灯分别显示时间与提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。权衡利弊,第三种方案可互补一二方案的优缺,我们决定采用方案三以实现系统的显示功能。设计方框图整个设计以AT89S52单片机为核心,由数码管显示,LED数码管显示,复位电路组成。3. 电路模块硬件模块入图:3.1 LED数码管显示模块3.2 LED红黄绿灯显示模块3.3 晶振(12M)电路4.小结通过这次课程设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼
10、。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。本次课程设计的过程是艰辛的,不过收获却是很大的。综合课程设计让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更进一步的理解和认识。在此,由于自身能力有限,在课程设计中碰到了很多的问题,我通过查阅相关书籍、资料以及和周围同学交流。由于使用的是单片机作为核心的控制元件,使得电路的可靠性比较高,功能也比较强大,而且可以随时的更新系统,进行不同状态的组合。但是在我们设计和调试的过程中,也发现了一些问题,譬如红灯和绿灯的切换还不够迅速,红绿灯规则不效率还不是很高等等
11、,这需要在实践中进一步完善。当然,通过这次课程设计,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我。5.参考文献1.郑初华.汇编语言、微机原理及接口技术(第三版)2李朝青.单片机原理及接口技术(第3版).2005年10月3.高洪志.MCS-51单片机原理及应用技术教程4.朱善军、孙新亚、吉永东.单片机接口技术与应用5.江太辉、石秀芳.MCS-51系列单片机原理与应用6.附录6.1 附录1:程序清单;=交通灯控制器 =JS EQU 30H ;东西路口计时寄存器DXR BIT P1.1 ;东西路口红灯DXY BIT P1.4 ;东西路口黄灯DXG BIT P1.7 ;东西路口绿灯
12、NBR BIT P3.1 ;南北路口红灯NBY BIT P3.4 ;南北路口黄灯NBG BIT P3.7 ;南北路口绿灯 ORG 0000H LJMP START ORG 0100HSTART: MOV TMOD,#01H ;置T0为工作方式1 MOV TH0,#3CH ;置T0定时初值50ms MOV TL0,#0B0H CLR TF0 SETB TR0 ;启动T0 ;*东西绿灯,南北红灯*LOOP: MOV R2,#20 ;置1s计数初值,50ms*20=1s MOV R3,#10 ;灯亮10s MOV JS,#13 ;东西路口计时显示初值13s LCALL DISPLAY SETB DX
13、R ;东西红灯灭-用于循环(WAIT4)后 SETB NBY ;南北黄灯灭-用于循环(WAIT4)后 CLR DXG ;东西路口绿灯亮 CLR NBR ;南北路口红灯亮WAIT1: JNB TF0,WAIT1 ;查询50ms到否/ CLR TF0 MOV TH0,#3CH ;恢复T0定时初值50ms MOV TL0,#0B0H DJNZ R2,WAIT1 ;1s MOV R2,#20 ;置50ms计数初值 DEC JS ;东西路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT1 ;状态1维持20s;*东西黄灯(闪),南北红灯(闪)* MOV R2,#5 ;置50ms计数初
14、值 5*4=20 MOV R3,#3 ;灯闪3s MOV R4,#4 ;闪一次200ms LCALL DISPLAY SETB DXG ;东西绿灯灭 CLR DXY ;东西路口黄灯闪WAIT2: JNB TF0,WAIT2 ;查询50ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值50ms MOV TL0,#0B0H DJNZ R4,WAIT2 ;200ms CPL DXY ;东西黄灯反相 CPL NBR ;南北红灯反相 MOV R4,#4 ;闪烁间隔200ms DJNZ R2,WAIT2 ;1s 标志 MOV R2,#5 ;置50ms计数初值 DEC JS ;东西路口显
15、示时间减1s LCALL DISPLAY DJNZ R3,WAIT2 ;状态2维持3s;*东西红灯,南北绿灯* MOV R2,#20 ;置50ms计数初值 MOV R3,#15 ;灯亮15s MOV JS,#18 ;东西路口计时显示初值18s LCALL DISPLAY SETB DXY ;东西黄灯灭 SETB NBR ;南北红灯灭WAIT3: CLR DXR ;东西红灯亮 CLR NBG ;南北绿灯亮 JNB TF0,WAIT3 ;查询50ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值100ms MOV TL0,#0B0H DJNZ R2,WAIT3 ;1s标记 MO
16、V R2,#20 ;置50ms计数初值 DEC JS ;东西路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT3 ;状态4维持20s;*东西红灯(闪),南北黄灯(闪)* MOV R2,#5 ;置50ms计数初值 MOV R3,#3 ;总共闪3s MOV R4,#4 ;灯闪一次20ms; LCALL DISPLAY SETB NBG ;南北绿灯灭 CLR NBY ;南北黄灯亮 CLR DXR ;东西红灯亮WAIT4: JNB TF0,WAIT4 ;查询50ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值50ms MOV TL0,#0B0H DJNZ R
17、4,WAIT4 ;200ms CPL NBY ;反相,南北黄灯闪 CPL DXR ;反相,东西红灯闪 MOV R4,#4 ;闪烁200ms DJNZ R2,WAIT4 ;1s MOV R2,#5 ;置50ms计数初值 DEC JS ;东西路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT4 ;状态5维持3s LJMP LOOP ;进入下一次循环 ;*数码显示*DISPLAY: MOV A,JS MOV B,#10 DIV AB MOV DPTR,#TAB MOVC A,A+DPTR MOV P0,A ;显示高位 MOV A,B MOVC A,A+DPTR MOV P2,A ;显示低位 RETTAB: DB 3FH,06H,5BH,4FH,66H ;0,1,2,3,4 DB 6DH,7DH,07H,7FH,6FH ;5, 6,7,8,9 END6.2 附录2:电路设计总图6.3 附录3:实物图
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1