基于单片机的交通灯控制的设计.doc

上传人:laozhun 文档编号:4148494 上传时间:2023-04-07 格式:DOC 页数:32 大小:559KB
返回 下载 相关 举报
基于单片机的交通灯控制的设计.doc_第1页
第1页 / 共32页
基于单片机的交通灯控制的设计.doc_第2页
第2页 / 共32页
基于单片机的交通灯控制的设计.doc_第3页
第3页 / 共32页
基于单片机的交通灯控制的设计.doc_第4页
第4页 / 共32页
基于单片机的交通灯控制的设计.doc_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《基于单片机的交通灯控制的设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的交通灯控制的设计.doc(32页珍藏版)》请在三一办公上搜索。

1、安徽建筑工业学院 毕 业 设 计(论 文)系 (院) 电子与信息工程学院 专 业 班 级 学生姓名 学 号 课 题 基于单片机的交通灯控制的设计 指导教师 2012年 6 月10日摘要近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MSC-51系列单片机AT89C

2、51来设计交通灯控制器,实现了能根据实际车流量通过8051芯片的P1口设置红、绿灯燃亮时间的功能;红绿灯循环点亮(交通灯信号通过PA口输出,显示时间直接通过8255的PC口输出至双位数码管)。本系统实用性强、操作简单、扩展功能强。 关键词:AT89C51单片机,交通灯,数码管。AbstractIn recent years, with the rapid development of science and technology, the application of SCM is unceasingly thorough, while traditional control testing

3、technology is updated. In real-time detection and automatic control of single-chip microcomputer application system, often used as a core component, knowledge is not only the MCU, still should according to specific hardware structure, software and hardware, the perfect combination.Pedestrian crossin

4、g transports, bustling, garage, pedestrian humanitarian, orderly driveway. So what to realize it in order? The traffic light automatic command system. Traffic light control many ways. This system USES MSC - 51 series microcontroller AT89C51 to design the controller, lights, can according to actual t

5、raffic through the 8051 chips red, green, P1 mouth setting time function; the depth Traffic light (when the traffic signal output by mouth that time, PA directly through the mouth 8255 PC output to double a digital tube). This system is practical, simple operation and function expansion.Keywords:AT8

6、9C51SCM,traffic lights,Digital tube.目录引言11 课题背景与方案设计21.1 交通灯研究的背景和意义21.2 总体设计方案41.3 设计步骤52 单片机概述62.1 单片机的发展历程62.2 单片机的特点62.3 AT89C51单片机简介73 系统硬件设计113.1 系统总框图113.2 控制流程分析113.3 时钟电路113.4 复位电路123.5 显示电路133.5.1 LED数码管显示器133.5.2 共阴极数码管与共阳极数码管143.5.3 数码管共阴与共阳的驱动电路153.6 电路原理图163.6.1 原理图163.6.2 整体电路连接164 软件

7、流程图184.1主程序流程图184.2 P0、P1、P2口显示状态编码表195 程序源代码206 程序运行仿真图24结论26致谢27参考文献28基于单片机的交通灯控制的设计电子与信息工程学院 电子信息工程专业 2008级2班 xx指导老师 xxx引言随着人口的快速增多,交通工具的爆炸性的发展,以及道路资源的有限性,交通控制就应运而生,而人类的生活、工作环境中,交通扮演者极其重要的角色,人们的出行都无时不刻与交通打着交道。我国经济的快速发展从而导致了汽车数量的猛增,大中型城市的城市交通,正面临着严峻的考验,从而导致交通问题日益严重,其主要表现如下:交通事故频发,对人类生命安全造成极大威胁;交通拥

8、堵严重,导致出行时间增加,能源消耗加大;空气污染和噪声污染程度日益加深等。日常的交通堵塞成为人们司空见惯而又不得不忍受的问题,在这种背景下,结合我国城市道路交通的实际情况,开发出真正适合我们自身特点的智能信号灯控制系统已经成为当前的主要任务。随着电子技术的发展,利用单片机技术对交通灯进行智能化管理,已成为目前广泛采用的方法。显然,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以

9、直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。1 课题背景与方案设计1.1 交通灯研究的背景和意义随着世界范围内城市化和机动化进程的加快,城市交通越来越成为一个全球化的问题。城市交通基础设施供给滞后于高速机动化增长需求,道路堵塞日趋加重,交通事故频繁,环境污染加剧等问题普遍存在。特别是在一些发展中国家,不仅没有在城市规划布局、城市交通发展模式选择与运营机制

