当前位置:文档之家› 单片机现代交通灯报告

单片机现代交通灯报告

广东海洋大学寸金学院《单片机》期末考查(论文设计)论文题目:现代交通灯Modern traffic ligths系别:信息技术系专业:电气工程及其自动化班级:电气工程及其自动化3班姓名:曾苑学号:2011103120338指导老师:叶伟慧职称:讲师日期:2013年12月15日广东海洋大学寸金学院教务处制目录目录 (1)摘要 (2)第1章引言 (3)1.1背景与意义 (3)1.2系统设计实现的目标 (3)第2章系统分析 (3)2.1系统原理 (3)2.2开发及运行环境 (4)第3章硬件电路设计 (5)3.1交通灯的芯片介绍 (5)3.1.1 AT89c51引脚介绍 (5)3.1.2 74LS245介绍 (6)3.1.3 7seg-mps2-cc七段数码管以及LED灯介绍 (7)3.2按键调整时间 (7)第4章测试 (8)4.1测试软件介绍 (8)4.2软件调试 (8)结束语 (10)附录 (11)程序代码 (11)摘要城市道口交通灯控制系统模型采用单片机作为主控制器,用于十字路口的车辆及行人的交通管理,每个方向具有左拐、右拐、直行及行人4种通行指示灯,计时牌显示路口通行转换剩余时间,在出现紧急情况时可以由交警手动实现全路口车辆禁行而行人通行状态。

另外,在特种车辆如119、120通过路口时,系统可自动转换为特种车辆放行,其他车辆禁行,15s后系统自动恢复正常管理。

其他还有盲人提示音、120s与60s 通行管理转换功能。

采用标准的AT89C52单片机作为控制器;通行倒计时显示采用3位LED数码管;右拐、左拐、直行及行人4种通行状态指示灯采用双色高亮发光二极管;LED显示采用动态扫描,以节省端口数。

特种车辆通行采用实时中断完成,识别方法采用红外线发射及接受方案。

整套电路模块由控制系统模块、通行灯输出控制显示模块、时间显示模块和自动特种车辆控制模块等组成。

道口交通控制系统控制程序主要分为以下几个模块:初始化程序、主程序、定时中断程序和特种车实时响应程序等。

设计时按红绿交通灯控制程序和特种车辆经过中断程序两大部分。

本系统以AT89C51单片机为核心,采用汇编语言编程,设计的交通灯可用于十字路口的车辆及行人的交通管理,设计中应用了两种倒计时显示方式,120s倒计时适用于车流量较大的大城市,60s倒计时可用于中小型城市。

关键词:单片机;显示;汇编语言;交通管理; LED数码管第1章引言1.1背景与意义近年来随着科技的飞速发展,单片机的应用正在不断深渗透到我们生活的各个领域,几乎每个领域有单片机的踪迹,同时带动传统控制检测技术日益更新。

在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。

十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。

那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。

交通信号灯控制方式很多。

本次课程设采用单片机AT89C51和芯片74LS245为中心器件来设计交通灯控制器,实现了能根据定时控制AT89C51芯片的P0口设置红、绿灯燃亮时间的功能;P1口设置红绿灯循环点亮,倒计时的时间由数码管显示。

1.2系统设计实现的目标在主干道上设置LED的红绿灯,(由于时间问题)设置红灯点亮14秒,绿灯点亮10秒,黄灯3秒,循环点亮,也可以随车流量的问题随时设置时间。

主要内容包括:1)红绿黄三灯循环点亮2)实现倒计时功能;3)按下按钮调整红绿灯的时间4)长按增加(减少)秒数按钮,以10秒递增(递减)。

第2章系统分析2.1系统原理实际交通灯分为东南西北四个方向以及左转右转,本次课程设计我们涉及的是简易交通灯,不包含左转右转,只包括显示红绿灯循环亮灭、倒计时以及可以因交通需要临时调整时间,原理较为简单。

东西通行,南北红灯亮。

过一段时间后,转状态。

东西绿灯灭,黄灯亮。

再转状态;东西红灯亮,南北绿灯亮通行。

过一段时间后转状态;南北绿灯灭,黄灯亮。

一段间后,又循环至初始状态。

2.2开发及运行环境本次设计包括51单片机、7SEG-MPX2的共阴七段数码管、74LS245芯片。

原理图如下:第3章硬件电路设计3.1交通灯的芯片介绍3.1.1 AT89c51引脚介绍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后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为低八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

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口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE 脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

PSEN:外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V 编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

74LS245介绍74LS245是我们常用的芯片,用来驱动led或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。

74LS245还具有双向三态功能,既可以输出,也可以输入数据。

当8051单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器。

当片选端/CE低电平有效时,DIR=“0”,信号由 B 向 A 传输;(接收)DIR=“1”,信号由 A 向 B 传输;(发送)当CE为高电平时,A、B均为高阻态。

由于P2口始终输出地址的高8位,接口时74LS245的三态控制端1G和2G接地,P2口与驱动器输入线对应相连。

P0口与74LS245输入端相连,E端接地,保证数据线畅通。

8051的/RD和/PSEN相与后接DIR,使得RD和PSEN有效时,74LS245输入(P0.1←D1),其它时间处于输出(P0.1→D1)。

7seg-mps2-cc七段数码管以及LED灯介绍LED显示和中断定时电路。

利用定时器T0产生每10ms一次的中断,每100次中断为1s。

对两个方向分别显示红、绿、黄灯,已经相应的剩余时间即可。

A方向红灯时间=B方向绿灯时间+黄灯缓冲时间。

由原理图可以看出单片机:P1口接LED灯,P1.0、P1.1、P1.2分别接南北方向红黄绿交通指示灯,P1.3、P1.4、P1.5分别接东西方向的红黄绿交通指示灯;P0口按顺序从P0.0到P0.6依次接南北数码管的a、b、c、d、e、f、g端;P2.0到P2.6依次接东西数码管的a、b、c、d、e、f、g端;3.2按键调整时间系统设置三个按键,SET(设置)用于选择要增加(减少)对应灯的时间;ADD (增加)用于设置增加亮灯的时间;SUB(减少)用于设置减少亮灯的时间。

增加或减少长按则可以以10秒递增(递减),方便人员的设置,电路图如下:当按下SET(P3.4)按键,P3.0和P3.1为高电平,共阴极数码管关闭,显示东西方向对应灯的时间;P3.5和P3.6对应ADD(加)和SUB(减)按钮。

按键图,前面接口P3.4置高电平,后面接地,按下后为低电平有效。

第4章测试4.1测试软件介绍Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

用过汇编语言后再使用C来开发,体会更加深刻。

Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

Keil C51软件是一个基于32位Windows 环境的应用程序,支持C语言和汇编语言编程,其6.0以上的版本将编译和仿真软件统一为μVision(通常称为μV2)。

Keil提供包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,由以下几部分组成:μVision IDE集成开发环境C51编译器、A51汇编器、LIB51库管理器、BL51连接/定位器、OH51目标文件生成器以及 Monitor-51、RTX51实时操作系统。

相关主题