基于单片机交通灯的设计_第1页
基于单片机交通灯的设计_第2页
基于单片机交通灯的设计_第3页
基于单片机交通灯的设计_第4页
基于单片机交通灯的设计_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、开封大学开封大学机电工程学院应用电子专业毕业论文机电工程学院应用电子专业毕业论文题目:基于单片机交通灯的设计题目:基于单片机交通灯的设计姓名:姓名:杨威杨威指导老师:指导老师:边疆边疆学号:学号:20090615692009061569班级:班级:0909 应电应电 2 2 班班时间:时间:2011-12-32011-12-32012-05-302012-05-30基于单片机交通灯的设计基于单片机交通灯的设计摘要:近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够

2、的,还应根据具体硬件结构软硬件结合,加以完善。本论文使用单片机的原因是看到单片机的发展趋势。单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和 i/o 接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。靠的就是交通信号灯的自动指挥系统来实现这井然秩序。交通信号灯控制方式很多。本系统采用 msc-51 系列单片机 atsc51 和可

3、编程并行 i/o 接口芯片 8255a 为中心器件来设计交通灯控制器,实现了能根据实际车流量通过 8051 芯片的 p1 口设置红、绿灯燃亮时间的功能;红绿灯循环点亮,倒计时剩 5 秒时黄灯闪烁警示(交通灯信号通过 pa 口输出,显示时间直接通过 8255 的 pc 口输出至双位数码管);车辆闯红灯报警;绿灯时间可检测车流量并可通过双位数码管显示。本系统实用性强、操作简单、扩展功能强。关键词:单片机 交通灯 闯红灯 检测车流量abstractin recent years along with technical rapid development, monolithic integrated

4、 circuit application unceasingly thorough, simultaneously leads the traditional control examination technology to renew day by day.in the real-time examination and in the automatic control monolithic integrated circuit application system, the monolithic integrated circuit often took a core part uses

5、, the monolithic integrated circuit aspect knowledge is only insufficient, but also should act according to the concrete hardware architecture software and hardware union, consummates.the intersection vehicles shuttle, the pedestrian is bustling, car dealership traffic lane, human sidewalk, methodic

6、al.depends on is the street-traffic control lights automatic command system realizes this orderly order.the street-traffic control lights control mode are very many.this system uses msc-51 series monolithic integrated circuit atsc51 and programmable parallel i/o connection chip 8255a is the central

7、component designs the traffic light controller, realized has been able to act according to the actual traffic flow magnitude to establish, the green light red through 8051 chip p1 mouths burns the bright time the function; the traffic light circulation lightens, the countdown remains when for 5 seco

8、nds the yellow light twinkle police shows (traffic light signal through pa mouth output, demonstration time directly through 8255 pc mouth output to two-position nixietube); the vehicles run a red light report to the police; the green light time may examine the traffic flow magnitude and may through

9、 the two-position nixietube demonstration.this system usability strong, operation simple, expansion function.keywordskeywords:monolithic integrated circuit traffic light runs a red light the examination traffic flow magnitude目 录摘摘 要要 .iabstract.ii目目 录录 .iii第第 1 章章 绪论绪论.1第第 2 章章 总体规划方案总体规划方案.92.1 规划设

10、计方案.92.2 交通管理的方案论证.9第第 3 章章 系统的芯片简介系统的芯片简介.103.1 msc-51 芯片简介.103.1.1 mcs-51 单片机内部结构.103.1.2 mcs-51 的引脚和功能概述.113.2 8255 芯片简介.133.2.1 8255a 的内部结构.133.2.2 8255 可编程并行接口芯片简介.14第第 4 章章 系统系统硬硬件设计件设计.194.1 系统总框图设计.194.2 各个模块电路设计.244.2.1 键盘设置电路.244.2.2 看门狗硬件电路.254.2.3 显示电路.254.2.4 交通灯的控制电路.25第第 5 章章 系统的软件设计系

11、统的软件设计.275.1 系统总程序设计.275.2 每秒钟的设定.285.2.1 计数器初值计算.285.2.2 计算公式.285.2.3 秒的方法.295.2.4 相应程序代码.295.2.5 软件延时.305.3 显示程序设计.305.3.1 显示原理.315.3.2 8255 输出信号与数码管的连接.315.3.3 8255 与 8051 的连接.31第第 6 章章 结论结论.32参考文献参考文献.33致致 谢谢.34附附 录录.35附录 1:总图.35附录 2:程序源代码.36第 1 章 绪论当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在 19

12、世纪就已出现了。1858 年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868 年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止” ,绿色表示“注意” 。1869 年 1 月 2 日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914 年始安装于纽约市 5 号大街的一座高塔上。红灯亮表示“停止” ,绿灯亮表示“通行” 。1918 年,又出现了带控制的红绿灯和红外线红