10、等方面吸取发达国家城市交通发展的经验与教训,而且重复着它们在高速机动化发展中所犯过的许多错误,无论是大中城市还是新兴的中小城市,几乎都没有前瞻性地解决好城市交通问题。自改革开放以来,我国的城市规模和经济建设都有了飞速的发展,城市化进程在逐步加快,城市人口在急剧增加,大量流动人口涌进城市,人员出行和物资交流频繁,使城市交通面临着严峻的局势。如何解决城市交通问题已成为全社会关注的焦点和大众的迫切呼声。不同的城市有不同城市的问题,但共性就是混合交通流问题。在交叉口如何解决混合交通流中的相互影响或彼此的相互影响,就是解决问题的关键!随着我国城市化建设的发展,越来越多的新兴城市的出现,使得城市的交通成为

11、了一个主要的问题。同时随着我国经济的稳步发展,人民的生活水平日渐提高,越来越多的汽车进入寻常老百姓的家庭,再加上政府大力发展的公交、出租车,车辆越来越多了。这不仅要求道路要越来越宽阔,而且要求有新的交通管理模式的出台。旧有的交通控制系统的弊病和人们越来越高的要求激化了矛盾,使原来不太突出的交通问题被提上了日程。现在有关部门愈来愈多的注重在交通管理中引进自动化的智能化技术,比如“电子警察”、自适应交通信号灯以及耗资巨大的交通指挥控制系统等。对交通的管控能力,也就从一个侧面体现了这个国家对整个社会的管理控制能力,因此各国都很重视用各种高科技手段来强化对交通的管控能力。从技术条件分析,我国的城市交通

12、技术应用水平较低,这在交通规划、交通基础设施建设、运输工具水平、交通组织和管理等方面都有反映。例如道路布局和交通方式分道不合理,现代化轨道交通缺少,路面公共交通效率低,车况较差,相关技术标准较低、自行车交通比例高,日常交通以人工管理为主等,对城市交通的管理还局限于传统的车流人流控制方面,缺乏对城市交通需求进行研究和管理。特别是在应用现代通信和网络技术管理交通方面,除少数几个大城市已经起步外,大多数城市还是空白。另外,我国在城市交通规划和管理方面对基础性研究缺乏重视,研究力量和研发投入不足,也是技术水平低和造成城市交通发展缓慢的原因。据世界银行交通专家估计:由于机动化水平并不高,中国大城市道路网

13、一般有30-50%的潜力没有发挥。如果我们能尽快引进先进管理技术与设施,使城市道路交通置于先进科学的系统管理之下,让现有城市道路网及相关设施的潜能充分发挥出来。 近几年来,世界主要大城市为缓解城市交通拥堵,都在不断采取新技术,提高科学管理水平,如从点控、线控到区域控制,直到现在的智能交通系统(ITS),把电子、通讯、声像 、计算机及GPS等高新技术溶于其中,使交通走向越来越“智慧化”的系统管理之路。为了实现城市道路交通的畅通,缓解城市交通拥塞,我国公安交通管理部门一直把科技应用作为主要发展方向,多年来做了大量的工作。总体来说,国内城市交通指挥系统的发展经历了以下几个阶段:七十年代末到九十年代初

14、,城市交通监控中心主要是建立交通信号控制系统和交通电视监控系统,其主要功能是对路口信号灯进行点、面相结合的控制,对路面的交通状况进行实时的监视,并辅之以人工干预。九十年代以来,原来的监控中心不断增加了GPS车辆定位系统、交通事故处理系统、交通群体诱导系统、交通管理信息系统、交通地理信息系统等等,并逐步发展为城市交通指挥中心。其主要特征是指挥中心内的这些系统基本上都是物理上放置在一起,相互之间基本上不能进行信息互换与共享,实现统一调度与指挥。从九十年代末开始,我国公安交通管理部门和科研单位就开始研究如何实现各个系统之间的信息交换与共享,如何实现快速反应决策,完成统一调度与指挥,以建立新一代的智能

