毕业设计(论文)基于51单片机的十字路口交通灯控制系统设计.doc
《毕业设计(论文)基于51单片机的十字路口交通灯控制系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于51单片机的十字路口交通灯控制系统设计.doc(35页珍藏版)》请在三一办公上搜索。
1、系: 电子信息工程系 专 业: 电子信息工程技术 班 级: 电信2班 学 号: 学生姓名: 起讫日期: 2009年11月7日 指导教师: 审核日期: 前 言本课程设计是在学完单片机原理及课程之后综合利用所学单片机知识完成一个单片机应用系统设计并在实验室实现。该课程设计的主要任务是通过解决一、两个实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后工作打下一定的基础。在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19
2、世纪就已出现了。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。通过三个星期的学习,本人对单片机的结构和功能已有了初步的了解和认识。单片机在交通控制中起到了举足轻重的作用,掌握了单片机的工作原理也就基本了解了交通灯的运做原理。作为一个学生,为了更好地掌握单片机的结构和功能,为了进一步加强自己的实践能力,本人设计了以下的一款交通灯。 目录前言3目录4一、毕业设计的要求和内容5二硬件电路说明6三软件部分说明11四.系统设计及总结21附录一主要材料22附录二 原理图23附录三PCB板型24附录四3D效果图25附录五 流程图26附录六 源程序和注释说明
3、27致谢35参考文献35一、毕业设计的要求和内容1.1工作要求本次毕业设计,是针对实际要求,灵活应用所学知识,独立进行系统综合设计的过程,以达到巩固单片机基础知识、掌握单片机系统开发过程和提高动手实践能力的目的。1.2、技术要求某十字路口,如下图所示,设计一个十字路口交通灯信号控制器,指挥交通车的通行。要求如下:1)东西通道和南北通道交替通行,东西通道每次放行时间大于南北通道每次放行时间。2)绿灯亮表示可以通行,红灯亮表示禁止通行。3)每次绿灯变红灯时,绿灯先闪转变黄灯(此时另一干道上的红灯不变)。4)十字路口要有数字显示,作为时间提示,以便人们更直观地把握时间。具体要求东西通道、南北通道通行
4、时间及黄灯亮的时间均以秒为单位作减计数。二硬件电路说明 2.1电路设计原理图 见附录 2.2电路工作原理 本设计是以89S51为主控芯片 ,利用P1口控制74LS240(八反相缓冲器,线驱动器)驱动发光二极管模拟交通灯。倒计时显示部分采用串口实现。串口工作在方式0时通过外接移位寄存器74LLS164实现串并转换。需要显示的数据经RXD端输出 经过74LS164串并转换输出到共阳极的LED数码管显示,利用T0定时器进行1S定时。 2.3 89S51 单片机介绍 MCS-51单片机是美国INTE公司于1980年推出的产品,典型产品有 8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、80
5、51(芯片采用HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰)和8751等通用产品,一直到现在, MCS-51内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、89C51等),各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。同样的一段程序,在各个单片机厂家的
6、硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51, PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51指的是ATMEL公司的 AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取带了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。不过在市场化方面,89C51受到了PIC单片机阵营的挑战,89C51最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP功能等新功能才能更好延续MCS-51的传奇。89S51就是
7、在这样的背景下取代89C51的,现在,89S51目前已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel目前公司已经停产AT89C51,将用AT89S51代替。89S51在工艺上进行了改进,89S51采用0.35新工艺,成本降低,而且将功能提升,增加了竞争力。89SXX可以像下兼容89CXX等51系列芯片。同时,Atmel不再接受89CXX的定单,大家在市场上见到的89C51实际都是Atmel前期生产的巨量库存而以。如果市场需要,Atmel当然也可以再恢复生产AT89C51。89S51相对于89C51增加的新功能包括:- 新增加很多功能,性能有了较大提升,价格基本不变,甚至比89C
8、51更低!- ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。- 最高工作频率为33MHz,大家都知道89C51的极限工作频率是24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。- 具有双工UART串行通道。- 内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。- 双数据指示器。- 电源关闭标识。- 全新的加密算法,这使得对于89S51的解密变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。- 兼容性方面:向下完全兼容51全部字系列产品。比如8051、89C51等等早期M
9、CS-51兼容产品。也就是说所有教科书、网络教程上的程序(不论教科书上采用的单片机是8051还是89C51还是MCS-51等等),在89S51上一样可以照常运行,这就是所谓的向下兼容。比较结果:就如同INTEL的P3向P4升级一样,虽然都可以跑Windows98,不过速度是不同的。从AT89C51升级到AT89S51 ,也是同理。和S51比起来,C51就要逊色一些,实际应用市场方面技术的进步是永远向前的2.3 关于74LS240 由于单片机的驱动能力太弱 所以给加了 驱动电路 有因为发光二极管驱动 功率不大所以我选用了八反相缓冲器/8位三态门电路74LS240无锁存功能 2.4 介绍74LS1
10、64本设计采用164把串行口逐位输出的数据进行串并转换进而控制LED的显示 2.5 单片机最小系统 2.6 改进部位本设计添加了应急通行 用按钮开关控制东西南北的应急通行信号 其中东西方向接外中断0 南北接外中断1。按一下按钮该方向通行 另外方向停止 按两下恢复原样 。具体看原理图2.8 框图状态持续时间/S东西方向南北方向绿黄红绿黄红11灭灭亮灭灭亮230亮灭灭灭灭亮33灭闪灭灭灭亮420灭灭亮亮灭灭53灭灭亮灭闪灭630亮灭灭灭灭亮循环三软件部分说明3.11 利用定时器定时1S定时/计数器的四种工作方式工作方式0:定时/计数器的工作方式0称之为13位定时/计数器方式。它由TL的低5位和TH
11、的8位构成13位的计数器,此时TL的高3位不用。工作方式2:在工作方式2中,只有8位参与计数,而高8位是不参与计数的,用作预置数的存放,这样计数范围就小了,每当计数溢出,就会打开T0的高、低8位之间的开关,预置数就进入低8位。当然这是由硬件自动完成的,不需要我们去操心。通常工作方式2用于波特率发生器,对于这种用途,定时器就是为了提供一个时间基准,计数溢出后不需做任何的事情,要做的仅仅只有一件,就是重新装入预置数,再开始计数,而且中间不能有任何的延迟,可见这个任务用这种工作方式来完成是最妙不过了。工作方式3:在这种工作方式下,T0被拆成2个独立的定时/计数器来用。其中,TL0可以构成8位的定时器
12、或计数器工作方式;而TH0则只能作为定时器用,我们知道定时/计数器使用时需要有控制,计满后溢出需要有溢出标记,T0被分成两个来用,那就要两个控制及溢出标记了,从何而来呢?TL0还是用原来的T0的标记,而TH0则借用T1的标记,如此一来T1不是标记、控制可用了吗?是的,在一般情况下,只有在T1以工作方式2运行时,才让T0工作于方式3。工作方式1:工作方式1是16位的定时/计数器方式,将TMOD的M1M0设为“01”即可,其他特性与工作方式0相同。3.1.2 定时1S十字路口交通灯模拟控制器定时器采用工作方式1,先定时125MS,然后在定时中断程序中累加中断次数,8次为一秒,这样就可以起到定时1S
13、的功能。工作方式由工作方式控制寄存器(TMOD)决定,FR寄存器TMOD用于2个定时器/计数器T1/T0的工作方式设定,各位的含义表示如下:GATE:门控位,定义T1/T0的启动方式,C/T-:定时/计数功能选择位。为“0”作定时器用;为“1”,作计数器用。M1M0:工作方式选择位。00 方式0 13位计数器01 方式1 16位计数器10 方式2 初值自动重装8位计数器11 方式3 2个8位计数器,仅适用于T0十字路口交通灯模拟控制器设计采用6M晶振,因此定时125MS,可用下列语句实现。工作方式1是16位计数结构的工作方式,计数器由TH全部8位和TL全部8位构成。所以初始化定时器T0工作方式
14、1,定时125MS的语句如下: MOV TMOD,#01 MOV TH0,#3CH MOV TL0,#0B0H定时1S在定时器0中断程序中完成,即计数八次为1S。定时器中断初始化进入定时器0中断程序如下 : SETB EA ;开中断定时是否到1S SETB ET ; 定时器0允许中断 SETB TR ;开始定时定时器定时1S的中断流程图定时时间减1计数值加1 定时不变出定时器0中断3.2外中断程序对于外中断必须有中断的初始化程序、中断服务程序。3.2.1 中断的初始化步骤1) 要使用中断则首先必须中断中断允许。2) 硬件的初始化:设置引脚连接设置I/O口的输入输出。3) 软件的初始化:设置中断
15、寄存器,设置中断服务地址,清除中断标志,设置中断触发模式。4) 使能中断。外中断是由外部原因引起的中断,有两个中断源,即外中断0和外中断1,中断请求信号由引脚P3.2和P3.3输入。外中断请求信号弹有两种方式,一是电平方式,二是脉冲方式,可通过有关控制位的定义进行规定。电平方式为低电平有效,只需在单片机的(INT0)和(INT1)中断请示输入端采样到有效的低电平时,就会激活外部中断。脉冲方式则在脉冲的后负跳沿有效,即在相邻两个机器周期对中断请求引入端电平进行采样中,如前一次为高,后一次为低即为有效中断请求。这就要求在这种中断方式,中断请求信号的脉冲宽度必须大于一个机器周期,以保证电平变化能被单
16、片机采样到。3.2.2 定时器控制寄存器(TCON)外中断请求方式的控制位在定时控制寄存器TCON中的位(IT0)和(IT1)两个位,当IT0(IT1)=0为电平方式,IT0(IT1)=1为脉冲方式。同时此寄存器中的位89(IE0)和(IE1)为外中断请求标志位,当CPU采样到INT0(INT1)端出现有效中断请求时,此位由硬件 置1。在中断响应完成后转向中断服务时,再由硬件自动清除。3.2.3 中断允许控制寄存器(IE)下面本文对有关控制位作说明:EA中断允许总控制位。EA=0,中断总禁止,禁止所有中断。EA=1,中断总允许,总允许位打开后,各中断的允许或禁止由各中断允许控制位设置决定。.E
17、X0(EX1)外部中断允许控制。EX0(EX1)=0,禁止外部中断。EX0(EX1)=1,允许外部中断。.EX0(ET1)定时/计数中断允许控制位。ET0(ET1)-0,禁止定时/计数中断。ET0(ET1)=1,允许外部中断。ET0(ET1)=1,允许定时/计数中断。.ES串行中断允许控制位。ES=0,禁止串行中断。ES=1,允许串行中断。中断的允许和禁止就是中断的开放和关闭,中断允许就是开放中断的禁止就是关闭中断。从以上说明我们可看出,MCS-51的中断允许是通过两级控制的,以EA位作为总中断控制位,以各中断挖掘位为分控制位。当总中断位为禁止状态时,不管分控制位是允许或禁止,整个中断都是禁止
18、的。MCS-51单片机复位后,IE=00H,因此中断处于禁止状态。值得一提的是:单片机中断响应后还会自动关闭中断,因此在转入中断服务程序后,应由软件指令禁止中断。 3.2.4 中断优先级控制寄存器(IP)MCS-51的中断优先级控制比较简单,只设置了高、低两个级别的有限级,各中断源的优先级别先级别由优先寄存器(IP)进行控制。.PX0外中断0(INT0)优先级控制位。.PI0定时中断0优先级控制位。.PX1外中断1优先级控制位。.PT1定时中断1优先级控制位。.PS串行中断优先级控制位。控制位=0,优先级为低。控制位=1,优先级为高。中断优先级是为了中断嵌在服务的,控制原则为:1) 低优先级中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 51 单片机 十字路口 交通灯 控制系统 设计
链接地址:https://www.31ppt.com/p-3978394.html