Ipzrbh单片机交通灯控制毕业设计.doc
生命是永恒不断的创造,因为在它内部蕴含着过剩的精力,它不断流溢,越出时间和空间的界限,它不停地追求,以形形色色的自我表现的形式表现出来。泰戈尔 指导老师: 杨富强作者: 张磊 学号: 系别: 机电工程系 专业:矿山机电 日期: 2010-5-29内容摘要年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MSC-51系列单片机ATSC51和可编程并行I/O接口芯片80C51为中心器件来设计交通灯控制器,实现了能根据实际车流量通过8051芯片的P1口设置红、绿灯燃亮时间的功能;红绿灯循环点亮,倒计时剩秒时黄灯闪烁警示。本系统实用性强、操作简单、扩展功能强本设计以单片机为核心,以LED灯作为直行和左右拐弯指示完成了题目要求的所有功能。关键字: 单片机 、MSC-51、交通灯、红绿灯设计目录一:交通灯的做题意义和选题背景1. 传统交通灯简介42. 单片机的发展历程.43. 单片机的特点.54. 80C51单片机芯片简介.55. 单片机内部结构106. 单片机内部结构图107. 单片机执行程序图11二: 十字路口智能交通灯系统硬件设计111. 设计要求.112. 交通灯管理系统电路原理图.123. 硬件选择.124. 单片机角路图.145. 红绿灯工作参考程序流程图.176. 十字路口交通灯设计程序.18三:实验步骤21四:心得体会.22五:参考文献十字路口智能交通灯一, 本次课程设计的做题意义和选题背景由于我国经济的快速发展从而导致了汽车数量的猛增,大中型城市的城市交通,正面临着严峻的考验,从而导致交通问题日益严重,其主要表现如下:交通事故频发,对人类生命安全造成极大威胁;交通拥堵严重,导致出行时间增加,能源消耗加大;空气污染和噪声污染程度日益加深等。日常的交通堵塞成为人们司空见惯而又不得不忍受的问题。在这种背景下,结合我国城市道路交通的实际情况,开发出真正适合我们自身特点的智能信号灯控制系统已经成为当前的主要任务。对交叉口实行科学的管理与控制是交通控制工程的重要研究课题,是保障交叉口的交通安全和充分发挥交叉口的通行能力的重要措施,是解决城市交通问题的有效途径。所以,改变和完善我国现有的交通系统已成为当务之急。交通灯信号灯的出现是人类历史上的一次重大改革,使人类的聚居生活,产生了深远的影响。使交通得以有效管制,对于疏导交通流量,提高道路通行能力,减少交通事故有明显效果。如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。随着电子技术的发展,利用单片机技术对交通灯进行智能化管理,已成为目前广泛采用的方法。1传统交通灯的简介在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。1914年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市C5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。而中国最早的马路交通灯却是诞生于1928年的上海英租界。从最早的手牵皮带到20世纪50年代的电气控制,2单片机的 发展历程 单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。 在MCS-51系列单片机中,有两个子系列:51子系列和52子系列。每个子系列有诺干中型号。51系列有8051、8751和8031三个型号,后来经过改进产生了80c51、87c51、80c31三个型号;52系列有5021、8752、8032三个型号,改进后的型号是80c52/87c52、80c32。改进后的型号更加省电。52系列比对应的51系列增加了定时器T2并将内部程序存贮器增加到8KB。Inter公司停止生产MCS-51系列单片机之后将生产权转让给了许多其他公司,于是出现了许多与Mcs-51兼容的单片机。现在生产mcs-51兼容单片机的公司对其进行了不同程度的改进和提高。我们现在使用比较的多的是AT89C51/AT89s51等。 通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。3单片机的特点(1)性价比高,开发周期短,易于产品化,(2)集成度高,可靠性好,抗干扰性强,(3)功能完善,接口多样,(4)低功耗、低电压一般电源供电电压在53V范围内单片机都能正常工作,供电的下限可达12V。(5)总线多样,易于扩展单片机外部的典型三总线结构,方便系统构扩展,构成各种规模的应用系统。外部总线增加了I2C及SPI等串行总线方式, 可根据需要进行并行或者串行扩展。480C51单片机芯片简介80C51单片机引脚图80C51是INTEL公司MCS-51系列单片机中最基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它继承和扩展了MCS-48单片机的体系结构和指令系统。 80C51内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。 此外,80C51还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。80C51有PDIP(40pin)和PLCC(44pin)两种封装形式。5MCS51单片机内部结构有8大部分.一个8 位的中央处理器 CPU(又称为微处理器)中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。有 128字节 的片内数据存储器RAM8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。.4KB片内 程序存储器ROM或EPROM8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据.片内 18个 特殊功能寄存器(SFR)0F0H SFR可寻址区0E0H 0D0H0C8H0B8H0B0H0A8H0A0H98H90H88H80H特殊功能寄存器SFR0FFH数据缓冲区位寻址区R7R0 3组(8字节)2组1组0组80H7FH30H2FH20H 1FH00H片内特殊存储器分布图.4个8位 的并行输入输出I/O口(PIO)8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输P0口 P0.0P0.7 输入与输出 分时的传送地址低8位与数据线P1口 P1.0P1.7 输入与输出 无第二功能P2口 P2.0P2.7 输入与输出 传送地址的高8位P3口 P3.0P3.7 输入与输出 P3.0RXD:串行口输入端P3.1TXD:串行口输出端P3.1TXD:串行口输出端P3.2:外部中断0中断请求输入端P3.3:外部中断1中断请求输入端P3.4T0:定时器/计数器0外部输入端P3.5T1:定时器/计数器1外部输入端P3.6:外部数据存储器写选通信号P3.7:外部数据存储器读选通信号.1个 串行口I/O(SIO/UART)完成单片机与其他微机的之间的串行通信.2/3个16位 定时器/计数器(TIMER/COUNTER).可处理 5个中断源,两级可程序优先级的中断系统其中含有MCS-51指令集含 111条指令,按照指令操作功能话费有五类:<1>数据传送指令(28)<2>算术运算指令(24)<3>逻辑运算及转移指令(25)<4>控制转移指令(22)<5>位操作指令(12)6>单片机内部结构图单片机内部结构图80C51单片机的内部结构框图。除去图中的存储电路和I/O部件,剩下的是CPU,它可以分为运算器和控制器两部分。运算器功能部件包括算术逻辑运算单元ALU、累加器ACC、寄存器B、暂存寄存器TMP1、TMP2、程序状态字寄存器PSW等。控制器功能部件包括程序计数器PC、指令寄存器IR、指令译码器ID、定时控制逻辑电路CU、数据指针寄存器DPTR、堆栈指针SP及时钟电路等。7>指令执行过程示意图提供地址读取指令程序的计的数器PC指令01指令02指令03、程序存储器ROM指令操作码指令译码运算器ALU程序跳转指令修改地址PC运算指令外部设备接口数据存储器RAM数据传送指令指令执行过程示意图一条指令的执行过程为:取指令分析指令执行指令规定的操作二:十字路口智能交通灯系统硬件设计1;设计要求:主、支干道交替通行,主、支干道每次通行时间均为20秒;绿灯亮时表示可以通行,红灯亮时表示禁止通行,红绿灯之间的转换通过黄灯来实现。每次绿灯变红灯时,黄灯先闪3秒(此时另一干道上的红灯不变);十字路口要求有数字显示,作为时间提示,以便人们更直观地把握时间。2:交通灯管理系统电路原理图西交通灯管理系统电路原理图20秒1秒20秒东西方向灯红灯黄灯绿灯南北方向灯绿灯红灯红灯从上表中我们可以很容易的看出:(1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯,此道车辆通过,行人禁止通行。时间为20秒。(2)黄灯闪烁1秒,警示车辆和行人红、绿灯的状态即将切换。 (3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行,时间为20秒。(4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。3:硬件选择选用8051单片机一片,红、黄、绿LED交通显示灯各两个,导线若干,单片机试验机。80C51P2.5 P2.4 P2.3 P2.2 P2.1 P2.0L5 L4 L3 L2 L1 L0LED显示电路单片机端口与LED显示灯的链接4. 单片机角路图单片机角路图上面两个图相会链接就是简单的交通灯实验图电路图。其中21L0: 22L1 23L2 24L3 25L4 26L5 按照这个顺序进行连接然后进行试验。通过单片机的P1口控制实验仪上6个LED按照交通灯的变化规律循环发光,模拟十字路口(假设为东西南北走向)交通灯。实验电路如下,L5、L4、L3模拟东西方向交通灯,L2、L1、L0模拟南北方向交通灯。通过一条SETB 指令,可使某一灯亮,通过一条CLR 指令,可使某一灯灭。5:红绿灯工作参考程序流程图南北绿灯,东西红灯延时20秒南北绿灯闪3次转黄灯,东西红灯,延时一秒南北红灯,东西绿灯延时20秒东西绿灯闪3次转黄灯,南北红灯,延时一秒RetEnd6:十字路口交通灯设计程序LEDEQUP1 ORG0000H LJMPSTART ORG0030HSTART:MOVSP,#60HLCALLS0;初始状态(都是红灯) LCALLS1 ;南北绿灯,东西红灯 LCALLS2 ;南北绿灯闪转黄灯,东西红灯 LCALLS3 ;南北红灯,东西绿灯 LCALLS4 ;南北红灯,东西绿灯闪转黄灯 LJMPSTARTS0: MOVA,#B;南北红灯,东西红灯 MOVLED,A MOVR2,#10;延时1m秒 LCALLDELAY S1: MOVA,#B ;南北绿灯,东西红灯 MOVLED,A MOVR2,#200 ;延时20秒 LCALLDELAY RETS2: MOVR3,#03H ;南北绿灯闪3次FLASH:MOVA,#B ;南北绿灯灭,东西红灯亮 MOVLED,A MOVR2,#03H LCALLDELAY MOVA,#B ;南北绿灯,东西红灯 MOVLED,A MOVR2,#03H LCALLDELAY DJNZR3,FLASH MOVA,#B ;南北转黄灯,东西红灯 MOVLED,A MOVR2,#10 ; 延时1秒 LCALLDELAY RETS3: MOVA,#B ;南北红灯,东西绿灯 MOVLED,A MOVR2,#200 ;延时20秒 LCALLDELAY RETS4: MOVR3,#03H ;东西绿灯闪3次FLASH1:MOVA,#B;南北红灯亮,东西绿灯灭 MOVLED,A MOVR2,#03H LCALLDELAY MOVA,#B ;南北红灯亮,东西绿灯亮 MOVLED,A MOVR2,#03H LCALLDELAY DJNZR3,FLASH1 MOVA,#B ;南北红灯,东西黄灯 MOVLED,A MOVR2,#10 ;延时1秒 LCALLDELAY RETDELAY: PUSH,02H ;延时子程序 PUSH01H PUSH00HDELAY1:MOVR1,#00HDELAY2:MOVR0,#0C2H DJNZR0,$ DJNZR1,DELAY2 ;延时100ms DJNZR2,DELAY1 POP00H POP 01H POP02H RET END三:试验步骤:1: 选择一个空间,建立一个文件夹TMD-1。2:打开软件3:在这个文件夹中建立一个工程TMD-1:点击下拉菜单工程新的工程。4:点击保存之后,在左侧按生产厂商来选则所需的单片机型号,选好之后点击确定。5:建立Target1:这部操作时需要更改出错、输出的单片机设置: 6;新建文件:点击下拉菜单文件新建,出现一个;Txt 界面7:建立A51 文件:点击下拉菜单文件保存8:加载文件:光标在Source Group1 上右键,点击Add Files to GroupSource、Group1。选择刚才新建的A51 文件9:写完汇编程序后,按F7 键则对程序进行汇编、连接,生成目标文件(.HEX 文件)、映象文件(.M51 文件)和列表文件(.LST 文件)等各种文件。如编译有错误,则在屏幕底底部显示出来,双击错误类型,即对源文件中底错误处予以标注,对错误处改正之后,再按F7 按键,重新汇编、连接,直到全部正确为止。四:心得体会通过这次交通灯的课程设计,使我得到了一次用专业知识、专业技能分析和解决现实问题的能力。使我在单片机的基本原理、单片机应用学习过程中,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步,为日后成为一名合格的应用型人才打下良好的基础。综合课程设计让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更深层次的理解和认识。在此,由于自身能力有限,在课程设计中碰到了很多的问题,我通过查阅相关书籍、资料以及和周围同学交流得到解决。还有交通灯是我们生活中非常常见的一种东西,对于我们学以致用的这种能力得到了很好锻炼,能够为我们以后的工作于学习打下基础。通过合作,我们的合作意识得到加强。合作能力得到提高。上大学后,很多同学都没有过深入的交流,在设计的过程中,我们用了分工与合作的方式,每个人互责一定的部分,同时在一定的阶段共同讨论,以解决分工中个人不能解决的问题,在交流中大家积极发言,和提出意见,同时我们还向别的同学请教。在此过程中,每个人都想自己的方案得到实现,积极向同学说明自己的想法。能过比较选出最好的方案。在这过程也提高了我们的表过能力。 在设计的过程中我们还得到了老师的帮助与意见。在学习的过程中,不是每一个问题都能自己解决,向老师请教或向同学讨论是一个很好的方法.参考文献:1李明 毕万新主编 单片机原理与接口技术,大连理工大学出版社2张毅坤主编. 单片微型计算机原理及应用.西安电子科技大学出版社