《道路交通信号灯控制系统设计说明书.docx》由会员分享,可在线阅读,更多相关《道路交通信号灯控制系统设计说明书.docx(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、道路交通信号灯控制系统设计说明书 安徽科技学院数理与信息工程学院 单片机原理与应用设计课程设计 设计说明书 题目: 道路交通信号灯控制系统 专业: 电气工程及其自动化 班级: 12级1班 指导教师: 2022 年12 月 9 日 目录 一、概述 (3) 1、设计背景 (3) 2、设计要求 (3) 二、整体设计原理 (3) 1、设计原理 (3) 2、硬件电路分析 (4) 三、硬件电路 (5) 1、晶振电路 (5) 2、硬件电路 (5) 四、软件设计 (6) 1、主程序设计 (6) 2、程序代码分析 (7) 3、元件清单 (9) 五、测试 (10) 1、仿真调试 (10) 六、心得体会 (13)
2、七、附录 (14) 1、参考文献 (14) 2、完整程序代码 (14) 一、概述 1、设计背景 根据规定本学期13、14周为本专业课程设计,要求同班同学五人一组利用单片机相关知识和proteus仿真软件实现所选课题相关功能。 由于我们组在大二数、模电课程设计中做过交通灯相关课题,因此本次课程设计在组织好团队后,经讨论我们一致决定选择道路交通信号灯控制系统作为本组课程设计内容。 2、设计要求 (1)设计目的 随着单片机应用的日益广泛,在校学生加强对单片机动手实践能力的培养,已经是非常重要的一项锻炼。课程设计就是为加强实践机会、培养学生动手能力的一个重要环节,将理论知识与实际联系起来的一个关键机会
3、。 (2)设计任务 设计四组十字路口的红、绿、兰三色交通灯,并模拟交通灯的现场情形,控制交通灯的亮灭。 设计四组 LED 显示器,分别倒计时显示十字路口每个方向的红灯或绿灯的剩余时间。 可适当根据实际需要增加扩展功能。 利用 PROTEUS 软件画出电路图,根据以上功能编写软件,并在硬件电路上成功运行或仿真。 二、整体设计原理 1、设计原理 实际交通灯的变化规律实际交通灯分为东南西北四个方向以及左转右转,本次课程设计我们涉及的是简易交通灯,不包含左转右转,只包括东西直行和南北直行,原理较为简单,下图是十字楼口的模拟图。 东西通行,南北红灯亮。过一段时间后,转状态。东西绿灯灭,黄灯亮。再转状态;
4、东西红灯亮,南北绿灯亮通行。过一段时间后转状态;南北绿灯灭,黄灯亮。一段时间后,又循环至初始状态。 (2)交通信号灯的状态下表即为交通灯的状态表,高电平有效,1 表示灯亮,0 表示灯灭。总共包含初始化东西绿灯南北红灯,东西黄灯南北红灯,以及南北红绿东西红灯和南北黄灯东西红灯四种状态情况。首先初始状态东西绿灯亮,然后依次是东西黄灯亮,南北绿灯亮,南北亮,然后照此循环。 交通灯信号状态表 注:1 代表灯亮,0 代表灯灭 (3)单片机接口分析: 对于交通信号灯来说,应该有东西南北共四组灯,但由于同一道上的两组的信号灯的显示情况是相同的,所以只要用两组就行了,因此,采用单片机内部的 I/O 口上的p1
5、 口中的 6 个引脚即可来控制 6 个信号灯。 2、硬件电路分析 (1)P1 口:做为输出口,接发光二极管,其状态及对应的十六进制值如下图。 (2)发光二极管用来显示灯亮情况。 总共 12 个发光二极管,由于东西方向和南北方向的亮灯情况分别相同,故 12 个发光二极管只需要用到六个控制端就可以了,本系统中使用p1.0、p1.1、p1.2 控制东西方向;p1.3、p1.4、p1.5 控制南北方向。 发光二极管接口显示原理 三、硬件电路 1、晶振电路 晶振是晶体振荡的简称,实为单片机提供额定频率的器件,如果没有晶振,单片机将不能工作。 2、硬件电路 下图即为本次课程设计的硬件电路图,图中标明有东南
6、西北四个方向,表示四个路口,每个路口有三个灯,分别为绿灯、黄灯、红灯。每个路口还有两个数码显示管,用于显示还剩下的通行时间或者等待时间。中间部门为控制系统80C51 单片机,其中包括晶振和复位电路。 四、软件设计 1、主程序设计 下图为本系统的程序流程图,初始化东西亮绿灯,南北亮红灯,系统自动判断是否已达预定时间,然后是东西亮黄灯,接着南北亮绿灯,东西亮红灯,最后 南北亮黄灯,依次循环。 N N N N Y 主程序流程图 2、程序代码分析 通过编写程序,实现对发光二极管的控制,来模拟交通信号灯的管理。每延时一段时间,灯的显示情况都会按交通灯的显示规律进行状态转换。通过延时时间送显,可以在原有的
7、交通信号灯系统的基础上,增添其倒计时间的显示功能,实现 开始 初始化,东西绿南北红 延时并将时间送显 25秒到了吗? 东西黄南北红 将时间送显 5秒到了吗? 东西红南北绿 将时间送显 25秒到了吗? 东西红南北黄 将时间送显 5秒到了吗? 其功能的扩展。 主程序分析: ORG 0000H MAIN:MOV TMOD,#01H MOV TL0,#0B0H MOV TH0,#3CH SETB EA SETB ET0 SETB TR0 MOV P0,#00H MOV P2,#0FFH MOV P1,#0FFH 这一段代码是对定时器进行中断方式的定义工作于工作方式一,对P0、P1、P2 口进行初始化。
8、但是这里不是定义一秒,而是定义了 62.8ms.下面有另外的程序将定时时间延长。 LOOP0:MOV P1,#2EH ;东西通南北停 CLR P2.2 JNB P3.4,LOOP5 MOV R0,#25 MOV R1,#30 L1:MOV R2,#14H 对定时器时间进行延长,延长到接近于 1s。25 秒绿灯,30 秒红灯 LOOP1:LCALL DIS MOV TL0,#0B0H MOV TH0,#3CH CLR TF0 DJNZ R2,LOOP1 DEC R0 DEC R1 JNB P3.4,LOOP5 CJNE R0,#00H,L1 MOV P1,#2BH MOV R0,#05 红绿灯分
9、别对应的输出十六进制: 2EH 东西绿南北红 2BH 东西黄南北红 35H 东西红南北绿 1DH 东西红南北黄 1BH 东南西北全黄 LL2:LJMP 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,
10、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 这一段程序是控制数码管的显示,把二进制码转换成十进制,并用 DIV 命令分别得到数码管的高位和地位显示。 3、元件清单 名称件数参数选择理由 电阻8 10K 限流,以
11、免烧坏数 码管 发光二极管12 3色便于仿真显示 AT89C51 1 4K闪存低电压,高性能八 位微处理器 七段显示数码管8 常用数字显示,便 与仿真 开关 3 特殊情况使用 排阻 2 50 74HC373 2 锁存器 晶振时钟脉冲信号 五、测试 1、仿真调试 下图中有东西南北每组三个共十二盏模拟交通灯,由于 proteus 中自带晶振和复位电路,所以图中没有显示,东南西北每个方位对应有一组数码显示管,用于显示剩下的通行时间或等待时间。下图所示为 proteus 刚刚开始仿真的时候,执行程序东西绿灯亮 25 秒钟,南北红灯亮 30 秒钟。 东西绿灯亮,南北红灯亮 初始化之后,系统自动判断是否已经到了 25 秒,到了之后则转为东西方向黄灯亮,南北方向红灯禁行,下图为东西方向黄灯南北向红灯倒计时 4 秒时的仿真截图。 东西黄灯亮南北红灯亮 东西方向黄灯亮 5 秒之后,转为东西红灯亮南北绿灯亮的模式,下图所示为南北亮绿灯倒计时18 秒的仿真截图。