13、绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968 年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的

14、行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。本论文是基于单片机的交通灯控制设计。本论文使用单片机的原因是看到单片机的发展趋势。单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和 i/o 接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过 1、2、3、

15、3 代的发展,目前单片机正朝着高性能和多品种方向发展,它们的 cpu 功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。单片机在目前的发展形势下,表现出几大趋势:可靠性及应用越来越水平高和互联网连接已是一种明显的走向。所集成的部件越来越多;ns(美国国家半导体)公司的单片机已把语音、图象部件也集成到单片机中,也就是说,单片机的意义只是在于单片集成电路,而不在于其功能了;如果从功能上讲它可以讲是万用机。原因是其内部已集成上各种应用电路。功耗越来越低和模拟电路结合越来越多。 随着半导体工艺技术的发展及系统设计水平的提高,单片机还会不断产生新的变化和进步,最终人们可能发现:单片机与微机系

16、统之间的距离越来越小,甚至难以辨认。所以用单片机将越来越普遍,而且实用性强、操作简单、扩展功能强。随着各种交通工具的发展和交通指挥的需要,第一盏名副其实的三色灯(红、黄、绿三种标志)于 1918 年诞生。它是三色圆形四面投影器,被安装在纽约市五号街的一座高塔上,由于它的诞生,使城市交通大为改善。黄色信号灯的发明者是我国的胡汝鼎,他怀着“科学救国”的抱负到美国深造,在大发明家爱迪生为董事长的美国通用电器公司任职员。一天,他站在繁华的十字路口等待绿灯信号,当他看到红灯而正要过去时,一辆转弯的汽车呼地一声擦身而过,吓了他一身冷汗。回到宿舍,他反复琢磨,终于想到在红、绿灯中间再加上一个黄色信号灯,提醒

17、人们注意危险。他的建议立即得到有关方面的肯定。于是红、黄、绿三色信号灯即以一个完整的指挥信号家族,遍及全世界陆、海、空交通领域了。中国最早的马路红绿灯,是于 1928 年出现在上海的英租界。从最早的手牵皮带到 20 世纪 50 年代的电气控制,从采用计算机控制到现代化的电子定时监控,交通信号灯在科学化、自动化上不断地更新、发展和完善。纵观交通事业的发展历史,以前,人们出门远行或运输东西最常用到的的交通工具是马车,但是随着社会的进步经济的发展,一种新型交通工具汽车随之问世。如 1950 年英国陆虎公司推出世界上第一台采用燃气涡轮发动机的汽车,1952 年美国通用公司推出“别克”牌小轿车,1955

18、 年福特“雷鸟”牌两座位汽车问世,1956 年中国第一汽车制造厂成立, “解放”牌汽车问世。特别是近几年汽车产业更是日新月异,2006 年全世界汽车总已产量已超过 6400 万辆。在汽车产业蓬勃发展的背后,随之而来交通问题也越来越多,如交通堵塞和交通事故时常发生,这不但给人们的生命和财产造成了威胁,同时还制约着国民经济的发展,特别是发达国家和发展中国家面临的形势更是严峻。为了缓解交通的负荷量,使车辆运行畅通无阻,交通事业整严有序,国家起用了双车道交通灯控制系统。通过红,绿,黄三色灯进行单一的控制,使其遵守红灯停,绿灯行的原则。但是随着社会的发展,此系统已经远远不能满足交通控制事业的需求,需要一

19、种全新的控制理念,进而引进了与我国国情相符合的国外先进的控制体系,多车道交通灯控制系统,不但解决以往交通控制系统的局限性,同时还加快车了车流辆速度。并制定了第三十八条明确规定:绿灯亮时,准许车辆通行,但转弯的车辆不得妨碍被放行的直行车辆、行人通行,黄灯亮时,已越过停止线的车辆可以继续通行,红灯亮时,禁止车辆通行。随着社会的进步和科技的发展,交通工具设备也日益剧增,从而有序的交通秩序也越来越重要,单片机的应用也日益广泛。本论文用三端桥式整流电路将 220v 交流电转变为稳定、可靠,高效率的5v 直流电源。而此交通路口采用的是 8051 单片机来控制,8051 单片机包含中央处理器、程序存储器(r

20、om)、数据存储器(ram)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,而中断系统来实现实时控制、故障自动处理、计算机与外围设备的数据传送。使 cpu 能够具有应变的功能,能够秩序的工作,从而提高了工作效率和系统的可靠性。同时也为了系统稳定可靠采用了 max629“看门狗”芯片,避免了系统因为死机而停止工作的情况发生;显示时间直接通过 8255 的 pa、pb 口输出;交通灯信号通过 pc 口输出;交通灯的点亮采用 vt 双向晶闸管来控制。第 2 章 总体规划方案2.1 规划设计方案根据此路口的车流量:由于东西方向比南北方向的车流量要大,所以