15、化城市交通指挥系统,实现城市交通的智能化。顺应世界道路交通运输业的发展趋势,公安交通管理部门正在研究和探索从城市交通监控系统、城市交通指挥中心向智能化城市交通指挥系统迈进之路。相信,通过对智能化,自助式,城市交通指挥系统的正确理解、合理规划和有效实施,必将有效地推动我国公安交通管理工作的科学化和现代化,推动我国交通控制的迅速发展。1.2 总体设计方案在城市道路中有大量的平面交叉路口,它们是交通流的汇集点和分流点。正是由于这些交叉路口的存在,才形成了四通八达的交通网络,而平面交叉路口又往往是事故高发地带。本设计模拟的是十字路口方案,即一主干道(南北方向),一从干道(东西方向)的路口。如图1-1。

16、图1-1 十字形路口本系统需要采用MSC-51系列单片机AT89C51作为中心器件,设计交通灯控制器实现:直行红绿灯、左转红绿灯的显示以及红绿灯转换倒计时显示。具体通行设计方案:第一阶段:初始运行开始,南北方向直行绿灯亮,左转灯红灯亮,东西方向直行与左转灯红灯亮。数码管40秒倒计时,此时行人可通过东西路。第二阶段:倒计时结束,红绿灯变换时间间隔为一秒。南北方向左转绿灯亮,直行灯红灯亮,东西方向直行与左转灯红灯亮。数码管20秒倒计时,行人禁行。第三阶段:倒计时结束,红绿灯变换时间间隔为一秒。东西方向直行绿灯亮,左转灯红灯亮,南北方向直行与左转灯红灯亮。数码管40秒倒计时,此时行人可通过南北路。第

17、四阶段:倒计时结束,红绿灯变换时间间隔为一秒。东西方向左转绿灯亮,直行灯红灯亮,南北方向直行与左转灯红灯亮。数码管20秒倒计时,行人禁行,倒计时结束。返回第一阶段继续循环。运行过程中可通过复位电路开关将运行状态复位至第一阶段初始状态。1.3 设计步骤1.利用Proteus 7.5 SP3仿真软件按下列要求绘制仿真实例 用LED灯的分别表示东、西、南、北四个方向路口直行红灯与绿灯以及左转弯红灯与绿灯。每个路口4盏灯。 用P1口输出控制模拟交通灯的状态显示的LED灯显示。 用P2口输出控制倒计时显示数码管的状态码。 用P0.0与P0.1控制数码管的位选。2.按照基本要求编制程序实现相应功能。3.购

18、买连接实物并实现所涉及的功能。2 单片机概述2.1 单片机的发展历程单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。在MCS-51系列单片机中,有两个子系列:51子系列和52子系列。每个子系列有诺干中型号。51系列有8051、8751和8031三个型号,后来经过改进产生了80c51、87c51、80c31三个型号;52系列有5021、8752、8032三个型号,改进后的型号是80c52/87c52、80c32。改进后的型号更加省电。52系列比对应的51系列增加了定时器T2并将内部程序存贮器增加到8KB。Inte

19、r公司停止生产MCS-51系列单片机之后将生产权转让给了许多其他公司,于是出现了许多与Mcs-51兼容的单片机。现在生产mcs-51兼容单片机的公司对其进行了不同程度的改进和提高。我们现在使用比较的多的是AT89C51/AT89s51等。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。2.2 单片机的特点(1)性价比

20、高,开发周期短,易于产品化,(2)集成度高,可靠性好,抗干扰性强,(3)功能完善,接口多样,(4)低功耗、低电压一般电源供电电压在53V范围内单片机都能正常工作,供电的下限可达12V。(5)总线多样,易于扩展单片机外部的典型三总线结构,方便系统构扩展,构成各种规模的应用系统。外部总线增加了I2C及SPI等串行总线方式, 可根据需要进行并行或者串行扩展。2.3 AT89C51单片机简介AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单

21、片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。其主要特性有:与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年全静态工作:0Hz-24MHz三级程序存储器锁定1288位内部R

22、AM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路管脚说明图2-1 MCS-51结构框图VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉

23、为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收

24、高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口

25、同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态AL

26、E禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3 系统硬件设计3.1 系统总框图图 3-1 系统框图3.

