




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
长安大学单片机应用课程设计报告 题目:十字路口交通路口控制科目:单片机应用课程设计姓名: 学号:班级:指导老师: 完成时间:目录1、设计目标32、相关背景知识33、系统的硬件设计33.1、电路框图设计43.2、系统的硬件组成及方案选择43.2.2、系统的方案选择53.3、参数计算及元器件选择6元器件选择如表2(元器件清单)所示64、系统工作流程65、系统仿真85.1仿真的电路图86、设计总体评价117、收获和建议118、附录131、设计目标任务:利用单片机设计一个十字路口交通灯控制器。要求:利用单片机的定时器产生秒信号,控制十字路口的红、绿、黄灯交替点亮和熄灭,并且用4 只LED 数码管显示十字路口两个方向的剩余时间。(1) 东西向通行80秒,南北向通行60秒,缓冲时间3秒。(2) 能用按键设置两个方向的通行时间(绿、红灯点亮的时间 )和暂缓通行时间(黄灯点亮的时间 )。系统的工作应符合一般交通灯控制的要求。2、相关背景知识随着社会的飞速发展,城市交通问题日益凸显严重,尤其在城市街道的十字交叉路口,频繁发生交通问题,为了保证交通秩序和行人安全,一般在每条街上都有一组红、黄、绿交通信号灯。我国目前使用的信号灯具体含义如下:(l)绿灯亮时,允许车辆、行人通行,但转弯的车辆不准妨碍直行的车辆和被放行的行人通行。(2)黄灯亮时,不准车辆、行人通行,但已越过停止线的车辆和已进入人行通道的行人,可以继续通行。(3)红灯亮时,不准车辆、行人通行。(4)绿色箭头灯亮时,准许车辆按箭头所示方向通行。(5)黄灯闪烁时,车辆、行人须在确保安全的原则下通行。(6)右转弯车辆和T形交叉口右边无人行横道的直行车辆,遇黄灯或红灯时,在不妨碍被放行的车辆和行人通行的情况下可以通行。交通灯控制电路自动控制十字路口的红、黄、绿交通灯。交通灯通过状态转换,指挥车辆行人通行,保证车辆行人的安全,实现十字路口交通管理自动化。模拟交通信号控制下路口的交通情况,是用程序在模拟现实生活中十字路口的交通情况,这样做是非常有实际意义的。在现实生活中,观察和调试一个路口的交通信号灯是要花要化很长的时间。如果将这个过程用程序来模拟,那就可以节省大量的时间,同时通过改变程序的各种变量值,也可以更容易地反映更多的在现实生活中不常发生的复杂情况。得到很多宝贵的数据,来指导现实中交通系统的架设。3、系统的硬件设计单片机设计交通灯控制系统,可用单片机直接控制信号灯的状态变化,基本上可以指挥交通的具体通行,当然,接入LED数码管就可以显示倒计时以提醒行使者,更具人性化。3.1、电路框图设计电路的框图如图1所示: 图1 电路框图据此,本设计系统以51单片机为控制核心,单片机上电后,系统进入正常工作状态,执行交通灯状态显示控制,同时将时间数据倒计时输入到LED数码管上实时显示。3.2、系统的硬件组成及方案选择该系统由AT89C51单片机、两位数共阴极数码管、按键和LED红黄绿构成。3.2.1、中断系统:中断系统的作用主要是对外部或内部的终端请求进行管理与处理。AT89C51共有5个中断源,它们是两个外部事件中断INT0(P3.2)和INT1(P3.3)、两个片内定时/计数器溢出中断TF0和TF1和片内串行口中断TI或RI,这几个中断源由TCON和SCON两个特殊功能寄存器进行控制,其中5个中断源的程序入口地址如表1所示。表1各中断源的中断处理程序入口地址序号中断源入口地址1外部事件中断INT00003H2定时/计数器T0溢出中断000BH3外部事件中断INT10013H4定时/计数器T1溢出中断001BH5串行口接收和发送中断0023H3.2.2、系统的方案选择1)总体流程图(实现各种状态间的转换):图2 总体流程图2)工作原理由软件设置交通灯的初始时间,南北方向通行80秒,东西方向通行60秒,数码管采用动态显示,P0口送字形码,P2口送字位选通信号,通过单片机的P1口控制各种信号灯的燃亮与熄灭。采用中断方式实现按键的功能。图4 系统框图3)电路原理图图5 电路原理图3.3、参数计算及元器件选择元器件选择如表2(元器件清单)所示表2 元器件清单名称个数备注AT89C51单片机1/7SEG-MPX2-CC-BULE数码管2共阴极数码管按键3/LED红黄绿各4个/4、系统工作流程 1)系统启动后,系统按程序给定的时间工作,即东西向通行60秒,南北向通行40秒,黄灯亮4秒。首先东西向通行,然后南北向通行,如此循环。2)通行时间的设置:当需要更改主、次干道的通行时间时,可以用设置键、增加键、减少键”进行设置。 第一次按“设置键”时,东西向的绿灯亮,东西向的LED数码管显示当前东西向的通行时间,并且按每秒3次的频率闪烁(每秒钟亮3次暗3次),其余的信号指示灯和南北向的LED数码管熄灭,此时可以用“增加键”和“减少键”来改变南北向的通行时间,每按一次键,数码管的显示时间增加1秒或减少1秒,长按键(按下的时间超过1秒钟以上),则数码管显示的时间按每秒钟增加或减少10的速度快速变化 第二次按“设置键”时,东西向的黄灯亮,东西向的数码管显示当前东西向黄灯的点亮时间,并且按每秒3次的频率闪烁,其余的信号指示灯和南北向的数码管熄灭,此时可以用“增加键”和“减少键”来改变东西向黄灯的点亮时间。 第三次按“设置键”时,南北向的绿灯亮,南北向的数码管显示当前南北向绿灯的通行时间,并且按每秒3次的频率闪烁,其余的信号指示灯和东西向的数码管熄灭,此时可以用“增加键”和“减少键”来改变南北向绿灯的通行时间。 第四次按“设置键”时,南北向的黄灯亮,南北向的数码管显示当前南北向黄灯的点亮时间,并且按每秒3次的频率闪烁,其余的信号指示灯和东西向的数码管熄灭,此时可以用“增加键”和“减少键”来改变南北向黄灯的点亮时间。第五次按“设置键”时,系统退出设置状态,回到交通信号灯状态,并且东西向先通行,南北向后通行。“设置键”的功能如表3所示。表3 按键功能 图6 主程序流程图 图7 中断T0流程图图8 中断T1流程图5、系统仿真5.1仿真的电路图1)交通灯东西方向绿灯亮、南北方向红灯亮时仿真图。图92)交通灯东西方向黄灯亮、南北方向红灯亮时仿真图。图103)交通灯东西方向红灯亮、南北方向绿灯亮时仿真图。图114)交通灯东西方向红灯亮、南北方向黄灯亮时仿真图。图125)按下按键,调节绿灯时间至95秒。图136、设计总体评价本系统就是充分利用了AT89C51芯片的I/O引角。系统采用MSC-51系列单片机为中心器件来设计交通灯控制器,实现了通过单片机芯片的P0口控制红、黄、绿灯的点亮与熄灭;P1和P2口外接数码管倒计时显示各个信号灯的时间。系统设计简便、实用性强、操作简单、程序设计简便。系统的不足之处不能控制车的左、右转以及自动根据车流改变红绿灯时间等。这是由本身的地理位置以及车流量情况所定,如果有需要可以设计扩充原系统来实现。7、收获和建议本次课程设计,是在结束了相关理论知识与实验的学习后进行的,是对理论知识和实验的综合和提高。理论知识的学习是为更好的解决实际问题。通过本次课程设计,我充分意识到自己所学的东西还是非常有限的,不过通过设计,还是学到了一些书本上没有学到的东西,为自己以后的学习起了很大的帮助,在这个过程中,我真切的感到了,我又知道了很多,同时也掌握了很多以后在工作和生活中能真正用到的很多东西。其次,通过这本次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,唯有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高我们自己的实际动手能力和独立思考的能力。在设计的过程中,难免会遇到过各种各样的问题,例如自己知识的很多漏洞,对以前所学过的知识理解得不够深刻,掌握得不够牢固,实践经验比较缺乏,理论联系实际的能力还待急需提高。此次课程设计之后,我一定把以前所学过的知识重新温故。我觉得类似这种课程设计的实践真的不错,通过这些项目练习,我的自学能力和解决实际问题的能力得到了提高,可以说是对综合素质全面提升,我想这也是我们上大学应该真正学到的。最后,感谢老师对我们的教导,使我学习了理论知识,打下了坚实的理论基础,才得以将其应用到此次课程设计中来完成它。参考文献【1】段晨东.单片机原理及接口技术.北京:清华大学出版社,2013。【2】霍孟友.单片机原理及接口技术.北京:机械工业出版社,2004。【3】裘雪红.微型计算机原理与接口技术.西安电子科技大学出版社,2007。【4】张毅刚.单片机原理及接口技术.北京:高等教育出版社,2004。【5】刘娟.单片机C语言与PROTUES仿真技能实训.中国电力出版社,2010。【6】张靖武.单片机系统的PROTEUS设计与仿真.电子工业出版社,2007。8、附录25程序如下所示:#include at89x51.h #include control.h /用于显控制数码管示的函数int EWNowCount; /东西向的显示秒数int NSNowCount;/南北向德显示秒数int temp ; / 临时变量,用以判断路灯转换条件及赋给count的值unsigned int num; /计时次数,每4000次为一秒unsigned char delay_time; /控制闪烁的延时unsigned char edit; /可设置红绿灯初始值unsigned char setClicks;/保存set键的按下次数unsigned char FlashChange;/东西向与南北向计时器转换 char add; /加或者减后的值int EWGreenDef = 80 ; /东西向的默认值int EWYellowDef = 3 ;int EWRedDef =63;int NSGreenDef = 60 ; /南北向的默认值int NSYellowDef = 3;int NSRedDef = 83 ;int EWGreen;int EWYellow; /定义六个变量 ,用来读秒int EWRed;int NSGreen;int NSYellow;int NSRed ;int Sum1 ; / EWGreenDef +EWYellowDef+ EWRedDefint Sum2 ; / EWGreenDef+EWYellowDefint Sum3 ; / NSGreenDef+NSRedDefunsigned char n; /用其值来判断是否为长按键void T0_INT(void) interrupt 1/*定时器T0,控制红绿灯的转换 */ num+;Sum1 = EWGreenDef +EWYellowDef+ EWRedDef;Sum2 = EWGreenDef+EWYellowDef;Sum3 = NSGreenDef+NSRedDef ;if( num =4000 )/*1s = 0.25ms *4000 */ if(temp=EWGreenDef)/* 东西向绿灯读秒 */ EWNowCount = EWGreen;EWGreenLight();EWGreen-;if(temp=NSRedDef) /* 南北向红灯灯读秒 */ NSNowCount = NSRed;NSRedLight();NSRed-;if(tempEWGreenDef) /* 东西向黄灯读秒 */ EWNowCount = EWYellow;EWYellowLight();EWYellow-;if(tempNSRedDef)/* 南北向绿灯读秒 */ NSNowCount = NSGreen;NSGreenLight();NSGreen-;if(temp Sum2)/* 东西向红灯读秒 */ EWNowCount = EWRed;EWRedLight();EWRed-;if(temp Sum3)/* 南北向黄灯读秒 */ NSNowCount = NSYellow;NSYellowLight();NSYellow-;if(EWGreen0) EWGreen = EWGreenDef; /* 重新装载初值 */ if(EWYellow0) EWYellow = EWYellowDef;if(EWRed0) EWRed = EWRedDef;if(NSGreen0) NSGreen = NSGreenDef;if(NSYellow0) NSYellow = NSYellowDef;if(NSRedSum1) temp = 0;num=0;void T1_INT(void) interrupt 3/* 定时器 T1,控制长按键 */ if(P0_1=0 | P0_0=0) n+; if(P0_1=1 & P0_0=1) n=0; unsigned char getKey(void) /* 判断哪个键被按下,并返回键值 */unsigned char key ;if(P0_0 = 0 | P0_1=0 | P3_3=0)delay_ms(10);if(P0_0=0)/* add键 */ key=2;while(!P0_0);if(n100)add=add+10;if(add=99)add=99;if(P0_1=0)/* decrease键 */ key=3;TR1 = 1;while(!P0_1);if(n100)add=add-10;if(add9) add = 9; /* 黄灯设置不能超过9 */ EWYellowDef = add ;EWYellow = EWYellowDef; /* 加载当前的时间 */ EWNowCount = EWYellow ; if(setClicks=3) /* 按 3下set键 */ NSGreenDef = add;NSGreen = NSGreenDef;NSNowCount = NSGreen ; if(setClicks=4) /* 按 4下set键 */ if(add9) add = 9;NSYellowDef = add ;NSYellow = NSYellowDef ;NSNowCount = NSYellow ; else if(!edit) /* 在非修改状态下,不闪烁 */ delay_time = 0;break;case 3:/* 按下decrease键进行的键处理 ,原理同add */ if(edit=1)if(setClicks=1)EWGreenDef = add;EWGreen = EWGreenDef;EWNowCount = EWGreen ; if(setClicks=2)if(add9) add = 9;EWYellowDef = add ;EWYellow = EWYellowDef;EWNowCount = EWYellow ; if(setClicks=3)NSGreenDef = add;NSGreen = NSGreenDef;NSNowCount = NSGreen ; if(setClicks=4)if(add9) add = 9;NSYellowDef = add ;NSYellow = NSYellowDef ;NSNowCount = NSYellow ; else if(!edit)delay_time = 0;break; void main()TMOD = 0x22; /*计时器T0和T1,且都用方式2 */TH0 = 6; /*0.25ms */TR0=1; /* 开定时器 */ET0=1;TH1 = 6; /*0.25ms*/ET1=1;EA=1; /* 开中断 */EWGreen = EWGreenDef;EWYellow = EWYellowDef;EWRed = EWRedDef;NSGreen = NSGreenDef;NSYellow = NSYellowDef;NSRed = NSRedDef;while(1)run();switch(FlashChange) /* 选择数码管显示的状态(同时显示或只显示其中一个) */case 0: EWDispControl(EWNowCount,delay_time);NSDispControl(NSNowCount,delay_time);break;case 1:EWDispControl(EWNowCount,delay_time);break;case 2:NSDispControl(NSNowCount,delay_time);break;Control.hunsigned char led= 0x3f, 0x06, 0x5b, 0x4f, 0x66,/040x6d, 0x7d, 0x07, 0x7f, 0x6f /59;void delay_ms(unsigned int a)/延时 a msunsigned int i;while(a-0)i = 70;while(i- 0) ;void EWdispHigh(unsigned char v)/显示东西向数码管P3_7 = 1;P3_6 = 0;P2 = v;delay_ms(2);void EWdispLow(unsigned char v)P3_6 = 1;P3_7 = 0;P2 = v;delay_ms(2);void NSdispHigh(unsigned char v)/显示南北向数码管P3_1 = 1;P3_0 = 0;P1 = v;delay_ms(2);void NSdispLow(unsigned char v)P3_0 = 1;P3_1 = 0;P1 = v;delay_ms(2);void NSDispCon
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 室内设计量房标准流程
- 医护联动:沟通与协作
- Acid-PEG4-NHS-ester-生命科学试剂-MCE
- 2025年人工智能法律政策图景研究报告
- 新能源汽车充电设施布局优化与2025年运营效率提升风险控制策略
- 智能家居系统互联互通标准下的智能家居行业市场细分及竞争格局报告
- 2025年医药行业CRO模式下的临床试验数据监查员培训与认证报告
- 纺织服装制造业智能化生产智能化生产设备技术升级项目报告
- 教育游戏化在虚拟现实教育中的应用与教学创新报告
- 2025年土壤污染修复技术产业现状与发展趋势研究报告
- 血液净化护士进修汇报
- 实现马克思主义中国化时代化新的飞跃
- 2024年广州天河区六年级语文小升初摸底考试含答案
- 人工智能中的因果驱动智慧树知到期末考试答案2024年
- 2024年合肥市公安局警务辅助人员招聘笔试参考题库附带答案详解
- 2024年中国建筑西南勘察设计研究院有限公司招聘笔试参考题库含答案解析
- DG-TJ08-2433A-2023 外墙保温一体化系统应用技术标准(预制混凝土反打保温外墙)
- 教师法制教育培训课件
- 众包物流模式下的资源整合与分配
- 铁路货运流程课件
- 四川省成都市成华区2023-2024学年七年级上学期期末数学试题(含答案)
评论
0/150
提交评论