单片机报告交通灯设计(含程序)

上传人:飞*** 文档编号:53311279 上传时间:2018-08-29 格式:PDF 页数:20 大小:829.91KB
返回 下载 相关 举报
单片机报告交通灯设计(含程序)_第1页
第1页 / 共20页
单片机报告交通灯设计(含程序)_第2页
第2页 / 共20页
单片机报告交通灯设计(含程序)_第3页
第3页 / 共20页
单片机报告交通灯设计(含程序)_第4页
第4页 / 共20页
单片机报告交通灯设计(含程序)_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《单片机报告交通灯设计(含程序)》由会员分享,可在线阅读,更多相关《单片机报告交通灯设计(含程序)(20页珍藏版)》请在金锄头文库上搜索。

1、1 单片机课程设计报告题目十字路口交通灯设计专业电气工程及其自动化班级电气 081 学号3080421031 学生姓名董波指导教师王水鱼2010 年秋季学期平时(10%)任务完成(30%)答辩(30%)课设报告(30%)总评成绩2 目录1 设计目的 -3 2 设计的主要内容和要求-3 3 整体设计方案 -3 4 硬件电路的设计-4 5 软件设计 -5 6 系统仿真 -7 7 使用说明 -10 8 设计总结 -11 参考文献 -11 附录 -12 3 基于单片机的交通灯设计1 设计目的(1)通过单片机课程设计,熟练掌握汇编语言的编程方法,将理论联系到实践中,提高动手能力和动脑能力。(2)初步了解

2、和掌握PROTEUS 软件的操作方法(3)完成控制系统的硬件设计,软件设计,仿真调试。2 设计的主要内容和要求模拟东西方向的十字路口交通信号控制情况。东西通行时间和南北通行时间均为20 秒,缓冲时间 3 秒,最后将时间通过单片机控制数码管显示出来,并且当紧急时刻,实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下, 那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,车辆继续进行。3 整体设计方案4 4 硬件电路设计: (1)红绿灯:在十字路口的两个道路上各自设计一组红绿灯,显示方式是,东西、南北两干道交于一个十字路口,各干道有一组红、绿、黄三色的指示灯,指挥车辆和行

3、人的通行。红灯亮禁止通行, 绿灯亮允许通行。 黄灯亮提示人们注意红、 绿灯的状态即将切换,且黄灯燃亮时间为东西, 南北两干道的公共停车时间。具体显示情况如下:25s 3s 2s 25s 3s 2s 东西通道红灯亮红灯亮红灯亮绿灯亮绿灯闪黄灯亮南北通道绿灯亮绿灯闪黄灯亮红灯亮红灯亮红灯亮相对应的电路图如下交 通 灯 显 示单片机倒计时显示强行通车图一5 (2)倒计时显示: 74164芯片是用于对数码管的驱动。利用两个74LS164芯片,其 1、2 管脚至单片机 RXD 管脚 8 管脚至单片机 TXD管脚。然后其他管脚依次接至数码管个管脚。对于数码管其3、8 管脚经过三个串联的二极管接地。其电路图

4、如下6 (3) 急通车电路为了实现此功能,利用单片机中断达到目的。利用一个手动按钮开关接至单片机外部中断0,同时在软件设计时将其设为最高优先级。 当有按键按下, 四方全为红灯, 同时将终端位置的 PSW 、ACC 进栈保护。当再按下按钮,将PSW 、ACC 出栈,回到原来的位置继续执行,电路图如下图7 5 软件设计流程图如下8 红绿灯显示:当 P1端口输出高电平,即P1各端口 =1时,根据发光二极管的单向导电性可知,这是发光二极管熄灭;当P1个端口输出低电平,即 P1各端口=0时,发光二极管亮。我们可以使用SETB指令使 P1各端口输出高电平,使用 CLR指令时 P各端口输出低电平。至于循环需

