单片机课程设计交通灯报告.doc
《单片机课程设计交通灯报告.doc》由会员分享,可在线阅读,更多相关《单片机课程设计交通灯报告.doc(24页珍藏版)》请在三一办公上搜索。
1、单片机课程设计实验报告 课题: 交通灯 班级: 成员: 指导老师: 单片机课程设计实验报告 :近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MSC-51系列单片机AT89C51和可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制器,实现设置红、绿灯燃亮
2、时间的功能;红绿灯循环点亮,倒计时黄灯警示(交通灯信号通过8255的PC口输出,显示时间直接通过PB口输出至双位数码管);并用复位按键表示出现特殊情况时四个方向禁止通行,用set,inc和dec按键来实现红绿灯及黄灯显示时间的控制。同时还加了LCD液晶显示功能。1、 单片机概述 单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经
3、过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。2、 芯片简介2.1 MSC-51芯片简介MCS-51单片机内部结构: 89C51是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。 89C51单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,C
4、PU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(RAM)89C51内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。1图程序存储器(ROM):89C51共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。定时/计数器(ROM):89C51有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(I/O)口:89C51
5、共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。全双工串行口:89C51内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统:89C51具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。时钟电路:89C51内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的
6、程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。下图是MCS-51系列单片机的内部结构示意图2。 图2MCS-51的引脚说明:MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明:MCS-51的引脚说明:MCS-51系列单片机中的8031、805
7、1及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明:如图3 图3Pin9:RESET/Vpd复位信号复用脚,当89C51通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作
8、寄存器R0-R7)的状态,89C51的初始态。89C51的复位方式可以是自动复位,也可以是手动复位,见下图4。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。图4Pin30:ALE/当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。如果单片机是EPROM,在编程其间,将用于输入编程脉冲。Pin29:当访问外部程序存储器时,此脚输
9、出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。Pin31:EA/Vpp程序存储器的内外部选通线,8051和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的8031,EA端必须接地。在编程时,EA/Vpp脚还需加上21V的编程电压。2.2 8255芯片简介8255可编程并行接口芯片简介: 8255可编程并行接口芯片有三个输入输出端口,即A口
10、、B口和C口,对应于引脚PA7PA0、PB7PB0和PC7PC0。其内部还有一个控制寄存器,即控制口。通常A口、B口作为输入输出的数据端口。C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。它们分别与端口A配合使用,可以用作控制信号输出或作为状态信号输入。8255可编程并行接口芯片方式控制字格式说明:8255有两种控制命令字;一个是方式选择控制字;另一个是C口按位置位复位控制字。其中C口按位置位复位控制字方式使用较为繁难,说明也较冗长,故在此不作叙述,需要时用户可自行查找有关资料。方式控制字格式说明如表1: 表1D7D6D5D4D3D2D1D0
11、D7:设定工作方式标志,1有效。 D6、D5:A口方式选择 0 0 方式0 0 1 方式1 1 方式2 D4:A口功能 (1=输入,0=输出) D3:C口高4位功能 (1=输入,0=输出) D2:B口方式选择 (0=方式0,1=方式1) D1:B口功能 (1=输入,0=输出)D0:C口低4位功能 (1=输入,0=输出) 8255可编程并行接口芯片工作方式说明: 方式0:基本输入输出方式。适用于三个端口中的任何一个。每一个端口都可以用作输入或输出。输出可被锁存,输入不能锁存。 方式1:选通输入输出方式。这时A口或B口的8位外设线用作输入或输出,C口的4条线中三条用作数据传输的联络信号和中断请求信
12、号。 方式2 :双向总线方式。只有A口具备双向总线方式,8位外设线用作输入或输出,此时C口的5条线用作通讯联络信号和中断请求信号。2.3 74LS373简介74LS373 是一种带三态门的8D锁存器,其管脚示意图如下示:其中:1D-8D为8个输入端。 1Q-8Q为8个输出端。 LE为数据打入端:当LE为“1”时,锁存器输出 状态同输入状态;当LE由“1”变“0”时,数据 打入锁存器 OE为输出允许端:当OE=0时,三态门打开; 当OE=1时,三态门关闭,输出高阻。2.4 LM041L液晶简介管教及其功能描述:管脚名称LEVER管脚功能描述VSS0电源地VDD+5.0V电源电压VEE-液晶显示器
13、驱动电压RSH/LD/I=“H”,表示DB7DB0为显示数据D/I=“L”,表示DB7DB0为显示指令数据R/WH/LR/W=“H”,E=“H”数据被读到DB7DB0R/W=“L”,E=“HL”数据被写到IR或DREH/LR/W=“L”,E信号下降沿锁存DB7DB0R/W=“H”,E=“H”DDRAM数据读到DB7DB0DB0H/L数据线DB1H/L数据线DB2H/L数据线DB3H/L数据线DB4H/L数据线DB5H/L数据线DB6H/L数据线DB7H/L数据线模块控制芯片提供两套控制命令,基本指令和扩充指令如下:RSR/W操作00命令寄存器写入01忙标志和地址计数器读入10数据寄存器写入11
14、数据寄存器读入3、系统硬件设计3.1交通管理的方案论证东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停车时间。设东西道比南北道的车流量大,指示灯燃亮的方案如表2。20S3S20S3S东西道红灯亮红灯亮绿灯亮黄灯亮南北道绿灯亮黄灯亮红灯亮红灯亮 表2表2说明: (1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯,此道车辆通过,行人禁止通行。时间为20秒。(2)黄灯闪烁3秒,警示车辆和行人红、绿灯的状态即将切换。 (3
15、)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行。时间为20秒。 东西方向车流大 通行时间长。(4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。(5)此表中的红绿灯及黄灯的显示时间可以根据人流量来进行调整3.2交通灯设计选用设备89C51单片机一片选用设备:89C31单片机一片,8255并行通用接口芯片一片,74LS08两片,74LS373一片,共阴极的七段数码管4个,红、黄、绿交通灯各两个,开关按钮、连线若干。33 交通灯总体硬件仿真图 3.4 89C51与8255的扩展 其中用单片机的P0端口来扩展8255,如上图连接硬件图
16、,这样连接后8255的控制口地址为FF7FH,PA,PB,PC的地址分别为FF7CH,FF7DH,FF7EH。35 红绿黄灯模块本系统同过8255的扩展端口PC0PC5六个端口来控制六个发光二极管,发光二极管采用阳极驱动的方式,当输入为高电平时点亮。同时通过外部中断0来控制等状态的改变。相应的子程序如下:;状态一东西方向绿灯,南北方向红灯PINT0:MOV A,40H JNZ BWL0 MOV A,41H MOV 45H,A ADD A,42H MOV 44H,A INC 44H INC 45HBWL0:MOV A,40H CJNE A,41H,BXD0BXD0:JNC PINT01 MOV
17、R0,#7EH MOV A,#0CH MOVX R0,A INC 40H DEC 44H DEC 45H RETI;状态二东西方向黄灯,南北方向红灯PINT01:MOV A,40HCJNE A,41H,BWL1MOV 45H,42HINC 45HBWL1:MOV A,41H ADD A,42H MOV 43H,A MOV A,40HCJNE A,43H,BXD1BXD1:JNC PINT02 MOV R0,#7EH MOV A,#14H MOVX R0,A INC 40H DEC 44H DEC 45H RETI;状态二东西方向红灯,南北方向绿灯PINT02:MOV A,40H CJNE A,
18、43H,BWL2 MOV A,41H MOV 44H,A ADD A,42H MOV 45H,A INC 45H INC 44H BWL2:MOV A,43H ADD A,41H MOV 43H,A MOV A,40H CJNE A,43H,BXD2BXD2:JNC PINT03 MOV R0,#7EH MOV A,#21H MOVX R0,A INC 40H DEC 44H DEC 45H RETI;状态二东西方向红灯,南北方向黄灯PINT03:MOV A,40H CJNE A,43H,BWL3 MOV 44H,42H INC 44H BWL3:MOV R0,#7EHMOV A,#22HMO
19、VX R0,A DEC 44H DEC 45HINC 40HMOV A,43HADD A,42HMOV 43H,AMOV A,40HCJNE A,43H,BXD3 MOV 40H,#00 BXD3:RETI3.6 数码管显示模块本系统中选用了两块双七段共阴数码管,分别用来显示东西方向和南北方向红绿灯倒计时剩余时间。用8255的PB端口来驱动,应为用同一组端口控制四个数码管因此要用到动态显示,这里用P1.0P1.3四个口来选中要送数显示的数码管,再用快速循环显示来达到所需的视觉效果。显示子程序如下:SNDISP:MOV A,44H ;南北方向的数码管显示MOV B,#10DIV ABMOV P1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 交通灯 报告
链接地址:https://www.31ppt.com/p-4147529.html