51单片机交通灯课设论文.doc_第1页
51单片机交通灯课设论文.doc_第2页
51单片机交通灯课设论文.doc_第3页
51单片机交通灯课设论文.doc_第4页
51单片机交通灯课设论文.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基础工程设计(论文)说明书题 目: 十字路口交通灯的设计 院 (系): 电子工程与自动化学院 专 业: 电子信息科学与技术 学生姓名: 学 号: 指导教师: 2013年12月25日桂林电子科技大学基础工程设计论文摘要交通信号灯是我们生活中常见的一种工具,一般的十字路口都会有。红灯表示车辆需停下来等待,绿灯表示车辆可以通行,而黄灯时红灯和绿灯的过度时间,任何车辆都得注意,不得抢行。交通灯规范了我们行驶车辆,减少了交通事故的发生,让十字路口的交通能够尽然有序的,让我们的生活更加踏实。交通灯在生活中已经是不可缺少的了。交通信号灯控制系统方式很多。当今时代是一个自动化时代,交通灯控制等很多行业的设备都与计算机密切相关。随着大规模集成电路及计算机技术的迅速发展,以及人工智能在控制技术方面的广泛运用,智能设备有了很大的发展,是现代科技发展的主流方向。本次课程设计以模拟交通灯系统利用单片机AT89C51作为核心元件,实现了通过信号灯对路面状况的智能控制。关键字:交通信号灯 控制系统 智能设备 单片机 目 录引言11 设计任务22 方案的设计与系统组成23 硬件各功能的介绍33.1 AT89S52芯片简介33.1.1 I/O口33.1.2控制口33.1.3 电源及时钟33.2 数码管44 软件设计部分44.1 设计应实现的效果44.2 延时的设计54.3 程序设计的流程图55 系统调试与结论65.1 系统调试65.1.1硬件检测65.1.2软件调试65.2 结论与体会6谢 辞7参考文献8附 录9附录1:原理图9附录2:PCB图9附录3:原件清单10附录4:程序代码11桂林电子科技大学基础工程设计论文引言 这次的课程设计主要是利用单片机编程实现生活中的常见的常用的工具。通过软硬件的结合,提高动手能力和编程能力。加深对理论学习的理解与应用。交通信号灯有绿黄红三种颜色,绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。模拟交通灯控制系统的设计,主要以单片机为控制核心的交通灯,利用状态机的思想,通过单片机的定时器产生秒信号,控制十字路口的红绿黄灯交替点亮和熄灭,并且用LED数码管显示十字路口两个方向的剩余时间。1 设计任务 利用单片机实现东西方向和南北方向交叉的十字路口交通灯控制系统的要求:(1)东西方向为主干道,南北方向为干道;东西方向直行时间为9秒,南北方向直行时间为5秒,红灯和绿灯之间转换均有黄灯显示,显示时间2秒。十字路交通灯模拟图如图1所示(2)其余功能请参考实际交通灯系统自由发挥。 图1:十字路口交通灯模拟图 2 方案的设计与系统组成 本设计能模拟基本的交通控制系统,用红绿黄灯表示禁行,通行和等待的信号发生,还能进行倒计时显示。可以选用AT89C51单片机及外围器件构成最小控制系统,12个发光二极管分成4组红绿黄三色灯构成信号灯指示模块,1个LED东西南北各两个构成共同倒计时显示模块。 因此,本设计系统以单片机为控制核心,连接成最小系统,信号灯状态模块、LED数码管倒计时模块接受输出。单片机上电后,系统进入正常工作状态,执行交通灯状态显示控制,同时将时间数据倒计时输入到LED数码管上实时显示。系统的总体框图如2所示。单片机最小系统外围接口电路LED数码管显示红黄绿信号灯按键复位电路图2:系统的总体框图3 硬件各功能的介绍3.1 AT89S52芯片简介 AT89S52 是美国ATMEL 公司生产的低电压,高性能CMOS 8 位单片机,片内含8k bytes 的可反复擦写的Flash 只读程序存储器和256 bytes 的随机存取数据存储器(RAM),器件采用ATMEL 公司的高密度、非易失性存储技术生产,与标准MCS-51 指令系统及8052产品引脚兼容,片内置通用8 位中央处理器(CPU)和Flash 存储单元,功能强大AT89S52 单片机适合于许多较为复杂控制应用场合。AT89S52芯片引脚结构如图3所示:10 图3:AT89S52芯片引脚图 AT89S52从引脚功能分为三大部分,分别是I/O口、控制口、电源及时钟。3.1.1 I/O口 其中I/O口有P0,P1,P2,P3这4个8位口,这次设计使用P1口接发光二极管,如下图。为了是二极管发光的亮度足够亮,所以二极管一段接VCC,又为了保护二极管,它与一个电阻串联。显示时间的数码管接在P0口。3.1.2控制口 (1)EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000HFFFFH),EA 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU 则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是该器件是使用12V 编程电压Vpp。(2)RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。3.1.3 电源及时钟 Vcc:电源电压 GND:地 XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。 XTAL2:振荡器反相放大器的输出端。3.2 数码管ED数码管(LED Segment Displays)是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。LED数码管常用段数一般为7段有的另加一个小数点。LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。 7段数码管引脚图如图4所示。 图4:7段数码管引脚图此次设计用的是共阳数码管,将其公共电极3和8脚接VCC,其余每个引脚控制一段。段选码与显示字符对应表如表1。段选码C0HF9HA4HB0H99H92H82HF8H80H显示字符012345678段选码90H88H83HC6HA1H86H8EH显示字符9ABCDEF 表1:段选码与显示字符对应表4 软件设计部分4.1 设计应实现的效果设计的交通灯工作过程为:(1)主干道东西通车,干道南北等待,即是东西方向亮绿灯,南北方向亮红灯,时间都为9秒;(2)过度阶段:东西南北方向都闪黄灯,时间为2秒;(3)干道南北通车,主干道东西等待,即是南北方向亮绿灯,东西方向亮红灯,时间都为5秒;(4)过度阶段:东西南北方向都闪黄灯,时间为2秒。交通状态表如表2。交通灯工作模式东西方向绿灯亮9秒黄灯闪2秒红灯亮5秒黄灯闪2秒南北方向红灯亮9秒绿灯亮5秒 表2:交通状态图 4.2 延时的设计 51单片机有2个定时器,分别有4种工作方式,。此次设计选用的是定时器1工作方式1,则TMOD=10H。选用延时时间为1ms,由于使用的晶振是12M晶振,根据下面式子: ( 216-T0)*时钟周期*12=1ms ( 216-T0)*1/(12*106)*12=1*10-3 算出T0=64536D=FC18H 由于定时的延时时间为1ms,而交通灯闪烁的时间间隔为1s,只需定时延时循环1000次即可。 开始4.3 程序设计的流程图初始化所有灯都灭东西方向亮绿灯,南北方向亮红灯是否到9秒N东西方向、南北方向都闪黄灯Y是否到2秒NY东西方向亮红灯,南北方向亮绿灯是否到5秒NY东西方向、南北方向都闪黄灯是否到2秒NYx 图5:程序流程图5 系统调试与结论5.1 系统调试5.1.1硬件检测 第一步:目测,检查外部的各种元件或则电路是否有断点; 第二步:用万用表测试。先用万用表复核目测中有疑问的连接点,再检测各种电源线与地线之间是否有短路现象; 第三步:加电检测。给板加电,检测所有的插座或是器件的电源端是否符合要求的值; 第四步:是联机检查。因为只有用单片机开发系统才能完成对用户系统的调试。5.1.2软件调试软件调试是通过对用户程序的编译、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。程序后,编辑,查看程序是否有逻辑的错误。5.2 结论与体会 交通灯基本功能可以实现,数码管显示的倒计时也基本正确,但没有附加功能,自己动手制作的电路板不够美观。 经过这次课程设计,我从实践中学到很多东西,当然也在实践中发现自己的很多的不足,比如:动手能力还需加强,出错了不够耐心,理论知识不够扎实等等。刚做好第一块板时,急于就成,花费了很多精力和时间,在科协做好板后便迫不及待地焊上元器件,而结果是失败的。这深深打击了我的积极性,一下子十分浮躁。理清情绪和思路后,我从新检查了自己的电路图和硬件,发现是下载接口与单片机的接口搞错了,于至于怎么都下载不了,通过在电路板上的简单修改,终于可以下载程序了。我深深的体会到,理论和实践的中间需要我们的不断努力和尝试,我们不能一下子就被困难吓到,应该耐心地找出问题,解决问题,这才是关键的。再此过程中,也有很多同学帮忙,也让我体会到了团结互助的重要性。由于PCB布线经验不够,做出的板太大,浪费资源;在功能方面还是可以增加和拓展的地方。希望能在下次的设计中做得更好。谢 辞感谢学院给我们提供这样的实践动手机会,并通过课程设计使我们能够有机会将书本上学到的知识运用到的实际中去。在课设过程中于老师给了我很多的指导和帮助,并监督我及时完成了本次课程设计,在此特别感谢胡老师和给予我帮助的同学。参考文献1 李群芳. 单片微型计算机与接口技术(第三版).电子工业出版社, 2008.5.2 范翠丽.Protel DXP 实用培训教程.清华大学出版社. 2005.4.3 谭浩强C语言程序设计(第2版).清华大学出版社,.2008.11附 录 附录1:原理图 附录2:PCB图 附录3:原件清单 附录4:程序代码#include #define uchar unsigned char#define uint unsigned intsbitEW_red = P16;sbitEW_green = P13;sbitEW_yellow = P15;sbitNS_red = P12;sbitNS_green = P10;sbitNS_yellow = P11;uchar code table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e; char count=9;/*以下是延时函数(利用定时器)*/void Delay_ms(uint xms)while(xms!=0)TMOD=0x11;TR1=1;TH1=0xfc;TL1=0x66;while(TF1!=1);TF1=0;xms-;TR1=0;/*以下是主函数*/void main(void) EW_red=1; EW_green=1; EW_yellow=1; /东西行NS_red=1; NS_green=1; NS_yellow=1;while(1) for(count=9;count-1;count-) EW_red=1; EW_green=0; EW_yellow=1; /东西行NS_red=0; NS_green=1; NS_yellow=1;P0=tablecount;Delay_ms(1000); for(count=2;count-1;count-) /东西南北黄灯闪 EW_red=1; EW_green=1; EW_yellow=EW_yellow;NS_red=1; NS_green=1; NS_yellow=NS_yellow;P0=tablecount;Delay_ms(1000); for(count=5;count-1;c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论