5、要软件控制,程序见附录。倒计时显示:此处采用LED静态显示方式,当显示器显示某个字符时,相应的段恒定的导通或截止, 直到显示另一个字符为止。 89C51的串行口 RXD 和 TXD为一个全双工串行通信口, 但工作在方式 0 下可作同步移位寄存器, 其数据由 RXD 端串行输出或输入; 而同步移位时钟由 TXD端串行输出, 在同步时钟的作用下, 实现由串行到并行的数据通信。在不需要使用串行通信的场合,利用串行口加外围芯片74LS164就可构成一个或多个并行输入输出口,用于串并转换或显示器 LED驱动。急通车控制:将一按钮接到单片机外部中断0 端口。另一端接地,通过在程序里设置外部中断0 为最高优

6、先级。当检测到有按钮按下时,产生中断,停止刚才的程序,转向中断执行。在此过程必须利用PUSH 、POP 指令保护现场,这样当情况解除可以回到原来的地方继续执行。6 系统仿真在 PROTEUS 的 ISIS 7.7SP2 软件环境下画出电路原理图,接下来就是将设计的程序在KEIL C51 U VISION2开发集成环境上编译成机器语言,进入 PROTEUS 的 ISIS, 鼠标左键点击菜单“ DEBUG”, 选中 USE 9 ROMOTE DEBUGER MONITOR”, 便可实现 KEILC与 PROTEUS 连接调试。首先在 PROTEUS 中双击单片机 AT89C51 ,将 KEILC下

7、编程生成的.HEX文件导入到 AT89C51中,可在 PROTEUS 中单击全速仿真运行按钮,进行现象的查看, 能清楚观察到芯片上每一个引脚的点平变化,红色代表高电平, 蓝色代表低电平; 如果现象不正确, 则在 KEILC中单步调试程序,在 PROTEUS 观察现象,哪一步不正确则对该段的程序进行修改,调试知道仿真完全成功为止。如图示,最左侧的红绿灯为东西方向的控制信号,上下为南北方向的控制信号,按钮按下,则为紧急的通行。 右边是数码管, 显示倒计时。10 如图,刚开始是东西方向绿灯通行,而南北方向则红灯禁行,此时是东西方向的红灯禁行,南北方向则是绿灯通行。11 此时为按下按钮后,紧急通行时的

8、电路显示情况。7 使用说明这个单片机控制交通灯是根据十字路口的情况而设定的,可以很好的调节道路状况。 最大的优点是在紧急情况时按下按钮,可以紧急通行,即只有如救护车等可以通行, 其他车则因为红灯停下来,这就是紧急通行的优点。12 8 设计总结在本次单片机课程设计中, 我组的题目是 单片机控制交通灯 。这是一项考察综合能力的实验,内容多而繁杂是其的特点, 并且实验限定的时间是一周, 其实只有四天而已, 时间也很紧张。 所以要想把实验做好,必须特别用心。 于是我们从第一天起的懵懂到后边逐步的解决问题从而比较系统的了解了实验的原理与过程做了十分充分的准备。本次课程设计在考察单片机原理的同时,还使我们

9、基本了解了仿真软件 PROTEUS 的应用,通过学习,发现了仿真所带来的种种优点,这些正是体现了综合的考察。在为期一星期的设计中, 不仅使我们更深刻的理解了单片机汇编语言的过程和方法,也是我们更进一步的理解了程序的功能,同时提高了我们理论与实践相结合的能力,同学们之间互相合作,积极查阅相关书籍,遇到问题大家一起讨论,难以解决的请教老师,顺利的完成了实验的要求,由此也提升了同学之间相互协作的能力, 使同学们各方面能力得到很大的提高,同时在试验中所犯的错误中吸取了教训, 以避免在以后的学习生活中犯同样的错误。最后也要感谢老师的耐心指导和同学之间的相互协作,使本次课程设计顺利完成。参考文献1 叶挺秀

