交通灯课设单片机proteus软件课程设计.doc

上传人:文库蛋蛋多 文档编号:4147075 上传时间:2023-04-07 格式:DOC 页数:24 大小:1.65MB
返回 下载 相关 举报
交通灯课设单片机proteus软件课程设计.doc_第1页
第1页 / 共24页
交通灯课设单片机proteus软件课程设计.doc_第2页
第2页 / 共24页
交通灯课设单片机proteus软件课程设计.doc_第3页
第3页 / 共24页
交通灯课设单片机proteus软件课程设计.doc_第4页
第4页 / 共24页
交通灯课设单片机proteus软件课程设计.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《交通灯课设单片机proteus软件课程设计.doc》由会员分享,可在线阅读,更多相关《交通灯课设单片机proteus软件课程设计.doc(24页珍藏版)》请在三一办公上搜索。

1、课程设计课程名称: 单片机原理及应用 课 目: 交通信号灯设计学 院:专 业:姓 名: 班 级:学 号:指导教师:2013年 6 月 17日目 录一、第1章 概述 31、设计背景32、设计要求3二、整体设计原理41、设计原理 42、硬件电路分析5三、硬件电路61、晶振电路62、硬件电路6四、软件设计71、主程序设计72、程序代码分析83、元件清单11五、测试121、Proteus简介122、仿真调试13六、总结(心得体会)19七、附录201、参考文献 202、程序代码20一、概述1、设计背景在日常生活中,交通灯作为管理交通、调协车辆的一个便捷的手段,起着很大的作用。各种交通工具、行人都要根据交

2、通灯的变化来决定是否前行,通行的时间的规定协调了它们的步伐,极大的减少了由于交通混乱引起的各种事故的发生。因此,一个完善的交通系统中,交通灯是必不可少的设备,一个完善的交通灯程序会更有效的管理当前道路中出现的实际情况,使车辆、行人的行进变得更顺畅、更和谐。随着我国国民经济的快速发展,我国机动车辆发展迅速,而城镇道路建设由于历史等各种原因相对滞后,交通拥挤和堵塞现象时常出现。如何利用当今计算机和自动控制技术,有效地疏导交通,提高城镇交通路口的通行能力,减少交通事故是很值得研究的一个课题。目前,国内的交通灯一般设在十字路口,在醒目位置用红、绿、黄三种颜色的指示灯加上一个倒计时的显示器来控制行车。在

3、老师给出的几个课题中,我认为交通灯的课题更加贴近我们的生活,而且相对其他几个课题,这个交通灯主要运用的是中断程序,我相对来说比较熟悉,所以选择了这个交通灯的课题2、设计要求(1)设计目的 随着单片机应用的日益广泛,在校学生加强对单片机动手实践能力的培养,已经是非常重要的一项锻炼。课程设计就是为加强实践机会、培养学生动手能力的一个重要环节,将理论知识与实际联系起来的一个关键机会。(2) 设计任务设计四组十字路口的红、绿、兰三色交通灯,并模拟交通灯的现场情形,控制交通灯的亮灭。设计四组LED显示器,分别倒计时显示十字路口每个方向的红灯或绿灯的剩余时间。可适当根据实际需要增加扩展功能。利用PROTE

4、US软件画出电路图,根据以上功能编写软件,并在硬件电路上成功运行或仿真。二、 整体设计原理1、 设计原理 (1) 实际交通灯的变化规律实际交通灯分为东南西北四个方向以及左转右转,本次课程设计我们涉及的是简易交通灯,不包含左转右转,只包括东西直行和南北直行,原理较为简单,图1.1是十字楼口的模拟图。图2.1 十字路口东西通行,南北红灯亮。过一段时间后,转状态。东西绿灯灭,黄灯亮。再转状态;东西红灯亮,南北绿灯亮通行。过一段时间后转状态;南北绿灯灭,黄灯亮。一段时间后,又循环至初始状态。(2) 交通信号灯的状态 下表即为交通灯的状态表,高电平有效,1表示灯亮,0表示灯灭。总共包含初始化东西绿灯南北

