机电信息工程学学院毕业设计(论文)中期报告学生姓名指导教师职称专业班级毕业设计(论文)题目通用交通灯控制系统设计题目来源教师科研课题是否校外题目否公司名称(地址)无校外指导教师姓名(职称)无毕业设计(论文)进展情况,遇到哪些困难,如何解决(加A4纸打印的附页,字数在2000字以上)指导教师意见签字年月日系(教研室)主任意见签字年月日毕业(设计)论文指导委员会意见签字年月日大连民族学院教务处制一、进度情况说明:已到各个交通要道实地观察,了解了控制的运行逻辑,对论文做了总体规划,查阅了有关知识,解决部分关键技术,已完成电路程序图、部分纸介论文书写工作。二、存在的主要问题及解决方法:1、按键抖动。2、各运行逻辑时间的准确性。3、逻辑转换的正确性。4、各运行状态的时间分配。解决办法:(1)分为四个路口,从路口1开始逆时针排列,路口1直行与路口3右转、路口4右转还有路口一的人行道信号灯一致,亮灯30S,黄灯亮5S,其他路口亮灯情况以此类推。(2)黄灯闪烁5秒,警示车辆和行人红、绿灯的状态即将切换。(4)当紧急车辆到来时,通过按键可实现所有方向交通灯都显示红灯,让紧急车辆优先通行。(5)这样时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通。(6)关于按键抖动可以有两种处理方法,一种是硬件消抖,二是软件消抖,选用软件消抖较为方便,具体处理措施是:在读到单片机相对应的管脚有按键按下时,进行延时处理,然后再读按键,以确认确实有按键按下。硬件消抖,可在电路中加电容。(7)认真进行逻辑分析和仿真,画流程图,分析各个状态的运行过程,确保逻辑时间的准确性逻辑转换的正确性及可行性。三、阶段性成果:1、深入地了解交通控制系统的运行逻辑。(1)十字路口的交通灯示意图如图1。1、2、3、4分别表示四个流向的车道,字母A、B、C、P表示各个路口主车道的左行车道、直行车道、右行车道和人行道。字母a、b、c、p表示左转弯、直行、右转弯以及人行道的交通信号灯。图1十字路口指示灯示意图交通信号灯亮灯过程:①路口1直行时指示灯:3a3b2p绿3c红+4a4b4c3p红+1c绿1a1b4p红+2c绿2a2b1p红②路口2直行时指示灯:4a4b3p绿4c红+1a1b1c4p红+2c绿2a2b1p红+3c绿3a3b2p红③路口3直行时指示灯:1a1b4p绿1c红+2a2b2c1p红+3c绿3a3b2p红+4c绿4a4b3p红④路口4直行时指示灯:2a2b1p绿2c红+3c3a3b2p红+4c绿4a4b3p红+1c绿1a1b4p红。综合以上分析,得到分析表1,其中S表示直行,R表示右转弯,L表示左转弯,P表示人行,1代表红灯,0代表绿灯,表1状态分析表路口1234状态SLRPSLRPSLRPSLRP路口1直行1100000100100010路口2直行0010110000010010路口3直行0010001011000001路口4直行0001001000101100由表可知,路口1的直行和左转与路口2的人行道的交通信号灯的亮灯顺序一致,路口2的直行和左转与路口3的人行道的交通信号灯的亮灯顺序一致,路口3的直行和左转与路口4的人行道的交通信号灯的亮灯顺序一致,因此,只要控制直行和右转弯即可控制直行、左转弯、右转弯和人行道的状况。则可简化如表2所示,表2简化表路口路口1路口2路口3路口4状态红绿红绿红绿红绿路口1直行直行01101010右转10100101路口2直行直行10011010右转01101001路口3直行直行10100110右转01011010路口4直行直行10101001右转10010110由上表可进一步简化为四种状态:只研究红灯状态,得到最终分析表,如表3,表3最终分析表路口1直行红灯状态01111010B路口2直行红灯状态10011110B路口3直行红灯状态10100111B路口4直行红灯状态11101001B(2)程序流程图2、系统地分析和规划了设计的步骤。(1)填写设计任务书。(2)进行总体设计,画出原理图。(3)用Protel软件画出PCB板并制板。(4)焊接器件和芯片。(5)编写并调试程序。3、查阅了需要用到单片机等有关元器件的有关资料,对这些元件的基本知识和使用有了初步的认识。(1)AT89C51单片机a.简介AT89C51是美国ATMEL公司推出的系列单片机,将多种功能的8位CPU与FPEROM(快闪可编程/擦除只读存储器)结合在一个芯片上,是一种低功耗、高性能的CMOS控制器,为很多嵌入式控制应用提供了非常灵活而又价格适宜的方案,其性能价格比远高于同类芯片。b.管脚功能AT89C51单片机为40引脚芯片如图2所示。开始中断入口设置主程序初始化中断初始化开中断路口1直通状态路口2直通状态路口3直通状态路口4直通状态关中断保护现场开中断中断服务关中断恢复现场开中断中断返回断点地址由堆栈弹入pc①I/O口线:P0、P1、P2、P3共四个八位P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读ˆ写操作。P0口也用以输出外部存储器的低8位地址。由于是分时输出,故应在外部加锁存器将此地址数据锁存,地址锁存信号用ALE。P1口是专门供用户使用的I/O口,是准双向口。P2口是从系统扩展时作高8位地址线用。不扩展外部存储器时,P口也可以作为用户I/O口线使用,P2口也是准双向口。P3口是双功能口,该口每一位均可独立地定义为第一I/O功能或第二I/O功能。作为第一功能使用时操作同P1口。图289C51引脚图②控制口线:PSEN(片外取控制)、ALE(地址锁存控制)、EA(片外储器选择)、RE2SET(复位控制);③电源及时钟:CCC、VSS;XTAL1,XTAL2引脚功能表(2)8255A8255A是Intel公司生产的可编程输入输出接口芯片,它具有3个8位的I/O口,具有三种工作方式,可通过程序改变其功能,因而使用灵活,通用性强,可作为单片机与多种外围设备连接时的中间接口电路。8255有三种基本工作方式,三种工作方式由工作方式控制字决定,方式控制字由CPU通过输入/输出指令来提供.三个端口中PC口被分为两个部分,上半部分随PA口称为A组,下半部分随PB口称为B组.其中PA口可工作与方式0、1和2,而PB口只能工作在方式0和1。8255共有40个引脚,采用双列直插式封装。其引脚图如图所示,各引脚功能如下:D0--D7:三态双向数据线,与单片机数据总线连接,用来传送数据。CS:片选信号线,低电平有效,表示芯片被选中。RD:读出信号线,低电平有效,控制数据的读出。WR:写入信号线,低电平有效,控制数据的写入。Vcc:+5V电源。PA0--PA7:A口输入/输出线。PB0--PB7:B口输入/输出线。PC0--PC7:C口输入/输出线。RESET:复位信号线。A1、A0:地址线,用来选择8255内部端口。GND:地线。4.单元电路模块设计(1)复位方式有多种,但本设计采用看门狗芯片X5045,接线图如图所示。在设定的定时时间内,89C51必须在/CS/WDI引脚产生一个由高到低的电平变化,以清内部定时器,即“喂狗”,否则X5045将产生一个复位信号。(2)晶振电路晶振电路原理图如:选取原则:传统做法,但能够实现所需,即最简单也最是实用。电容选取22uF,晶振为11.0592Hz。(3)I/O口扩展电路硬件原理设计图如图所示:用74LS373锁存,74LS138译码,扩展单片机的I/O口,由原理图得8255端口地址分配为:A口:0FFD8HB口:0FFD9HC口:0FFDAH(4)总体设计功能介绍核心器件:单片机系统采用Atmel公司的AT89C51芯片,晶振选用12MHz,电源电压采用5V。信号输出设计:由串行输入并行输出的8位移位寄存器74HC164与单片机的P3.0口相连,由74HC164将信号输送到红色绿色信号灯灯上。为此需要3个移位寄存器,分别控制红、绿、黄三色灯信号。仿真时使用红绿黄三种颜色的发光二极管作为信号灯。红灯表示停止,绿灯表示通行,黄灯表示等待。电平为1时,亮灯;电平为0时,灭灯。时间显示:采用LED七段2位显示,采用动态显示方式。四个方向显示的时间是一致的。紧急情况的处理则采用查询加中断的方式。通过查询P1.2和P1.3的状态来控制外部中断1,然后进去相应的处理程序。在哪一方向上有紧急情况,则能通过开关进行中断,使该方向上为绿灯放行,同时紧急情况报警灯亮。