您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于51单片机交通信号灯课程设计
《电子系统设计》课程设计报告题目:交通信号灯控制器姓名:院系:电力学院专业:学号:指导教师:完成时间:年月日设计题目设计要求设计过程成绩评定指导教师评语课程设计等级目录一、任务和目的二、总体设计三、硬件设计:原理图(接线图)及简要说明四、程序框图和清单五、实验结果和体会目的和要求本次课程设计的目的是设计一个交通信号灯控制器,使其拥有以下功能:1.在十字路口每个入口处设置一个红绿灯,并且有数码管显示通行时间。2.主干道通行的时候支路禁止通行,支路通行时主干道禁止通行。3.主干道通行时间为45S,支路通行时间为25S,中间有5S黄灯过渡。4.在支路设有传感器,当检测不到有支路有车时,主干道将一直通行。总体设计核心为AT89C51单片机,输出计时秒表采用单片机程序输出BCD码再由74LS47译码至共阳数码管上。红绿灯输出则使用74LS160计数器的前四位进行循环译码至红绿灯,并且使用单片机程序控制输出固定脉冲至计数器CLK端使计数器按红绿灯计时跳变输出。检测支路是否来汽车可由在马路内放置压力传感器,当有汽车停靠在白线内等待红灯时,传感器向单片机某端口输入低电平使其被检测到。硬件设计红绿灯电路首先分析十字路口红绿灯总用会有多少种可能,如下表:支红(SR)支黄(SY)支绿(SG)主红(MR)主黄(MY)主绿(MG)00100001011000101000110011010100我们不难从表中看出,十字路口的红绿灯状态最多分为4中。所以我们可以取74LS160计数器的低2位进行编码。然后将每一位对应相应的显示规则,电路原理图如下:灯状情况当74LS160输出为00时,4条译码规则中中只有NAND4这一条输出为高电平,此时对应状态为主干道绿灯亮,支路红灯亮。当74LS160输出为01时,对应主干道黄灯亮,支路红灯亮。当74LS160输出为10时,主干道红灯亮,支路绿灯亮。当74LS160输出为11时,主干道红灯亮,支路黄灯亮。当74LS160输出跳变至100时,Q2端向74LS160返回复位信号,重归00状态。因此,依照设计规则00状态与01状态期间间隔为45S,01与10为5S,10与11为25S,11与复位之间的间隔为5S。在实际电路中,红绿灯往往不是由几个单一的LED组成,而是由数量较多的LED组成灯珠。因此,单单靠单片机输出功率来带动红绿灯是不现实的。但是可以靠将以上4个译码输出加载在双极性晶体管作为驱动,而使用电力电子开关来控制电路。如下图:通过电力电子开关,可以使单片机电源与LED灯珠组电源隔离开,使得红绿灯能使用大功率的灯珠组。数码管电路数显电路采用由单片机P0.7~P0.4输出BCD码高位,P0.3~P0.0输出BCD码低位,再通过两个74LS47译码显示至共阳极的数码管上,电路原理图如下:数码管真值表。74LS47真值表。因此当P0口输出为45H~00H时,数码管会显示相印的数字。检测车辆电路由于支路只需要检测是否有车到来,而并不是需要反馈路上车辆的具体压力。因此无需在马路上设置特殊的压力传感器,只需通过车辆自身的压力使得单片机某段信号接地即可。以下为设想:当车辆在停靠线内侧等待红灯时,由于车辆施加的压力,使得马路内部小空间发生微小形变,使两个触点相接,并通过相应转换电路使得相当于单片机该端口接地,处于低电平状态。或者是使用类似表面贴片式的形式来检测是否有车到来。红绿灯总体电路图程序框图主程序:ORG00HAJMPSTARTORG030HSTART:MOVP0,#088HPRE:MOVR7,#0;数显表显示偏移量,偏移量为0时首显为45MOVR6,#40;偏移量40时首显为5MOVR5,#20;首显为25C1:MOVA,R7ACALLSEG45MOVP0,A;将数显表内显示数值送入P0口ACALLDELAY1ACALLDELAY1;调用延时子程序INCR7;显示一次偏移量+1CJNER7,#45,C1;是否显示45次MOVR7,#00H;重新填装偏移量JBP2.5,C1;检测支路是否有车到来,若无车到来则继续主干道绿灯CLRP2.4ACALLDELAY5SETBP2.4;向74LS160芯片输出一个CLK脉冲C2:MOVA,R6ACALLSEG45MOVP0,AACALLDELAY1ACALLDELAY1INCR6CJNER6,#45,C2MOVR6,#40CLRP2.4ACALLDELAY5SETBP2.4C3:MOVA,R5ACALLSEG45MOVP0,AACALLDELAY1ACALLDELAY1INCR5CJNER5,#45,C3MOVR5,#20HCLRP2.4ACALLDELAY5SETBP2.4C4:MOVA,R6ACALLSEG45MOVP0,AACALLDELAY1ACALLDELAY1INCR6CJNER6,#45,C4MOVR6,#40CLRP2.4ACALLDELAY5SETBP2.4AJMPC1DELAY5:NOP;脉冲延时NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPRETDELAY1:MOVR3,#250;500MS延时,调用两次即为1S延时D1:MOVR2,#250D2:NOPNOPNOPNOPNOPNOPDJNZR2,D2DJNZR3,D1RETSEG45:INCA;秒表数显库MOVCA,@A+PCRETDB045H,044H,043H,042HDB041H,040H,039H,038HDB037H,036H,035H,034HDB033H,032H,031H,030HDB029H,028H,027H,026HDB025H,024H,023H,022HDB021H,020H,019H,018HDB017H,016H,015H,014HDB013H,012H,011H,010HDB009H,008H,007H,006HDB005H,004H,003H,002HDB001H,000H;从45~0的2位BCD码END器件清单AT89C51单片机,74LS160计数器,74LS47译码器,7SEG共阳极数码管,74LS00与非门,74LS04非门,ZTX360双极性晶体管,电容,12MHz晶振。检测车辆是否到来电路在仿真过程中暂时用一个刀闸开关接地来进行模拟。仿真模拟在ProteusISIS环境中,该交通信号灯控制器能够完美的实现各路交通信号灯的指示,计时器也能正常工作。在刀闸开关开启时能模拟支路没有汽车到来的情况,当刀闸开关合上时,能也能模拟出支路有汽车的情况,和设计要求基本一致。课程设计体会经过这个课程设计,我真正体会到了学有所用而且也加强了自己对以前学习到知识的掌握,将单片机知识还有数字电路知识以及电力电子知识融合在一起,用来完成仿真实践。大大的提高了自己的动手能力和创新能力。同时也让我更加深刻的了解数字逻辑电路的重要性,真正体会到一种共同学习、共同进步的学习气氛,一种大讨论的学习氛围。这次设计对我来说感触最深的是,要做好一个设计,首先要了解每一个部分所涉及的知识点,掌握它的原理;然后将大的电路分成一个个模块进行设计仿真。当各模块设计仿真完成,并且能正常工作时,将其组装成一块成为一个整体电路,再稍加调试和修改便能基本完成所需要的任务。而且随着设计要求以及电路的复杂化,一个人单干效率往往不是很高。此时与同学合作,一同思考往往会取得更好的效果。而且整个设计我都参与其中,这令我的分析设计以及动手能力有了很大的提高,培养了我思考问题的全面性;让我明白,做学问要有一丝不苟的态度,遇到困难要有勇往直前的精神,做事情要有耐心和毅力,工作中要学会与人合作,认真听取他人意见,这样做事情才会顺手、顺心,举得事倍功半的效果。参考文献1.《单片微机原理及应用》第3版机械工业出版社2.《单片机原理、应用与PROTEUS仿真》电子工业出版社3.《数字电子技术基础》第五版高等教育出版社4.《电力电子技术》第5版机械工业出版社
本文标题:基于51单片机交通信号灯课程设计
链接地址:https://www.777doc.com/doc-6990054 .html