5、红灯,东西黄灯南北红灯,以及南北红绿东西红灯和南北黄灯东西红灯四种状态情况。首先初始状态东西绿灯亮,然后依次是东西黄灯亮,南北绿灯亮,南北亮,然后照此循环。表2.2 交通灯信号状态表状态北西南东绿 黄 红绿 黄 红绿 黄 红绿 黄 红10 0 11 0 00 0 11 0 020 0 10 1 00 0 10 1 031 0 00 0 11 0 00 0 140 1 00 0 10 1 00 0 1注:1代表灯亮,0代表灯灭(3)单片机接口分析:对于交通信号灯来说,应该有东西南北共四组灯,但由于同一道上的两组的信号灯的显示情况是相同的,所以只要用两组就行了,因此,采用单片机内部的I/O口上的P

6、1口中的6个引脚即可来控制6个信号灯。2、 硬件电路分析(1) P1口:做为输出口,接发光二极管,其状态及对应的十六进制值如下图。(2) 发光二极管用来显示灯亮情况。 表2.1即是发光二极管显示接口及原理。总共12个发光二极管,由于东西方向和南北方向的亮灯情况分别相同,故12个发光二极管只需要用到六个控制端就可以了,本系统中使用p1.0、p1.1、p1.2控制东西方向;p1.3、p1.4、p1.5控制南北方向。表2.3 发光二极管接口显示原理 方向状态无南 北东 西十六进制值说 明P1.7 P1.6P1.5 P1.4 P1.3P1.2 P1.1 P1.01001011102EH东西绿南北红20

7、01010112BH东西黄南北红30011010135H东西红南北绿4000111011DH东西红南北黄500 0110111BH东南西北全黄三、硬件电路1、晶振电路晶振是晶体振荡的简称,实为单片机提供额定频率的器件,如果没有晶振,单片机将不能工作。2、硬件电路图3.1即为本次课程设计的硬件电路图,图中标明有东南西北四个方向,表示四个路口,每个路口有三个灯,分别为绿灯、黄灯、红灯。每个路口还有两个数码显示管,用于显示还剩下的通行时间或者等待时间。中间部门为控制系统80C51单片机,其中包括晶振和复位电路。图3.1 硬件电路图四、软件设计1、主程序设计图4.1 主程序流程图NY5秒到了吗?将时间

8、送显东西红南北黄25秒到了吗?YN将时间送显东西红南北绿NY5秒到了吗?将时间送显东西黄南北红YN25秒到了吗?延时并将时间送显初始化,东西绿南北红开 始图4.1为本系统的程序流程图,初始化东西亮绿灯,南北亮红灯,系统自动判断是否已达预定时间,然后是东西亮黄灯,接着南北亮绿灯,东西亮红灯,最后南北亮黄灯,依次循环。2、程序代码分析通过编写程序,实现对发光二极管的控制,来模拟交通信号灯的管理。每延时一段时间,灯的显示情况都会按交通灯的显示规律进行状态转换。通过延时时间送显,可以在原有的交通信号灯系统的基础上,增添其倒计时间的显示功能,实现其功能的扩展。主程序分析: ORG 0000H MAIN:

9、MOV TMOD,#01H ;工作方式1 MOV TL0,#0B0H ;设置定时器初始值为06B0H MOV TH0,#06H SETB EA ;对中断允许标志位置1 SETB ET0 SETB TR0 MOV P0,#00H ;初始化P0,P1,P2口,此处P0口为00H MOV P2,#0FFH MOV P1,#0FFH 这一段代码是对定时器进行中断方式的定义工作于工作方式一,对P0、P1、P2口进行初始化。但是这里不是定义一秒,而是定义了62.8ms.下面有另外的程序将定时时间延长。LOOP0:MOV P1,#2EH ; 东西通行南北禁止通行 CLR P2.2 JNB P3.4,LOOP