10、 . 应用电子学 M. 杭州:浙江大学出版社,1994 2 朱承高 . 电工及电子技术手册 M. 北京:高等教育出版社,1990 3 阎石. 数字电子技术基础 (第三版) M. 北京:高等教育出版社,13 1989 4 周润景 .PEOTEUS 在 MCS-51东西路口计时寄存器SECOND2 EQU 31H ;南北路口计时寄存器DBUF EQU 40H ;显示码缓冲 1 TEMP EQU 44H ;显示码缓冲 2 LED_G1 BIT P1.0 ;东西路口绿灯LED_Y1 BIT P1.1 ;东西路口黄灯LED_R1 BIT P1.2 ;东西路口红灯LED_G2 BIT P1.5 ;南北路口

11、绿灯LED_Y2 BIT P1.6 ;南北路口黄灯LED_R2 BIT P1.7 ;南北路口红灯ORG 0000H LJMP START ORG 0003H LJMP INTO0 ORG 0100H START:MOV TMOD,#01H ;置 T0工作方式 1 MOV TH0,#3CH MOV TL0,#0B0H CLR TF0 ;定时器 0 溢出标志清 0 SETB TR0 ; 启动 T0 SETB EX0 ;允许外部中断 0 中断SETB PX0 ;设置外中断 0 为高优先级14 SETB EA ;cpu开放中断LOOP: MOV R2,#20 ;置 1s计数初值MOV R3,#20 ;

12、 红灯亮 20S MOV SECOND1,#25 ;东西路口计时显示初值25s MOV SECOND2,#25 ; 南北路口计时显示初值25s LCALL DISPLAY LCALL STATE1 ; 调用状态 1 WAIT1:JNB TF0,WAIT1 ;查询 50ms到否CLR TF0 MOV TH0,#3CH ;恢复 T0定时初值 50ms MOV TL0,#0B0H DJNZ R2,WAIT1 ;判断 1s到否?未到继续状态1 MOV R2,#20 ; 置 50ms计数初值DEC SECOND1 ;东西路口显示时间减1 DEC SECOND2 ;南北路口显示时间减1 LCALL DIS

13、PLAY DJNZ R3,WAIT1 ;状态 1 维持 20s MOV R2,#5 ;置 50ms计数初值MOV R3,#3 ;绿灯闪烁 3s MOV R4,#4 ;闪烁间隔 200ms MOV SECOND1,#5 ;东西路口计时显示初值5s MOV SECOND2,#5 ;南北路口计时显示初值5s LCALL DISPLAY WAIT2:LCALL STATE2 ;调用状态 2 JNB TF0,WAIT2 ; 查询 50ms到否CLR TF0 MOV TH0,#3CH ;恢复 T0定时初值 50ms MOV TL0,#0B0H DJNZ R4,WAIT2 ;判断 200ms到否?未到继续状

14、态2 15 CPL LED_G1 ;东西绿灯闪烁MOV R4,#4 ;闪烁 200ms DJNZ R2,WAIT2 ;判断 1s到否?未到继续状态2 MOV R2,#5 ;置 50ma 计数初值DEC SECOND1 ;东西路口显示时间减1 DEC SECOND2 ;南北路口显示时间减1 LCALL DISPLAY DJNZ R3,WAIT2 ;状态 2 维持 3s MOV R2,#20 ;置 50ms计数初值MOV R3,#2 ;黄灯闪烁 2s MOV SECOND1,#2 ;东西路口计时显示初值2s MOV SECOND2,#2 ; 南北路口计时显示初值2s LCALL DISPLAY WAIT3:LCALL STATE3 ;调用状态 3 JNB TF0,WAIT3 ; 查询 50ms到否CLR TF0 MOV TH0,#3CH ; 恢复 T0定时初值 100ms MOV TL0,#0B0H DJNZ R2,WAIT3 ;判断 1s到否?未到继续状态3 MOV R2,#20 ;置 1S计数初值DEC SECOND1 ; 东西路口显示时间减

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号