基于AT89C51单片机的十字路口交通灯设计.doc
《基于AT89C51单片机的十字路口交通灯设计.doc》由会员分享,可在线阅读,更多相关《基于AT89C51单片机的十字路口交通灯设计.doc(10页珍藏版)》请在咨信网上搜索。
51单片机应用实训报告 课程名称 51单片机应用 实训题目 十字路口交通信号灯 系 别 机电技术系 专业班级 机电1401 学 号 姓 名 基于AT89C52RC单片机的十字路口交通灯设计 1 设计目的和方案 1.1设计目的 近年来随着科技的飞速发展,一个以微电子技术、计算机技术和通信技术为先导的信息革命正在蓬勃发展。计算机技术作为三者之一,怎样与实际应用更有效的结合并发挥其作用。单片机作为计算机技术的一个分支,正在不断的应用到实际生活中,同时带动传统控制检测的更新。在实时检测和自动控制的应用系统中,单片机往往是作为一个核心部件使用,针对具体应用对象的特点,配以其它器件来加以完善。现代社会有越来越多的人开始有了自己的私家车,同时,便有了交通拥挤的问题,如何在车流量巨大的十字路口保证车辆畅行,交通灯便起到了巨大的作用。实际上,1858年,英国伦敦就有了最早的然煤气交通灯,至今,交通灯已经普及到世界各地,成为社会生活中不可或缺的装置。 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。 1.2设计方案 设计方案如表1所示。 表1设计方案 55s 5s 55s 5s 南北道 红灯亮 红灯亮 绿灯亮 黄灯亮 ....... 东西道 绿灯亮 黄灯亮 红灯亮 红灯亮 ....... 1.4设计任务 东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。红灯的设计时间为60秒,绿灯及左转绿灯各为55秒。黄灯为闪烁5秒。 2功能 该电子产品实现的功能:本系统除基本交通灯功能以外,还有倒计时等功能,较好的模拟了十字路口出现的状况。 具体功能如下: (1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯, 此道车辆通过,行人禁止通行。时间为60秒。 (2)黄灯闪烁5秒,警示车辆和行人红、绿灯的状态即将切换。 (3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行。时间为60秒。 东西方向车流大 通行时间长。 (4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。 3硬件设施及简介 AT89C52RC单片机一片,共阳极的七段数码管,两个双向晶闸管若干,电源若干,晶振电路,紧急通行电路一个,LED红黄绿灯各三个。导线若干。 数码显示管两个:显示倒计时时间。 4 程序方框图 主程序流程图如图2所示。 图2 程序方框图 5 电路原理及说明 5.1总电路原理图 绘制出所做作品的原理图如图3所示。 图3电路原理图 5.2 电路原理说明 电路工作原理:如附图所示,东西绿灯55s黄灯5s,南北方向红灯亮60s,倒计时结束,转向,南北方向绿灯55s,黄灯5s,东西方向红灯60s,依次循环。两个晶体管用来显示倒计时时间,6个不同颜色的LED灯显示各方向的红绿灯情况。使用51单片机作为芯片,一个紧急通行按钮。 LED 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点亮。七段数码管连接显示不同的数字如 SP,g,f,e,d,c,b,a 。 6系统仿真及实际调试 程序仿真是基于proteus软件的,仿真结果如图4所示 图4仿真结果 7总结 在进行过程中遇到的问题及解决方法: 通过这次课程设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。 在进行过程中,遇到很多困难与问题,例如程序不会写,仿真不出结果,结果不正确等问题,但是困难总是有办法解决的,通过查询网络,请教同学等方式,改编出了源程序,请教同学做出来了仿真结果。为以后的课设继续进行打好了基础。 作为机电一体机专业的学生,我觉得做单片机课程设计是十分有意义的,而且是十分必要的。在已度过的大学时间里,我们大多数接触的是专业课。我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。 我认为这个收获应该说是相当大的。觉得课程设计反映的是一个从理论到实际应用的过程,但是更远一点可以联系到以后毕业之后从学校转到踏上社会的一个过程。 附录 程序如下 #include<include.h> sbit NS_GRE = P0^5; sbit NS_YEL = P0^4; sbit NS_RED = P0^3; sbit EW_GRE = P0^2; sbit EW_YEL = P0^1; sbit EW_RED = P0^0; uint8 EW_Timer = unused8; uint8 NS_Timer = unused8; uint8 YEL_Timer = unused8; int main(void) { Timer_Init(); INT0_Init(); EA=1; NS_GRE = OFF; NS_YEL = OFF; NS_RED = OFF; EW_GRE = OFF; EW_YEL = OFF; EW_RED = OFF; P3 = 0xFF; EW_Timer = EWTime_Count; while(1) { if((EW_Timer != unused8) && (EW_Timer != 0)) display1(EW_Timer/10, EW_Timer%10); EW_RED_ON(); NS_GRE_ON(); } else if((EW_Timer != unused8) && (EW_Timer == 0) && (YEL_Timer == unused8)) EW_RED_ON(); NS_YEL_ON(); YEL_Timer = YELTime_Count; } if((EW_Timer != unused8) && (YEL_Timer != unused8) && (YEL_Timer != 0)) {display1(YEL_Timer/10, YEL_Timer%10); } if((EW_Timer != unused8) && (YEL_Timer == 0)){ EW_Timer = unused8; YEL_Timer = unused8; NS_RED_ON(); EW_GRE_ON(); NS_Timer = NSTime_Count; } if((NS_Timer != unused8) && (NS_Timer != 0)) { display2(NS_Timer/10, NS_Timer%10); EW_GRE_ON(); NS_RED_ON(); } else if((NS_Timer != unused8) && (NS_Timer == 0) && (YEL_Timer == unused8)){ NS_RED_ON(); EW_YEL_ON(); YEL_Timer = YELTime_Count; } if((NS_Timer != unused8) && (YEL_Timer != unused8) && (YEL_Timer != 0)){ display2(YEL_Timer/10, YEL_Timer%10); } if((NS_Timer != unused8) && (YEL_Timer == 0)) { NS_Timer = unused8; YEL_Timer = unused8; EW_RED_ON(); NS_GRE_ON(); EW_Timer = EWTime_Count; } if(Flag_Key == 1){ P3 = 0xFF; EW_RED_ON(); NS_RED_ON(); EW_Timer = unused8; NS_Timer = unused8; YEL_Timer = unused8; } } } sbit Key = P3^2; uint8 Flag_Key = 0; void INT0_Init(void) { EX0 = 1; IT0 = 1; } void Key_Stop(void) interrupt 0 { Delay10uS(200); if(Key == 0){ Flag_Key = 1; } } sbit NS_GRE = P0^5; sbit NS_YEL = P0^4; sbit NS_RED = P0^3; sbit EW_GRE = P0^2; sbit EW_YEL = P0^1; sbit EW_RED = P0^0; uint8 EW_Timer = unused8; uint8 NS_Timer = unused8; uint8 YEL_Timer = unused8; int main(void) { Timer_Init(); INT0_Init(); EA=1; NS_GRE = OFF; NS_YEL = OFF; NS_RED = OFF; EW_GRE = OFF; EW_YEL = OFF; EW_RED = OFF; P3 = 0xFF; EW_Timer = EWTime_Count; while(1) { if((EW_Timer != unused8) && (EW_Timer != 0)) { display1(EW_Timer/10, EW_Timer%10); EW_RED_ON(); NS_GRE_ON(); }else if((EW_Timer != unused8) && (EW_Timer == 0) && (YEL_Timer == unused8)) { EW_RED_ON(); NS_YEL_ON(); YEL_Timer =YELTime_Count; } if((EW_Timer != unused8) && (YEL_Timer != unused8) && (YEL_Timer != 0)) { display1(YEL_Timer/10, YEL_Timer%10); } if((EW_Timer != unused8) && (YEL_Timer == 0)) { EW_Timer = unused8; YEL_Timer = unused8; NS_RED_ON(); EW_GRE_ON(); NS_Timer = NSTime_Count; } if((NS_Timer != unused8) && (NS_Timer != 0)) { display2(NS_Timer/10, NS_Timer%10); EW_GRE_ON(); NS_RED_ON(); } else if((NS_Timer != unused8) && (NS_Timer == 0) && (YEL_Timer == unused8)) { NS_RED_ON(); EW_YEL_ON(); YEL_Timer = YELTime_Count; } if((NS_Timer != unused8) && (YEL_Timer != unused8) && (YEL_Timer != 0)){ display2(YEL_Timer/10, YEL_Timer%10); } if((NS_Timer != unused8) && (YEL_Timer == 0)) { NS_Timer = unused8; YEL_Timer = unused8; EW_RED_ON(); NS_GRE_ON(); EW_Timer = EWTime_Count; } if(Flag_Key == 1){ P3 = 0xFF; EW_RED_ON(); NS_RED_ON(); EW_Timer = unused8; NS_Timer = unused8; YEL_Timer = unused8; } } } uint8 Timer = 20; void Timer_Init(void) { TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; ET0=1; TR0=1; } void timer1(void) interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; if(Timer > 0){ Timer--; if(Timer == 0){ Timer = 20; if((EW_Timer != unused8) && (EW_Timer > 0)) { EW_Timer--; } if((NS_Timer != unused8) && (NS_Timer >0)){ NS_Timer--; } if((YEL_Timer != unused8) && (YEL_Timer >0)){ YEL_Timer--; } } } } 10- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 AT89C51 单片机 十字路口 交通灯 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文