欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    基于C51单片机的交通灯控制系统.doc

    • 资源ID:4148092       资源大小:514KB        全文页数:13页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

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

    基于C51单片机的交通灯控制系统.doc

    二、 设计概要 1、实验方案论证:进行十字路口的交通信号灯控制电路设计,画出电路原理图及实验电路图,进行软件编程、以及使用说明文档的建立等一整套工作任务。进行十字路口的交通信号灯控制程序设计,提交一个符合上述功能要求的十字路口的交通信号灯控制系统设计。2、控制流程分析:对设计要求进行分析后可得出以下交通工作状态表:3、硬件设计概要:根据设计要求,可用6个LED灯分别模拟东西、南北的交通灯。具体接法如下: AT89C51的P1口接LED灯,P1.0、P1.1、P1.2分别接东西方向红、绿、黄交通灯,P1.3、P1.4、P1.5分别接南北方向的红、绿、黄交通灯。P1口和LED灯之间要接限流保护电阻。两位数码管段选接P2口,位选接P0口低两位,P0口低两位接上拉电阻使其可以输出高电平。紧急情况按钮一端接地,另一端与外中断1引脚相连;恢复正常按钮一端接地,另一端与外中断0引脚相连。三、原理图设计1、LED显示部分电路设计:把单片机AT89C51的P1口作为红黄绿灯显示部分,用6个LED灯分别模拟东西、南北的交通灯。P1.0、P1.1、P1.2各通过一个300的限流保护电阻接东西方向的红、绿、黄LED灯;P1.3、P1.4、P1.5各通过一个300的限流保护电阻接南北方向的红、绿、黄LED灯。LED灯的一端接电源,另一端经电阻接P1口,因此当P1口引脚输出低电平时LED灯发光,即此方案采取低电平驱动方式。具体电路如下:2、紧急情况处理电路设计:紧急情况按钮一端接地,另一端与外中断1引脚相连;恢复正常按钮一端接地,另一端与外中断0引脚相连。在程序设计时,我会将其设置为下降沿触发方式。具体电路如下:3、数字显示电路设计:选用共阴极两位数码管。两位数码管AG引脚各通过一个300的限流保护电阻分别接P2.0P2.6,位选1引脚和2引脚分别接P0.0口低两位,P0口低两位接5k的上拉电阻使其可以输出高电平。4、其他部分电路:XTAL1端和XTAL2端之间接一个12M Hz的晶振,再各接一个30pF的普通电容后接地;RST复位端一端经10uF的电解电容接+5V电源,一端经一个10K的电阻接地。具体电路如下:4、系统电路总图:四、 程序设计:1、定时器初值的计算:由于要求定时时间相当精确,我用定时器T0进行定时。根据公式可知若已知要求的定时时间为t,则定时器的初值为x(其中fosc=12M Hz) :需要定时器的定时时间为50ms,根据公式计算得出X=15536,因此定时器初值的低位TL0=(0B0H),高位TH0=(3CH)。2、程序流程图:21主程序流程主程序主要是对单片机进行初始化。初始化首先要开放总中断、定时器T0中断以及外部中断0和外部中断1。其次是设置中断优先级,把外中断0设置为高优先级,外中断1设置为低优先级。再次是给定时器T0装顶初值,然后后是启动定时器,是使定时器开始定时。最后是等待中断。 装定时器初值,启动定时器循环动态显示开始开放总中断、定时器T0中断以及外部中断 设置中断优先级2.2紧急情况中断处理流程紧急情况中断处理包括两部分,第一部分是出现紧急情况可以手动使东西、南北方向红灯全亮,而且直到紧急状况解除后才能恢复正常通车。这就要求紧急状况解除前不能退出外中断1处理程序,因此要在外中断1处理程序处设置一无限循环。第二部分是紧急状况解除。为了使外中断1处理程序退出无限循环,可用中断嵌套使机器转去执行外中断0处理程序,而外中断0处理程序修改了寄存器R2的值,中断返回后由于寄存器R2的值的改变使外中断1处理程序跳循环。2.2.1外中断1处理程序(低优先级) N外中断1入口数码管显示为0置R2的值为0R2的值为0?中断返回东西、南北方向红灯亮Y 2.2.2外中断0处理程序(高优先级)外中断0入口使R2的值不为0中断返回1.3定时器中断处理流程YYN3、程序源代码: ORG 0000H AJMP START ORG 0003H ;外中断0入口 AJMP SERV0 ORG 000BH ;外中断1入口 AJMP SERV1 ORG 0013H ;定时器中断入口 AJMP SERV2 ORG 0030HSTART:MOV IE,#87H MOV IP,#01H ;设置中断优先级 MOV TMOD,#01H MOV TCON,#05H MOV TH0,#3CH MOV TL0,#0B0H ;装定时器初值 MOV DPTR,#TAB ;装表首地址 MOV P1,#0F6H MOV R0,#20 MOV R5,#00H MOV R6,#00H SETB TR0 ;启动定时器LOOP1:MOV P0,#02H ;循环动态显示,由10秒开始倒计时 MOV A,R6 MOVC A,A+DPTR MOV P2,A ACALL D10MS MOV P0,#01H MOV A,R5 MOVC A,A+DPTR MOV P2,A ACALL D10MS AJMP LOOP1 SERV0:MOV R2,#0FFH ;正常状态恢复程序,使R0的值不为0 RETISERV1:DJNZ R0,NEXT ;未到1秒,则转到NEXT CJNE R5,#01,DHE0 AJMP DHE3DHE0: CJNE R5,#00H,DHE1 CJNE R6,#00H,DHE2 MOV R5,#00H MOV R6,#01H MOV P1,#0F5H AJMP OUT0 DHE1: DEC R5 ;减1秒 AJMP OUT0DHE2: MOV R6,#00H MOV R5,#09HOUT0: MOV R0,#20 RETIDHE3: MOV P0,#00H MOV P2,#3FH ;显示为0 MOV A,P1 MOV R1,#05H JNB ACC.0,CHE0 ;东西方向红灯亮,则转到CHE0YELL0:SETB P1.0 SETB P1.1 ;东西方向绿灯灭 CLR P1.2 ACALL DMS SETB P1.2 ACALL DMS DJNZ R1,YELL0 ;东西方向黄灯闪烁5次 MOV P1,#0EEH ;东西方向红灯亮,南北方向绿灯亮 SJMP NEXT1CHE0: JNB ACC.3,CHE1YELL1:SETB P1.3 SETB P1.4 ;南北方向绿灯灭 CLR P1.5 ACALL DMS SETB P1.5 ACALL DMS DJNZ R1,YELL1 ;南北方向黄灯闪烁5次CHE1: MOV P1,#0F5H ;南北方向红灯亮,东西方向绿灯亮 NEXT1:MOV R0,#20 MOV R5,#00H MOV R6,#01H ;重置显示为10秒NEXT: MOV TH0,#3CH ;重装定时器初值 MOV TL0,#0B0H RETISERV2:MOV P0,#00H MOV P2,#3FH ;显示为0 MOV R5,#00H MOV R6,#00H MOV R2,#00H ;紧急状况服务程序,使R2的值为0 MOV P1,#0F6HLOOP3:CJNE R2,#00H,OUT1 ;R2的值为0,则无限循环,直到执行SERV0状 MOV R3,#02H ; 态恢复程序,使R0的值不为0才返回 DJNZ R3,LOOP3OUT1: RETIDMS: MOV 32H,#4 ;延时子程序,延时0.4秒DL0: MOV 31H,#200DL1: MOV 30H,#250DL2: DJNZ 30H,DL2 DJNZ 31H,DL1 DJNZ 32H,DL0 RETD10MS:MOV 33H,#50 ;延时子程序,延时10毫秒DL3: MOV 34H,#100DL4: DJNZ 34H,DL4 DJNZ 33H,DL3 RETTAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END五、 仿真结果与分析在PROTEUS软件仿真中的结果如下:1、 初始状态2、东西路口的绿灯亮,南北路口的红灯亮3、东西路口绿灯灭,黄灯闪烁4、东西路口红灯亮,南北路口的绿灯亮5、南北路口绿灯灭,黄灯闪烁由以上仿真结果可以看出,电路图和源程序设计完全满足设计要求。六、 课程设计总结与体会通过这次课程设计我巩固和加深课堂所学知识;掌握一般软硬件的设计方法和查询、运用资料的能力;掌握通过定时器进行定时的基本方法、中断控制的原理和方法以及LED控制的方法。这次课程设计,我将课本上的理论知识和实际的应用有机的结合起来,提高分析和解决问题的实际能力,通过对汇编语言程序代码的设计、编写、修改以提高自己实际编程能力。总的来说,这次课程设计的难度不算大,整个设计、调试任务都有我独立完成。而在PROTEUS软件仿真中的结果可以看到我的设计完全符合要求。在设计过程中我还认识到,遇到问题时应回到书本,查找实际问题所需的理论知识,将理论和实际结合起来。这样,在解决问题的同时还能提高我对理论知识的理解。

    注意事项

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

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开