21、在东西方向的绿灯时间较长设为 80s,南北方向的红灯设为 60s,黄灯时间为 5s。以最大限度的提高交通疏通的可靠系数。2.2 交通管理的方案论证人行道人行道人行道 人行道 图 2.1 十字路口图首先了解实际交通灯的变化情况和规律。假设一个十字路口如图 2.1 所示,为东南西北走向。初始状态 0 为东西南北都红灯亮。然后转状态 1 东西绿灯通车,南北红灯亮。过一段时间后,转状态 2,东西绿灯灭,黄灯闪几下,南北还是红灯。再转状态 3,南北绿灯通车,东西红灯亮。过一段时间后转状态 4,南北绿灯灭,闪几个黄灯,东西还是为红灯亮,一段时间后,又循环至状态1。列出交通信号灯的状态表如表 2.1 所示:

22、(其中,1 代表灯亮,0 代表灯灭)北西南东状态绿 黄 红绿 黄 红绿 黄 红绿 黄 红00010010010011001100001100200101000101031000011000014010001010001表 2.1东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停车时间。设东西道比南北道的车流量大,指示灯燃亮的方案如表2.2。 表 2.2表 2.2 说明:(1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿

23、灯,此道车辆通过,行人禁止通行。时间为 60 秒。(2)黄灯闪烁 5 秒,警示车辆和行人红、绿灯的状态即将切换。 (3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行。时间为 80 秒。 东西方向车流大 通行时间长。(4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。(5)此表可根据车流量动态设定红绿灯初始值。第 3 章 系统的芯片简介3.1 msc-51 芯片简介3.11mcs-51 单片机内部结构。8051 是 mcs-51 系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。8051 单片机包含中央处理器、程序存储器

24、(rom)、数据存储器(ram)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:中央处理器:中央处理器(cpu)是整个单片机的核心部件,是 8 位数据宽度的处理器,能处理 8 位二进制数据或代码,cpu 负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(ram):8051 内部有 128 个 8 位用户数据存储单元和 128 个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,60s5s80s5s东西道红灯亮黄灯亮绿灯亮黄灯亮南北道绿灯亮黄灯亮红灯亮黄灯亮用户只能访

25、问,而不能用于存放用户数据,所以,用户能使用的 ram 只有 128个,可存放读写的数据,运算的中间结果或用户定义的字型表。程序存储器(rom):8051 共有 4096 个 8 位掩膜 rom,用于存放用户程序,原始数据或表格。定时/计数器(rom):8051 有两个 16 位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(i/o)口:8051 共有 4 组 8 位 i/o 口(p0、 p1、p2 或 p3),用于对外部数据的传输。全双工串行口:8051 内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位

26、器使用。 中断系统:8051 具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有 2 级的优先级别选择。 时钟电路:8051 内置最高频率达 12mhz 的时钟电路,用于产生整个单片机运行的脉冲时序,但 8051 单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(princeton)结构。intel 的 mcs-51 系列单片机采用的是哈佛结构的形式,而后续产品 16 位的 mcs-96 系列单片机

27、则采用普林斯顿结构。3.1.2 mcs-51 的引脚和功能概述mcs-51 系列单片机中的 8031、8051 及 8751 均采用 40pin 封装的双列直接dip 结构,右图是它们的引脚配置,40 个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4 组 8 位共 32 个 i/o 口,中断口线与 p3 口线复用。现在我们对这些引脚的功能加以说明:mcs-51 的引脚说明:mcs-51 系列单片机中的 8031、8051 及 8751 均采用 40pin 封装的双列直接dip 结构,右图是它们的引脚配置,40 个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4 组 8 位共

28、32 个 i/o 口,中断口线与 p3 口线复用。现在我们对这些引脚的功能加以说明:如图 3.2 图 3.1 引脚图pin9:reset/vpd复位信号复用脚,当 8051 通电,时钟电路开始工作,在reset 引脚上出现 24 个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器 pc 指向 0000h,p0-p3 输出口全部为高电平,堆栈指针写入 07h,其它专用寄存器被清“0” 。reset 由高电平下降为低电平后,系统即从 0000h地址开始执行程序。然而,初始复位不改变 ram(包括工作寄存器 r0-r7)的状态,8051 的初始态。8051 的复位方式可以是自动复位,也可以

29、是手动复位,见下图 3.3。此外,reset/vpd还是一复用脚,vcc掉电其间,此脚可接上备用电源,以保证单片机内部 ram 的数据不丢失。 图 3.2 复位方式图pin30:ale/当访问外部程序器时,ale(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ale 端将有一个 1/6 时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ale 会跳过一个脉冲。如果单片机是 eprom,在编程其间,将用于输入编程脉冲。pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,pc 的16 位地址数据将出现

30、在 p0 和 p2 口上,外部程序存储器则把指令数据放到 p0口上,由 cpu 读入并执行。pin31:ea/vpp程序存储器的内外部选通线,8051 和 8751 单片机,内置有4kb 的程序存储器,当 ea 为高电平并且程序地址小于 4kb 时,读取内部程序存储器指令数据,而超过 4kb 地址则读取外部指令数据。如 ea 为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的8031,ea 端必须接地。在编程时,ea/vpp脚还需加上 21v 的编程电压。3.2 8255 芯片简介3.2.1 8255a 的内部结构:8255a 的内部结构框图和引脚图如图 3.3

31、所示,由以下几个部分组成:图 3.3 8255 的内部结构图数据总线缓冲器:8 位双向三态,它是 8255a 和 cpu 之间的数据接口。i/o的数据、cpu 输出的控制字以及 cpu 输入的状态信息都是通过这个缓冲器传送的,数据总线缓冲器的 8 根数据线 d7d0 一般与 8086cpu 低 8 位数据线相连。并行 i/o 端口(a、b、c 口):除 c 口输入没有锁存器外,其余 a 口、b 口输入输出都有缓冲器和锁存器,c 口输出也都有缓冲器和锁存器,c 口输入只有缓冲器。通常 a 口和 b 口作为独立工作的 i/o 数据端口,c 口作为控制或状态信息端口。在方式控制字控制下,c 口可以分

32、成两个 4 位端口,每个端口包含一个4 位锁存器,分别与 a 口和 b 口配合使用,作为与外设之间的联络信号和存放接口电路当前的状态信息。a 组和 b 组控制电路:a 组:a 口和 c 口上半部;b 组:b 口和 c 口下半部。a 组控制和 b 组控制结合,组成控制字寄存器,接收 cpu 写入的方式控制字和对 c 口按位置位/复位控制字。3.2.2 8255 可编程并行接口芯片简介8255 可编程并行接口芯片有三个输入输出端口,即 a 口、b 口和 c 口,对应于引脚 pa7pa0、pb7pb0 和 pc7pc0。其内部还有一个控制寄存器,即控制口。通常 a 口、b 口作为输入输出的数据端口。

33、c 口作为控制或状态信息的端口,它在方式字的控制下,可以分成 4 位的端口,每个端口包含一个 4 位锁存器。它们分别与端口 a配合使用,可以用作控制信号输出或作为状态信号输入。8255 可编程并行接口芯片方式控制字格式说明(下图表 3.1):8255 有两种控制命令字;一个是方式选择控制字;另一个是 c 口按位置位复位控制字。其中 c 口按位置位复位控制字方式使用较为繁难,说明也较冗长。方式控制字格式说明如表 3.1:制字。其中 c 口按位置位复位控制字方式使用较为繁难,说明也较冗长d7:设定工作方式标志,1 有效。d6、d5:a 口方式选择 0 0 方式 0 0 1 方式 1 1 方式 2

34、d4:a 口功能 (1=输入,0=输出) d3:c 口高 4 位功能 (1=输入,0=输出)d7d6d5d4d3d2d1d0 d2:b 口方式选择 (0=方式 0,1=方式 1) d1:b 口功能 (1=输入,0=输出)d0:c 口低 4 位功能 (1=输入,0=输出) 8255 可编程并行接口芯片工作方式说明: 方式 0:基本输入输出方式。适用于三个端口中的任何一个。每一个端口都可以用作输入或输出。输出可被锁存,输入不能锁存。 方式 1:选通输入输出方式。这时 a 口或 b 口的 8 位外设线用作输入或输出,c 口的 4 条线中三条用作数据传输的联络信号和中断请求信号。方式 2 :双向总线方

35、式。只有 a 口具备双向总线方式,8 位外设线用作输入或输出,此时 c 口的 5 条线用作通讯联络信号和中断请求信号。3.3 74ls373 简介74ls373 是一种带三态门的 8d 锁存器,其管脚示意图如图 3.4 所示:其中:1d-8d 为 8 个输入端。 1q-8q 为 8 个输出端。 le 为数据打入端:当 le 为“1”时,锁存器输出 状态同输入状态;当 le 由“1”变“0”时,数据 打入锁存器 oe 为输出允许端:当 oe=0 时,三态门打开; 当 oe=1 时,三态门关闭,输出高阻。 图 3.4 74ls373 管脚示意图单片机系统中常用的地址锁存器芯片 74ls373 以及

36、 coms 的 74hc373。是带三态缓冲输出的 8d 触发器,其引脚图如图 3.5 所示: 图 3.5 74ls373 引脚图(1).1 脚是输出使能(oe),是低电平有效,当 1 脚是高电平时,不管输入3、4、7、8、13、14、17、18 如何,也不管 11 脚(锁存控制端,g)如何,输出2(q0)、5(q1)、6(q2)、9(q3)、12(q4)、15(q5)、16(q6)、19(q7)全部呈现高阻状态(或者叫浮空状态)。(2).当 1 脚是低电平时,只要 11 脚(锁存控制端,g)上出现一个下降沿,输出2(q0)、5(q1)、6(q2)、9(q3)、12(q4)、15(q5)、16

37、(q6)、19(q7)立即呈现输入脚 3、4、7、8、13、14、17、18 的状态.锁存端 le 由高变低时,输出端 8 位信息被锁存,直到 le 端再次有效。 当三态门使能信号 oe 为低电平时,三态门导通,允许 q0q7 输出,oe 为高电平时,输出悬空。当 74ls373 用作地址锁存器时,应使 oe 为低电平,此时锁存使能端 c 为高电平时,输出 q0q7 状态与输入端 d1d7 状态相同;当 c 发生负的跳变时,输入端 d0d7 数据锁入 q0q7。51 单片机的 ale 信号可以直接与74ls373 的 c 连接。表 3.2 74ls373 功能表eg功能00直通 qi = di

38、01保持(qi 保持不变) 1x输出高阻e g d q l h h h l h l l l l x q 上表 3.2 是 74ls373 的真值表,表中: l低电平; h高电平; x不定态; q0建立稳态前 q 的电平; g输入端,与 8031ale 连高电平:畅通无阻低电平:关门锁存。图中 oe使能端,接地。 当 g=“1”时,74ls373 输出端 1q8q 与输入端 1d8d 相同; 当 g 为下降沿时,将输入数据锁存。74ls373 是常用的地址锁存器芯片,它实质是一个是带三态缓冲输出的 8d 触发器,在单片机系统中为了扩展外部存储器,通常需要一块 74ls373 芯片。3.4 max

39、692 简介max692 是微系统监控电路芯片,具有后备电池切换、掉电判别、看门狗监控等功能。voutvout vbattvbattvcc / resetgndgnd wdiwdi pfipfi /pfd/pfd图 3.6 max692 封装和引脚vout:电源输出引脚。vcc:接电源引脚,电源供电 3.05.5v。gnd:接地。pfi:电池故障输入。/pfo:电池故障输出。wdi:监视器输入引脚。/reset:复位输出引脚,低电平有效。vbatt:后备电池输入端。max69212345678第 4 章 系统硬件设计4.1 系统总框图设计8051系统处理锁存键盘设置时间参数8255a扩展cpu

40、的并行接口显示时间交通灯红灯报警及记录车流量红外对管检测信号输入看门狗max692片选图 4.1 系统总框图(1)开关键盘输入交通灯初始时间,通过 8051 单片机 p1 输入到系统(2)由 8051 单片机的定时器每秒钟通过 p0 口向 8255 的数据口送信息,由 8255 的 pa 口显示红、绿、黄灯的燃亮情况;由 8255 的 pc 口显示每个灯的燃亮时间。(3)通过 8031 设置各个信号等的燃亮时间,绿、红时间分别为 60 秒、80 秒。(4)通过 8051 单片机的 p3.0 位来控制系统是工作或设置初值,当.牌位0 就对系统进行初始化,为 1 系统就开始工作。(5)红灯倒计时时

41、间,当有车辆闯红灯时,启动蜂鸣器进行报警,3s 后然后恢复正常。(6)增加每次绿灯时间车流量检测的功能,并且通过查询 p2.0 端口的电平是否为低,开关按下为低电平,双位数码管显示车流量,直到下一次绿灯时间重新记入。(7)绿灯时间倒计时完毕,重新循环。4.2 各个模块电路设计选用设备:8051 弹片机一片,8255 并行通用接口芯片一片,74ls07 两片,max692看门狗一片,共阴极的七段数码管两个双向晶闸管若干,7805 三端稳压电源一个,红、黄、绿交通灯各两个,开关键盘、连线若干。4.2.1 键盘设置电路键盘是单片机应用系统的一个重要输入设备,用于输入数据、干预系统的工作状态。1.单片

42、机上的按键单片机系统中最常见的是触点式开关按键, 这些按键的连接方式,可分为独立式按键和行列式键盘。触点式按键在按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来。其抖动过程如图所示,抖动时间的长短与开关的机械特性有关,一般为 510 ms。在触点抖动期间检测按键的通与断状态,可能导致判断出错,即按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的。为了克服按键触点机械抖动所致的检测误判,必须采取去抖动措施。这一点可从硬件、软件两方面予以考虑。在键数较少时,可采用硬件去抖,而当键数较多时,采用软件去抖。图 4.2 去抖动电路在硬件上可采用在

43、键输出端加 r-s 触发器(双稳态触发器)或单稳态触发器构成去抖动电路。图 4.2 是一种由 r-s 触发器构成的去抖动电路,当触发器一旦翻转,触点抖动不会对其产生任何影响。2.电路工作过程按键未按下时,a = 0,b = 1,输出 q = 1。按键按下时,因按键的机械弹性作用的影响,使按键产生抖动。当开关没有稳定到达 b 端时,因与非门 2 输出为 0反馈到与非门 1 的输入端,封锁了与非门 1,双稳态电路的状态不会改变,输出保持为 1,输出 q 不会产生抖动的波形。 图 4.3 键盘输出电路当开关稳定到达 b 端时,因 a = 1,b = 0,使 q = 0,双稳态电路状态发生翻转。当释放

44、按键时,在开关未稳定到达 a 端时,因 q = 0,封锁了与非门 2,双稳态电路的状态不变,输出 q 保持不变,消除了后沿的抖动波形。当开关稳定到达a 端时,因 a = 0,b = 1,使 q = 1,双稳态电路状态发生翻转,输出 q 重新返回原状态。由此可见,键盘输出经双稳态电路之后,输出已变为规范的矩形方波。3.行列式键盘接口电路单片机系统中,若使用按键较多时,通常采用行列式(也称行列式)键盘。用i/o 口线组成行、列结构,按键设置在行列的交点上。例如用 22 的行、列可构成 4 个键的键盘,44 的行列结构可构成 16 个键的键盘。因此,在按键数量较多时,可以节省 i/o 口线。4.中断

45、扫描方式单片机应用系统工作时,并非经常需要键盘输入,因此,cpu 经常处于空扫描状态。 为提高 cpu 工作效率,可采用中断扫描工作方式。其工作过程如下:当无键按下时,cpu 处理自己的工作,当有键按下时,产生中断请求,cpu 转去执行键盘扫描子程序,并识别键号。 图 4.4 键盘接口电路图 4.4 是一种简易键盘接口电路,该键盘是由 8051 p1 口的高、低字节构成的 44 键盘。键盘的列线与 p1 口的高 4 位相连,键盘的行线与 p1 口的低 4 位相连,因此,p1.4p1.7 是键输出线,p1.0p1.3 是扫描输入线。图4.4 中的 4 输入与门用于产生按键中断,其输入端与各列线相

46、连,再通过上拉电阻接至+5v 电源,输出端接至 8051 的外部中断输入端。具体工作如下:当键盘无键按下时,与门各输入端均为高电平,保持输出端为高电平;当有键按下时,int0 端为低电平,向 cpu 申请中断,若 cpu 开放外部中断,则会响应中断请求,转去执行键盘扫 4.2.2 看门狗硬件电路由于单片机自身的抗干扰能力比较差,尤其在一些条件比较恶劣、噪声大的场合,常会出现单片机因为受外界干扰而导致死机的现象,造成系统不能正常工作。设置看门狗是为了防止单片机死机、提高单片机系统抗干扰性的一种重要途径。一个完整的单片机应用系统应该是一个软、硬件的结合体。系统正常工作时,会受到各种外界干扰因素的影

47、响。这种外界干扰轻者导致系统内部数据出错,重者将严重影响程序的运行。因此单片机应用系统的开发一定要考虑系统可靠性的设计,以满足系统在现场苛刻环境下的正常运行,而“看门狗”则是系统可靠性设计的重要一环。在一个单片机应用系统中,所谓的“看门狗”是指在系统设计中通过软件或硬件方式在一定的周期内监控单片机或其他 cpu 的运行情况。如果在规定的时间内没有收到来自单片机或其他 cpu 的触发信号,则系统会强制复位,以保证系统在受到干扰时仍能够维持正常的工作状态。在单片机系统中,看门狗的设计一般采用硬件和软件结合两种方式。硬件看门狗专用硬件看门狗是指一些集成化的或集成在单片机内的专用看门狗电路,它实际上是

48、一个特殊的定时器,当定时时间到时,发出溢出脉冲。从实现角度上看,该方式是一种软件与片外专用电路相结合的技术,硬件电路连接好后,在程序中适当地插入一些看门狗复位的指令,保证程序正常运行时看门狗不溢出。而当程序运行异常时,看门狗超时发出溢出脉冲,通过单片机的 reset 引脚使单片机复位。这种方式中,看门狗能否可靠有效地工作,与硬件组成及软件的控制策略都有密切的关系。目前常用的集成看门狗电路很多,如max705708、max813l、x5043/5045 等。看门狗电路可以分为内看门狗和外看门狗。看门狗电路是指看门狗的硬件电路包含在单片机内部,如 microchip 的 16c5x 系列,moto

49、rola 的 68c05 系列,51 内核中比较典型的有 atmel 公司的 at89c55wd、at89s8252,winbond 公司的w77e58,sst 公司的 sst89c58 以及 philips 公司 87 系列的多种型号的单片机等。对于没有看门狗定时器的单片机或是认为内部看门狗不可靠时,可以采用外部看门狗定时器。外部看门狗电路既可以用专用看门狗芯片,也可由普通芯片实现。max692 在本文的单片机系统中的具体使用方法和电路原理图如图 4.5 所示。如图 4.5 所示,其中 wdi 是看门狗监测输入脚,接到 cpu 的一个专用 i/o口或一个总线上。/reset 是复位信号输出脚

50、,接到 cpu 的复位输入脚。max692 的 wdi 定时周期是 1.6s,复位脉冲宽度是 200ms。如果 wdi 保持高或低超过看门狗定时周期(1.6s) ,/reset 端将发生 200ms 的负脉冲使 cpu 复位。4.5 max692 电路原理图4.2.3 显示电路显示器是最常见的输出设备。特别是发光二极管(led)和液晶显示器(lcd) ,由于结构简单、价格便宜、接口容易,得到广泛的应用,尤其在单片机系统中大量使用。现在简单介绍 发光二极管。发光显示器是单片机应用产品中常用的廉价输出设备。它是由若干个发光二级管组成的,但发光二级管导通时,相应的一个点或一个比划发光,控制不同组合的

51、二级管导通,就显示出各种字符。点亮显示器有静态和动态两种方法。所谓静态显示,就是显示器显示某个字符时,相应的发光二极管恒定的导通或截止。例如,七段显示器的 a,b,c,d,e,f 导通,g 截止,则显示 0.这种显示器方式,每一位都需要一个 8 位输出口控制,所以占用硬件多,一般用于显示器为数较小(很少)的场合。当位数较多时,用静态显示所需的 i/o 口太多,一般采用动态显示方法。所谓动态显示就是一位一位的轮流点亮各位显示器(扫描) ,对于每一位显示器来说,每隔一段时间点亮一次。显示器的点亮既跟点亮时的导通电流有关,也跟点亮时间和间隔时间的比例有关。调整电流和时间的参数,可实现亮度较高较稳定的

52、显示。若显示器的位数不大于 8 位,则控制显示器公共极电位只需一个 i/o 口(称扫描口) ,控制各位显示器的字形也需一个 8 位口。图 4.6 数码管显示图图 4.7 晶闸管和数码管要是行人能看见信号灯的情况,必须把 8255 输出的信号进行放大 vt 为双向晶闸管,当门极为高电平时晶闸管导通,该支路指示灯亮;当门极为低电平时晶闸管管断,该支路指示灯灭。4.2.4 交通灯的控制电路要求每个方向有三盏灯,分别为红、黄、绿,配以红、黄、绿三组时间到计时显示。每个方向的绿黄灯的定时时间可以预设,一个方向绿灯、黄灯亮时,另一个方向红灯亮。每盏灯顺序点亮,循环往复,每个方向顺序为绿灯、黄灯、红灯。交通

53、灯的运行状态共有四种,分别为:东西方向绿灯亮、东西方向黄灯亮、南北方向绿灯亮和南北方向黄灯亮。在东西方向绿灯和黄灯亮时,南北方向红灯亮,并且红灯的倒计初始值为绿灯的倒计初始值和黄灯的倒计初始值之和。1. 8051 并行口的扩展8051 虽然有 4 个 8 位 i/o 端口,但真正能提供借用的只有 p1 口,因为 p2 和p0 口通常用于传送外部传送地址和数据,p3 口也有它的第二功能。因此,8051通常需要扩展。由于我们用外部输入设定红绿灯倒计时初值、数码管的输出显示、红绿黄信号灯的显示都要用到一个 i/o 端口,显然 8051 的端口是不够,需要扩展。扩展的方法有两种:(1)借用外部 ram

54、 地址来扩展 i/o 端口;(2)采用i/o 接口新片来扩充。我们用 8255 并行接口信片来扩展 i/o 端口。2. 8255pa 口输出信号接信号灯:由于发光二极管为共阳极接法,输出端口为低电平,对应的二极管发光,所以可以用置位方法点亮红,绿,黄发光二极管。第 5 章 系统的软件设计5.1 系统总程序设计 图 5.1 程序总流程图主程序中放了一个按键的判断指令,当有键按下的时候,程序就跳到按键子程序处理,当检测到 k2 键按下的时候就自动返回到主程序。按紧急预按键 k5 后,先出现全红状态,再按下该键,就出现一方通行状态,再按,则另一方通行,如此循环。 按手动控制键后,进行手动控制,每按一

55、次,灯会转到下一个状态。 按恢复键对上两者进行恢复到正常状态。r4 存放黄灯时间 5 03h r5 存放红灯时间 60 3ch r6 存放绿灯时间 80 50h pc0 显示黄灯信号 pc1 显示红灯信号pc2 显示黄灯信号 8255 工作于方式 0 8255 pa、pb、 pc 口输出 pc 控制字为 10000000b (80h)5.2 每秒钟的设定延时方法可以有两种一中是利用 mcs-51 内部定时器才生溢出中断来确定 1秒的时间,另一种是采用软延时的方法。5.2.1 计数器初值计算定时器工作时必须给计数器送计数器初值,这个值是送到 th 和 tl 中的。他是以加法记数的,并能从全 1

56、到全 0 时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值设定为 c 和计数初值设定为 tc 可得到如下计算通式:tc=m-c式中,m 为计数器摸值,该值和计数器工作方式有关。在方式 0 时 m 为 213 ;在方式 1 时 m 的值为 216;在方式 2 和 3 为 285.2.2 计算公式 t=(mtc)t 计数 或t 计数t 计数是单片机时钟周期clk 的 12 倍;为定时初值如单片机的主脉冲频率为clk12,经过 12 分频方式 213微秒8.192 毫秒方式 216微秒65.563 毫秒显然秒钟已经超过了计数器的最大定时间,所以我们只有采用定时器和软件相结合的办法才

57、能解决这个问题5.2.3 秒的方法我们采用在主程序中设定一个初值为的软件计数器和使定时毫秒这样每当到毫秒时就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,先使软件计数器减,然后判断它是否为零。为零表示秒已到可以返回到输出时间显示程序。5.2.4 相应程序代码()主程序定时器需定时毫秒,故工作于方式。初值: t 计数ms/1us=15536=3cboh org 1000h start: mov tmod, #01h ; 令为定时器方式 mov th0, #3ch ;装入定时器初值 mov tl0, #boh; mov ie,#82h ;开中断 sebt to;启动计数器 mo

58、v ro,#14h;软件计数器赋初值loop:sjmp $;等待中断(2)中断服务子程序 orgooobh ajmpbrto orgoobhbrto:djnz ro,nextajmp time ; 跳转到时间及信号灯显示子程序djnz:movro,14#;恢复值 mov th0, #3ch ;重装入定时器初值 mov tl0, #boh; mov ie,#82h ret1end5.2.5 软件延时 mcs-51 的工作频率为 2-12mhz,我们选用的 8051 单片机的工作频率为6mhz。机器周期与主频有关,机器周期是主频的 12 倍,所以一个机器周期的时间为 12*(1/6m)=2us。我

59、们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定 1 秒的时间。 具体的延时程序分析: delay:mov r4,#08h 延时 1 秒子程序 de2:lcall delay1 djnz r4,de2 retdelay1:mov r6,#0 延时 125ms 子程序 mov r5,#0de1: djnz r5,$ djnz r6,de1 retmov rn,#data 字节数数为 2,机器周期数为 1,所以此指令的执行时间为 2ms delay1 为一双重循环,循环次数为 256*256=65536,所以延时时间=65536*2=131072us 约为 125us del

60、ay r4 设置的初值为 8,主延时程序循环 8 次,所以 125us*8= 1 秒 由于单片机的运行速度很快其他的指令执行时间可以忽略不计。5.3 显示程序设计5.3.1 显示原理当定时器定时为 1 秒,时程序跳转到时间显示及信号灯显示子程序,它将依次显示信号灯时间 ,同时一直显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个时间,这样依次把所有的灯色的时间显示完后在重新给时间计数器赋初值 ,重新进入循环。5.3.2 8255 输出信号与数码管的连接led 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点量而显示不同的字形如 sp,g,f,e,d,c,b,a

温馨提示

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

评论

0/150

提交评论