27、2 控制流程分析(1)东西、南北方向提醒信号灯变化的各倒计时显示只需要同一种倒计时显示配合信号灯的变化即可起到警示过往车辆的功能。在现实中共有东西南北四个方向共有四个倒计时显示的数码管。模拟电路中,为了节省花费我们只设置了一个数码管显示。而如果需要其余三个数码管只需并联按照与此数码管相同的接法接到相应端口即可。(2)东西、南北方向信号灯控制是中心对称的,即两侧系统对同方向的信号灯控制是同步的。模拟电路中,我们同一方向只设置了一组信号灯,即可实现模拟的功能。现实中需要同一方向另一组信号灯的时候。只需要并联按照前一组信号灯的接法接入电路相应端口即可。3.3 时钟电路时钟电路一般由晶体震荡器、晶震控

28、制芯片和电容组成。可以简单定义如下: 1.就是产生像时钟一样准确的振荡电路。 2.任何工作都按时间顺序。用于产生这个时间的电路就是时钟电路。单片机运行需要时钟支持就像计算机的CPU一样,如果没有时钟电路来产生时钟驱动单片机,那单片机就不能执行程序。单片机可以看成是在时钟驱动下的时序逻辑电路。时钟电路是计算机的心脏,它控制着计算机的工作节奏。CPU就是通过复杂的时序电路完成不同的指令功能的。MCS5l的时钟信号可以由两种方式产生:一种是内部方式,利用芯片内部的振荡电路,产生时钟信号;另一种为外部方式,时钟信号由外部引入。分别如图所示。图3-2内部时钟方式 外部时钟方式AT89C51单片机内部有一

29、个用于构成振荡器的高增益反向放大器,它的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器。如图3-3所示(C1、C2大小一般为30pF)。图3-3 时钟电路3.4 复位电路单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。RESET/Vpd是复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。RESET由高电平下降

30、为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8051的初始态。8051的复位方式可以是自动复位,也可以是手动复位。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。图3-4 上电自动复位 手动复位电路本设计采用手动复位电路。3.5 显示电路3.5.1 LED数码管显示器显示电路采用LED数码管显示器动态倒计时显示。现在的字符型液晶模块已经是单片机应用设计中最常用的信息显示器件。但是其成本比较高,二位一体数码管显示器成本低廉,且易于控制,制作方便。我们选用二位一体数码管用

31、于倒计时显示。数码管动态显示介面是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp 的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位元选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。透过分时轮流控制各个LED数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,

32、由于人的视觉暂留现象及发光二极体的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示资料,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O口,而且功耗更低。3.5.2 共阴极数码管与共阳极数码管数码管分共阴极数码管与共阳极数码管。数码管分共阴极数码管与共阳极数码管。它们的发光原理是一样的,只是它们的电源极性不同而已。图3-5例举的是共阳极的LED数码管,共阳就是7段的显示字码共用一个电源的正。LED数码管原理图示意:图3-5 引脚示意图 从上图可以看出,要是数码管显示数字,有两个条件:1、是要在VT端(3/8脚)加正电源;2、要

33、使(a,b,c,d,e,f,g,dp)端接低电平或“0”电平。这样才能显示的。共阳极LED数码管的内部结构原理图图3-6所示: 图3-6共阳极LED数码管的内部结构原理图共阴极LED数码管的内部结构原理图图3-7:图3-7 共阴极LED数码管的内部结构原理图以下为如何测试数码管是共阴极还是共阳极的方法。首先,我们找个电源(3到5伏)和1个1K(几百欧的也行)的电阻,VCC串接个电阻后和GND接在任意2个脚上,组合有很多,但总有一个LED会发光的,找到一个就够了,然后GND不动,VCC(串电阻)逐个碰剩下的脚,如果有多个LED(一般是8个),那它就是共阴的了。相反用VCC不动,GND逐个碰剩下的

34、脚,如果有多个LED(一般是8个),那它就是共阳的。也可以直接用数字万用表,红表笔是电源的正极,黑表笔是电源的负极。3.5.3 数码管共阴与共阳的驱动电路如果想使得数码管亮,在实际操作中需要接一个驱动电路。共阴极数码管的驱动电路(图A)以及共阳极数码管(图B)的驱动电路。分别如下图3-8。 图A 图B图3-8 共阴/阳极数码管的驱动电路3.6 电路原理图3.6.1 原理图图3-9 原理图3.6.2 整体电路连接图3-10 整体电路连接其中各LED灯分别为:D1代表南北方向直行的绿灯。D2代表南北方向直行的红灯。D3代表南北方向左转的绿灯。D4代表南北方向左转的红灯。D5代表东西方向直行的绿灯。