10、5 MOV R0,#25 ;25秒绿灯 MOV R1,#30 ;30秒红灯 L1: MOV R2,#14H 对定时器时间进行延长,延长到接近于1s。25秒绿灯,30秒红灯LOOP1:LCALL DIS MOV TL0,#0B0H MOV TH0,#06H CLR TF0 DJNZ R2,LOOP1 DEC R0 ; 减1循环操作 DEC R1 JNB P3.4,LOOP5 CJNE R0,#00H,L1 MOV P1,#2BH ; MOV R0,#05红绿灯分别对应的输出十六进制:2EH 东西绿南北红2BH 东西黄南北红35H 东西红南北绿1DH 东西红南北黄1BH 东南西北全黄 LL2:LJ

11、MP MAIN DIS:MOV DPTR,#TAB MOV A,R0 MOV B,#10 DIV AB ;得出数码管的十进制高位 MOVC A,A+DPTR SETB P2.1 MOV P0,#0FEH CLR P2.1 SETB P2.0 MOV P0,A LCALL D1MS CLR P2.0 SETB P2.1 MOV P0,#0FDH MOV A,B MOVC A,A+DPTR CLR P2.1 SETB P2.0 MOV P0,A LCALL D1MS MOV A,R1 MOV B,#10 DIV AB MOVC A,A+DPTR CLR P2.0 SETB P2.1 MOV P0,

12、#0FBH CLR P2.1 SETB P2.0 MOV P0,A LCALL D1MS CLR P2.0 SETB P2.1 MOV P0,#0F7H MOV A,B MOVC A,A+DPTR CLR P2.1 SETB P2.0 MOV P0,A LCALL D1MS JB TF0 ,L5 SJMP DIS这一段程序是控制数码管的显示,把二进制码转换成十进制,并用DIV命令分别得到数码管的高位和地位显示。3、 元件清单:名称件数 参数 选择理由电阻810K 限流,以免烧坏数码管 发光二极管123色便于仿真显示 AT89C5114K闪存低电压,高性能八位微处理器七段显示数码管8常用数字显示

13、,便于仿真 开关3特殊情况使用排阻25074HC3732锁存器,锁存信号晶振时钟脉冲信号五、 测试1、Proteus简介Proteus 是一款labcenter出品的电路分析实物仿真图,可仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片软件仿真系统。该软件具有以下特点:(1)全部满足我们提出的单片机仿真系统的标准,并在同类产品中具有明显的优势。(2)具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS一232动态仿真、1 C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。(3) 目前支持的单

14、片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。(4) 支持大量的存储器和外围芯片。总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真51、AVR、PIC。Proteus组合了高级原理布图、混合模式SPICE仿真,PBC设计以及自动布线来实现一个完整的电子设计系统,此系统收益于15年来的持续开发,被电子世界在其对PCB设计系统的比较文章中评为最好产品the route to pcb cad .。proteus产品系列也包含了我们革命性的VSM技术,用户可以对基于微控制器

15、的设计连同所有的周围电子器件一起仿真。用户甚至可以实时采用诸如LED/LCD、键盘、RS232终端等动态外设模型来对设计进行交互仿真。PROSPICE仿真器的一个扩展PROTEUS VSM:便于包括所有相关器件的基于微处理器的协同仿真。此外,还可以结合微控制器软件使用动态的键盘,开关,按钮。LED 甚至LCD显示CPU模型。2、 仿真调试图5.1中有东西南北每组三个共十二盏模拟交通灯,由于proteus中自带晶振和复位电路,所以图中没有显示,东南西北每个方位对应有一组数码显示管,用于显示剩下的通行时间或等待时间。下图5.1所示为proteus刚刚开始仿真的时候,执行程序东西绿灯亮25秒钟,南北

16、红灯亮30秒钟。图5.1 东西绿灯亮,南北红灯初始化之后,系统自动判断是否已经到了25秒,到了之后则转为东西方向黄灯亮,南北方向红灯禁行,图5.2为东西方向黄灯南北向红灯倒计时4秒时的仿真截图。图5.2 东西方向蓝灯仿真图东西方向蓝灯亮5秒之后,转为东西红灯亮南北绿灯亮的模式,图5.3所示为南北亮绿灯倒计时18秒的仿真截图。图5.3 东西向红灯,南北向绿灯系统自动判断绿灯是否已经闪烁了25秒,25秒后,自动转为东西方向红灯亮,南北方向蓝灯亮,图5.4为南北方向蓝灯亮倒计时第5秒时刻的仿真截图。图5.4 东西向红灯,南北向蓝灯本系统设置有夜间模式,当夜间模式按下时,系统所有方向均为蓝灯,直到开关

