欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于51单片机-简单交通灯控制.doc

    • 资源ID:527641       资源大小:1.06MB        全文页数:20页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于51单片机-简单交通灯控制.doc

    1、项目设计报告项目名称: 简易交通灯控制系统的设计 课 程 名 称: 单片机应用工程技术训练 学 院: 机电学院 专 业: 机械工程及自动化 学 号: 2010090301304/22/37 姓 名: 张梦迪 张博文 崔剑锋 成 绩: 2013年06月 04日1、设计任务与要求1.1.设计任务设计基于51单片机的交通灯控制系统。1.2. 设计要求基本功能: (1)设计程序能够控制红灯、黄灯和绿灯的切换。假设十字路口为东西南北走向,南北方向为主干道,东西方向为辅干道,主干道通行时间长于辅干道。要求按表1实现过程控制。 交通灯控制顺序要求如表1所示 表1. 交通灯控制顺序要求过程顺序红绿灯状态时 间

    2、1东西红灯,南北红灯10秒2南北绿灯,东西红灯40秒3南北绿灯闪烁3次,东西红灯闪烁间隔1秒4南北黄灯,东西红灯4秒5南北红灯,东西绿灯30秒6南北红灯,东西绿灯闪烁3次闪烁间隔1秒7南北红灯,东西黄灯4秒8转过程2,循环执行(2)应用两位动态显示的LED显示器倒计时显示通行时间,总时间应包含绿灯闪烁和黄灯亮的时间。(3)当绿灯闪烁和黄灯亮时,蜂鸣器发声提示。扩展功能:处理紧急状况,由按键引发外部中断进入紧急状况。在紧急状况下东西、南北均为红灯,15秒钟后恢复进入紧急状况之前的正常运行状态。1.3 材料清单本设计中所需的材料如表2所示:表2. 材料清单序号数量直流电机的控制规格11交通灯模拟模

    3、块 24独立式按键 2、整体方案设计 单片机设计交通灯控制系统,可用单片机直接控制信号灯的状态变化,基本上可以指挥交通的具体通行,当然,接入LED数码管就可以显示倒计时以提醒行使者,更具人性化。本系统在此基础上,加入了紧急情况处理与时间调整功能。单片机最小系统外围接口电路LED数码管显示红黄绿信号灯按键控制电路图1. 系统的总体框图3、硬件设计3.1 交通灯模组本系统中使用的所使用的交通灯系统为凌阳科技股份有限公司生产的交通灯模组V3.0。本系统为一套交通灯系统:包括一块驱动电路板(交通灯模组V3.0_驱动板)和四块LED板(交通灯模组V3.0_LED板)。1)LED板中每个方向提供四组交通L

    4、ED灯(包括左转、直行、右转、人行道四组),每组交通灯包括红、黄、绿三个灯,可以实现交通的通行控制; 2)LED板中每个方向提供两个数码管,可以实现100以内的倒计时。 本系统包含一块驱动板和四块LED板,驱动板框图如图 2.1:其中J1、J2、J3、J4为LED板的插接口,使用时可以直接把四块LED板插接在驱动板上;J5、J6、J7是单片机的接口,使用时可以直接用3根10pin排线与单片机连接;驱动电路模块用来驱动LED灯和数码管。驱动板结构框图如图2所示,交通灯模组电路图及单片机的接口电路如图3所示。 图2. 交通灯模组V3.0_驱动板结构框图3.2 按键设计本设计中要求用按键实现紧急状态

    5、触发与解除,所以使用独立式按键实现。按键部分电路图如图4所示。图4. 按键部分电路图3.3 功率驱动电路对单片机发出的脉冲信号进行放大,来支持交通灯模组的运转。功率驱动电路如图5所示。图5. 驱动电路图3.4 交通灯模组电路使用交通灯模组来实现简易交通灯的控制。交通灯模组电路如图6所示。图6. 交通灯模组电路3.5 蜂鸣器部分 在东西和南北向绿灯闪烁和黄灯亮时,蜂鸣器响以提醒行人。蜂鸣器部分电路图如图7所示。图7. 蜂鸣器电路图4、 软件设计4.1 程序主体设计流程本设计的主体思路是:采用顺序控制,每个状态设置相应的标志位,分别写出每个状态LED灯和数码管显示的情况,当定时中断来临后,判断是否

    6、改变状态;若进入下一个状态,则改变相对应的变量,反之则循环执行显示子程序。4.2 主程序设计主程序中主要是进行系统的初始化,设置系统相应的标志位,判断是否中断,并且调用相应的子程序。主程序流程图如图8所示。 图8. 主程序流程图4.3 定时器子程序设计 定时器可以使用查双字表,也可以通过设定一个基本定时时间再循环来实现。在本次设计中,使用第二种定时方案比较简单;再根据定时器四种工作方式以及本次设计的要求,所以使用定时器0,工作方式TMOD=1,根据所需定时时间的分析,设定定时器的基本定时时间为t=50ms,计算计数初值: X=216-50*10-3*12*106/12=63163=3CB0H,

    7、即定时器初值为:TH1=3CH TL1=0B0H定时器子程序流程图如图10所示 图10. 定时器部分流程图4.4 显示子程序设计显示子程序中,实现LED灯的亮灭以及数码管的倒计时显示,数码管的显示采用动态显示。显示子程序流程图如图9所示。 图9. 显示子程序流程图5、 系统调试及结果5.1列出调试内容、调试方法以及具体步骤调试内容及具体操作控制方法如下:当程序开始执行时,各个路口的灯及显示器显示按照表3所示进行变化。其中数码管显示使用倒计时表3. 交通灯控制顺序过程顺序红绿灯状态时 间1东西红灯,南北红灯10秒2南北绿灯,东西红灯40秒3南北绿灯闪烁3次,东西红灯闪烁间隔1秒4南北黄灯,东西红

    8、灯4秒5南北红灯,东西绿灯30秒6南北红灯,东西绿灯闪烁3次闪烁间隔1秒7南北红灯,东西黄灯4秒8转过程2,循环执行具体调试方法为断点调试方法,单步执行。5.2说明调试中出现的问题及解决方法1. 在实现灯闪烁的时候,一开始不知道如何实现,后来经过讨论,决定用查表方式来实现灯闪烁。2. 数码管显示的数字一开始变化太慢,为了节省时间,后来将基本定时时间缩短了一倍,数字变化就变快了,节省了时间。6、 设计总结这次的设计是做一个交通灯,题目虽然很简单,但是我们也遇到了不少困难,在编程仿真的时候,很多时候都达不到我们想要的效果,我们就三个人一起讨论,一遍一遍的修改程序,最终实现了我们想要的结果。布线是很

    9、关键的一步,怎样布线才能使电路看起来不乱,电路看起来美观非常重要,我们一起讨论,一起尝试,终于达到了比较满意的效果。程序的设计业是非常重要的,从开始的不太理解,通过不断地尝试,最后终于达到了比较满意的结果,达到了本次设计的基本要求。在这次的设计过程中,我们三人相互配合,相互磨合,都有了默契,为以后的设计做了很好的铺垫。7、 参考资料1. 参考教材一:单片机接口技术实训指导书作者:北京联合大学机电学院2. 参考教材二:微机原理与接口技术实验指导书2009作者:北京联合大学机电学院3参考教材三:单片机应用技术,科学出版社作者:赵林惠 8、 附件8.1 系统电路原理图;见附录I8.2 程序清单及注释

    10、。见附录II 组员签字:、附录I 系统电路原理图附录II 程序清单及注释;-BZ1 BIT 40HBZ2 BIT 41HBZ3 BIT 42HBZ4 BIT 43HBZ5 BIT 44HBZ6 BIT 45HBZ7 BIT 46HBZ8 BIT 47H;-系统初始化-ORG 0000HAJMP MAINORG 0003HAJMP INT_0ORG 000BHAJMP T_0ORG 0050H MAIN:MOV TMOD,#01H ;使用定时器T0状态1MOV TH0,#3CH ;定时50msMOV TL0,#0B0HSETB EASETB IT0 ;使用外部中断0SETB EX0SETB ET

    11、0SETB BZ1MOV P0,#00H ;对输出口清零MOV P1,#00HMOV P2,#00HSETB P3.0MOV R1,#10 ;对运行中间值设置初值MOV R2,#10MOV R4,#10MOV R5,#10MOV R6,#15SETB TR0 ;打开定时器T0,开始计时/-计时和红绿灯显示-DISPLAY: ACALL LOOPSJMP DISPLAYLOOP:MOV A,R4 ;南北向计时显示MOV DPTR,#TAB_1MOVC A,A+DPTRMOV R3,AANL A,#0FHMOV DPTR,#TAB_2MOVC A,A+DPTRMOV P0,AMOV P2,#22H

    12、ACALL DELAYMOV P2,#00HMOV P0,#00HMOV A,R3SWAP AANL A,#0FHMOV DPTR,#TAB_2MOVC A,A+DPTRMOV P0,AMOV P2,#11HACALL DELAYMOV P2,#00HMOV P0,#00HMOV A,R5 ;东西向计时显示MOV DPTR,#TAB_1MOVC A,A+DPTRMOV R6,AANL A,#0FHMOV DPTR,#TAB_2MOVC A,A+DPTRMOV P0,AMOV P2,#88HACALL DELAYMOV P2,#00HMOV P0,#00HMOV A,R6SWAP AANL A,

    13、#0FHMOV DPTR,#TAB_2MOVC A,A+DPTRMOV P0,AMOV P2,#44HACALL DELAYMOV P2,#00HMOV P0,#00HD1:JNB BZ1,D2 ;东西红灯,南北绿灯 MOV P0,#08HMOV P1,#11HACALL DELAYMOV P1,#00HMOV P0,#08H MOV P1,#44HACALL DELAYMOV P0,#00HMOV P1,#00HAJMP D8D2:JNB BZ2,D3 ;南北绿灯,东西红灯SETB P3.0MOV P0,#20HMOV P1,#11HACALL DELAYMOV P1,#00HMOV P0,

    14、#08H MOV P1,#44H ACALL DELAYMOV P0,#00HMOV P1,#00HAJMP D8D3:JNB BZ3,D4 ;南北绿灯闪烁三次,东西红灯 ,蜂鸣器响CLR P3.0MOV A,R4MOV DPTR,#TAB_3MOVC A,A+DPTRMOV P0,AMOV P1,#11HACALL DELAYMOV P1,#00HMOV P0,#08H MOV P1,#44HACALL DELAYMOV P0,#00HMOV P1,#00HAJMP D8D4:JNB BZ4,D5 ;南北黄灯,东西红灯,蜂鸣器响CLR P3.0MOV P0,#10HMOV P1,#11HAC

    15、ALL DELAYMOV P1,#00HMOV P0,#08H MOV P1,#44HACALL DELAYMOV P0,#00HMOV P1,#00HSJMP D8D5:JNB BZ5,D6 ;南北红灯,东西绿灯SETB P3.0MOV P0,#08HMOV P1,#11HACALL DELAYMOV P1,#00HMOV P0,#20H MOV P1,#44HACALL DELAYMOV P0,#00HMOV P1,#00HSJMP D8D6:JNB BZ6,D7 ;南北红灯,东西绿灯闪烁三次 ,蜂鸣器响CLR P3.0MOV P0,#08HMOV P1,#11HACALL DELAYMO

    16、V P1,#00HMOV A,R5MOV DPTR,#TAB_3MOVC A,A+DPTRMOV P0,A MOV P1,#44HACALL DELAYMOV P0,#00HMOV P1,#00HSJMP D8D7:JNB BZ7,JJ ;南北红灯,东西黄灯 ,蜂鸣器响CLR P3.0MOV P0,#08HMOV P1,#11HACALL DELAYMOV P1,#00HMOV P0,#10H MOV P1,#44HACALL DELAYMOV P0,#00HMOV P1,#00HSJMP D8JJ:SETB P3.0MOV P0,#08HMOV P1,#11HACALL DELAYMOV P

    17、1,#00HMOV P0,#08H MOV P1,#44HACALL DELAYMOV P0,#00HMOV P1,#00HD8:RET/-定时T0中断- T_0: MOV TH0,#3CHMOV TL0,#0B0HDJNZ R2,K2MOV R2,#10 LOOP1:JNB BZ1,LOOP2;判断是否处于标志位1,即状态1DJNZ R1, K1 ;进行状态1的运算CLR BZ1SETB BZ2MOV R1,#40MOV R4,#46MOV R5,#50AJMP EXIT_0LOOP2: JNB BZ2,LOOP3 ;判断是否处于标志位2,即状态2DJNZ R1,K1 ;进行状态2的运算CL

    18、R BZ2SETB BZ3MOV R1,#6MOV R4,#6DEC R5SJMP EXIT_0LOOP3: JNB BZ3,LOOP4;判断是否处于标志位3,即状态3DJNZ R1,EXIT_1;进行状态3的运算CLR BZ3SETB BZ4MOV R1,#4MOV R4,#4DEC R5SJMP EXIT_0LOOP4: JNB BZ4,LOOP5;判断是否处于标志位4,即状态4DJNZ R1,EXIT_1;进行状态4的运算CLR BZ4SETB BZ5MOV R1,#30MOV R4,#40MOV R5,#30SJMP EXIT_0LOOP5: JNB BZ5,LOOP6;判断是否处于标

    19、志位5,即状态5DJNZ R1,EXIT_1;进行状态5的运算CLR BZ5SETB BZ6MOV R1,#6MOV R5,#6DEC R4K2:SJMP EXIT_0K1:SJMP EXIT_1LOOP6: JNB BZ6,LOOP7;判断是否处于标志位6,即状态6DJNZ R1,EXIT_1 ;进行状态6的运算CLR BZ6SETB BZ7MOV R1,#4MOV R5,#4DEC R4SJMP EXIT_0LOOP7:JNB BZ7,LOOP8;判断是否处于标志位7,即状态7DJNZ R1,EXIT_1;进行状态7的运算 CLR BZ7SETB BZ2MOV R1,#40MOV R4,#

    20、40MOV R5,#50SJMP EXIT_0LOOP8:JNB BZ8,EXIT_0 DJNZ R1,EXIT_1SETB BZ2CLR BZ8MOV R1,#40MOV R4,#40MOV R5,#50AJMP EXIT_0EXIT_1: DEC R4DEC R5EXIT_0:RETI /外部中断/ INT_0: /PUSH 28H CLR BZ1CLR BZ2CLR BZ3CLR BZ4CLR BZ5CLR BZ6CLR BZ7SETB BZ8MOV R4,#15MOV R5,#15MOV R1,#15LCALL LOOPRETI/-延时程序- DELAY: MOV R7,#0FAH D

    21、JNZ R7,$ ;延时1ms子程序RETTAB_1: DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09H,10H,11H,12H,13H,14H,15H,16H,17H,18H,19H,20H,21H,22H,23H,24H,25H,26H,27H,28H,29H,30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,40H,41H,42H,43H,44H,45H,46H,47H,48H,49H,50HTAB_2: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHTAB_3:DB 00H,20H,00H,20H,00H,20H,00HEND


    注意事项

    本文(基于51单片机-简单交通灯控制.doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开