35、D6代表东西方向直行的红灯。D7代表东西方向左转的绿灯。D8代表东西方向左转的红灯。4 软件流程图4.1主程序流程图4.2 P0、P1、P2口显示状态编码表P0编码备注P07P06P05P04P03P02P01P0011111110FEH数码管1口位选11111101FDH数码管2口位选P1编码备注P17P16P15P14P13P12P11P100101011056HLED灯一阶段0101100159HLED灯二阶段011010106AHLED灯三阶段100110109AHLED灯四阶段P2编码备注P27P26P25P24P23P22P21P20011111113FH数码管显示00000011

36、006H数码管显示1010110115BH数码管显示2010011114FH数码管显示30110011066H数码管显示4011011016DH数码管显示5011111017DH数码管显示60000011107H数码管显示7011111117FH数码管显示8011011116FH数码管显示90111011177H数码管显示A011111007CH数码管显示B0011100139H数码管显示C010111105EH数码管显示D0111100179H数码管显示E0111000171H数码管显示F5 程序源代码#include#define uint unsigned int#define ucha

37、r unsigned charuchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;/数码管码表#define status1 0x56#define status2 0x59#define status3 0x6a#define status4 0x9a#define seg1 0xfe#define seg2 0xfduint tt,displaytime;int time;uchar nodisplay_flag; void delay(uint);

38、/延时函数声明void display(uint);/LED显示函数声明void init(); /单片机初始化函数声明void main()init();while(1)/大循环if(tt=20) tt=0;nodisplay_flag=0;time-;if(time=83)&(time=62)&(time=21)&(time=0)&(time0;x-)for(y=120;y0;y-);void display(uint x) /显示 P0=0xff; P2=tablex/10; P0=seg1; delay(5); P0=0xff; P2=tablex%10; P0=seg2; delay

39、(5); void init() /初始化函数 tt=0;nodisplay_flag=1;time=124;TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;P0=0xff;void timer0() interrupt 1/定时中断周期50MS TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt+;6 程序运行仿真图图6-1 第一阶段图6-2 第二阶段图6-3 第三阶段图6-4 第四阶段结论本系统设计了一个十字形路口,通过充分利用了AT89C51芯片的I/O

40、引脚来完成交通灯控制系统。系统统采用MSC-51系列单片机AT89C51来设计交通灯控制器,实现了能通过单片机的P1口设置红、绿灯燃亮时间的功能以及红绿灯循环点亮。 这次毕业设计,不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计使我明白了自己原来知识还比较欠缺。自己要学习的东西还太多,以前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。通过这次毕业设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。在完成毕业设计的过程中,我和我们小组的人员一起讨论、研究、翻阅资料,通过一次次的配合和努力,终于将这次毕业设

41、计完成,不仅知识上得到一个很大的提升,同时心里的成就感也不由而生。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次毕业设计的最大收获和财富,使我终身受益。总而言之,这次毕业设计使我得到了一次用专业知识、专业技能分析、实际动手能力和解决问题全面系统的锻炼,同时也使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是C语言)的掌握方面都能向前迈了一大步,

42、为日后成为合格的应用型人才打下良好的基础。致谢这次毕业设计,首先要感谢的使我们的指导老师郑老师。在毕业设计过程中,给我们合理分配时间、任务,每一个环节紧紧相扣、紧密。让我们在这段时间中,每天都很充实。遇到不懂的问题,郑老师给我们的详细的解答,每周的会议交流、电话、邮箱、QQ都是我们互动的渠道。每次破解一个疑难问题,我们都会欣喜若狂,这些都离不开郑老师的指导。我还要感谢我的团队合作伙伴,大家在一起讨论、翻阅资料,通过一次次的努力、尝试,终于将这次的毕业设计完成了。参考文献1李伯成:单片机及嵌入式系统,清华大学出版社,20052胡汉才:单片机原理及接口技术,清华大学出版社,20003王田苗:嵌入式系统设计与实例开发,清华大学出版社,20024边海龙:单片机开发与典型工程项目,电子工业出版社,20085张友德:单片机原理与应用,复旦大学出版社,20026倪继烈:微型计算机原理与接口技术,清华大学出版社,20057李群芳:单片微型计算机与接口技术

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号