17、断开时为止,图5.5所示为蓝灯亮时的仿真截图。图5.5所示为蓝灯亮时的仿真截图 在刚画完仿真电路时,我们还遇到了一些错误,比如,红绿灯能正常显示,但是数码管的数字不能显示某几个数字,后来我们发现是用错了数电芯片,我们一开始选用的是74LS373,后来改用74HC373数码管就能正常工作了。原来是74HC373只能用5V电压,更适合也是用5V电压的51单片机。六、心得体会 我这次做单片机课程设计的感受是很深刻的,平时上课学习汇编语言,学习中断,学习定时器计数器,都只是片面的学习单片机的基础知识,太过于零散,没有把它们有机的结合在一起,而且平时老师要我们画的电路仿真图也大多是比较简单易懂的,这次电

18、路比较复杂,而且更加需要细心,不能有一个元器件选择错误。这次的交通灯设计主要是运用了串行口和中断以及定时器方面的知识。 这次课程设计的任务是通过单片机的I/O口来控制交通灯。主要完成两大项任务,第一就是硬件连接图;第二是编写相应的程序来实现硬件功能。看似简单,实际上需要过硬的知识作为基础,平时看看书考试那样的过程,是难以完成这样的任务的。因为我们水平有限,我们这组设计的电路程序比较简单,虽然有一百来条,但是主要是几个几乎相同的循环程序在里面,所以其实 难度并不是很大,几乎用的都是汇编语言中经常用的那几条汇编指令,而且电路只是设置了四组简单的发光二级管。其中,在做整个课程设计的过程中,因为两个同

19、方向的数码管不能正常显示4和1,我们在调试程序以及硬件电路上花了很大功夫,我们一开始以为是程序控制出了错误,后来调试很久都没有发现错误,于是我们怀疑是硬件电路出了错误,在更换了好几个芯片后,才发现应该要用74HC373代替74LS373. HC373是5V的通过这次的课程设计我们学到了很多以前从,课堂上不能得到的知识。而且在画硬件电路图时,一定要注意好你程序选择的是共阴数码管,那么你硬件电路图也应该选择共阴数码管,否则就出不来你想要的结果,而且排阻的阻值不要设置过大,否则会影响高电平的输入到数码管。连线时要注意有没有虚画的,就是两根线没有实际连在一起的,也要注意。在使用标号法标注相同的连线端时

20、一定要注意标注相应准确的标注,如果标注错误也会影响仿真结果。这次单片机课程设计让我把许多以前不知道的东西都变成了自己懂的东西,在不断借鉴的过程中进行着自己的创新。这次做课设,我有上网查阅很多资料,也翻阅许多书本查找相关知识,让我明白,在以后的学习中,应更注重知识的应用,更注重实质的掌握。通过这次单片机课程设计,我不仅加深了对单片机方面的知识的理解,而且在这个过程中体会到了团队合作的重要性,我深刻体会到了团队每一个人的团队精神,团结协作是我们本次课程设计成功的一项非常重要的保证。而这次课程设计也正好锻炼我们这一点,这也是非常宝贵的。当然这次课程设计,提高了知识的应用能力和和实践能力,同时提高了独

21、立思考独立完成任务的能力,当然同组之间,遇到了实在没办法解决的问题,也相互的咨询和讨论,加强了大家的合作精神和团结能力。这对以后的学习和工作都有重要意义。 七、附录1、参考文献1 姜志海.单片微型计算机原理及应用M.北京:电子工业出版社,20112 楼然苗.单片机课程设计指导M.北京:航空航天大学出版社,20073 何立民.单片机实验与实践教程M.北京:航空航天大学出版社,20044 周明德.微型计算机系统原理及应用M.北京:清华大学出版社,20025 何立民.单片机高级教程M.北京:北京航空航天大学出版社,19996 李维祥.单片机原理与应用M.天津:天津大学出版社,20017 李朝青.单片

22、机原理及接口技术M.北京:北京航空航天大学出版社,19992、程序代码主程序: ORG 0000H MAIN:MOV TMOD,#01H ;工作方式1 MOV TL0,#0B0H ;设置定时器初始值为06B0H MOV TH0,#06H SETB EA ;对中断允许标志位置1 SETB ET0 SETB TR0 MOV P0,#00H ;初始化P0,P1,P2口,此处P0口为00H MOV P2,#0FFH MOV P1,#0FFHLOOP0:MOV P1,#2EH ; 东西通行南北禁止通行 CLR P2.2 JNB P3.4,LOOP5 MOV R0,#25 ;25秒绿灯 MOV R1,#3

23、0 ;30秒红灯 L1: MOV R2,#14HLOOP1:LCALL DIS MOV TL0,#0B0H MOV TH0,#06H CLR TF0 DJNZ R2,LOOP1 DEC R0 ; 减1循环操作 DEC R1 JNB P3.4,LOOP5 CJNE R0,#00H,L1 MOV P1,#2BH ; 东西蓝灯南北红灯 MOV R0,#05 L2: MOV R2,#14HLOOP2:LCALL DIS MOV TL0,#0B0H MOV TH0,#06H CLR TF0 DJNZ R2,LOOP2 DEC R0 DEC R1 JNB P3.4,LOOP5 CJNE R0,#00H,L

24、2 MOV P1,#35H ; 东西禁止通行南北通行MOV P2,#0FFH CLR P2.5 MOV R0,#30 MOV R1,#25 L3: MOV R2,#14HLOOP3:LCALL DIS MOV TL0,#0B0H MOV TH0,#06H CLR TF0 DJNZ R2,LOOP3 DEC R0 DEC R1 JNB P3.4,LOOP5 CJNE R1,#00H,L3 MOV P1,#1DH ; 东西红灯南北蓝灯 MOV P2,#0FFH MOV R1,#05 L4: MOV R2,#14HLOOP4:LCALL DIS MOV TL0,#0B0H MOV TH0,#06H

25、CLR TF0 DJNZ R2,LOOP4 DEC R0 DEC R1 JNB P3.4,LOOP5 CJNE R1,#00H,L4 AJMP LL1 LL1:LJMP LOOP0LOOP5:LCALL DIS MOV TL0,#0B0H MOV TH0,#06H CLR TF0 MOV P1,#1BH ; 东南西北全蓝灯 MOV R0,#00H MOV R1,#00H SETB P2.2 SETB P2.5 JB P3.4,LL2 AJMP LOOP5 LL2:LJMP MAIN DIS:MOV DPTR,#TAB MOV A,R0 MOV B,#10 DIV AB ;得出数码管的十进制高位

26、 MOVC A,A+DPTR SETB P2.1 MOV P0,#0FEH CLR P2.1 SETB P2.0 MOV P0,A LCALL D1MS CLR P2.0 SETB P2.1 MOV P0,#0FDH MOV A,B MOVC A,A+DPTR CLR P2.1 SETB P2.0 MOV P0,A LCALL D1MS MOV A,R1 MOV B,#10 DIV AB MOVC A,A+DPTR CLR P2.0 SETB P2.1 MOV P0,#0FBH CLR P2.1 SETB P2.0 MOV P0,A LCALL D1MS CLR P2.0 SETB P2.1 MOV P0,#0F7H MOV A,B MOVC A,A+DPTR CLR P2.1 SETB P2.0 MOV P0,A LCALL D1MS JB TF0 ,L5 SJMP DIS L5: RETD1MS: MOV R4,#02H DL: MOV R3,#0FFH DL1: DJNZ R3,DL1 DJNZ R4,DL RETTAB: DB 3FH,06H,5BH,4FH,66H ;使用的是共阴数码管 DB 6DH,7DH,07H,7FH,6FH END

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号