基于51单片机的交通信号灯系统.docx

上传人:b****7 文档编号:9972254 上传时间:2023-02-07 格式:DOCX 页数:31 大小:790.28KB
下载 相关 举报
基于51单片机的交通信号灯系统.docx_第1页
第1页 / 共31页
基于51单片机的交通信号灯系统.docx_第2页
第2页 / 共31页
基于51单片机的交通信号灯系统.docx_第3页
第3页 / 共31页
基于51单片机的交通信号灯系统.docx_第4页
第4页 / 共31页
基于51单片机的交通信号灯系统.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

基于51单片机的交通信号灯系统.docx

《基于51单片机的交通信号灯系统.docx》由会员分享,可在线阅读,更多相关《基于51单片机的交通信号灯系统.docx(31页珍藏版)》请在冰豆网上搜索。

基于51单片机的交通信号灯系统.docx

基于51单片机的交通信号灯系统

摘要:

随着世界范围内科技的发展,社会的进步,但也导致城市化进程的加快,越来越多的人也买得起车了,从而导致交通拥挤的现象时有发生。

由此可以看出,简单的十字路口交通信号灯已经不能适应现代化发展的潮流,因此需要一个更加合理、有效的智能交通灯控制系统来缓解城市交通的压力。

在现代,利用单片机来实现交通信号灯的控制成为了我们调控交通的主流。

运用单片机控制交通信号灯比较方便,而且性能高,易于控制。

所以,我们有必要对这一课题进行一次系统的研究学习。

在本次毕业设计中,我的主要设计任务是在一个十字路口设计一个交通信号灯控制系统,并且利用单片机来对该系统进行合理的控制。

本系统由AT89C51单片机、交通信号灯状态控制电路、LED数码管显示电路、按键电路组成。

系统除了拥有基本交通信号灯状态控制功能外,还具有倒计时、时间设置等功能。

关键词:

单片机交通信号灯

Abstract

Withtheworldwidedevelopmentofscienceandtechnology,theprogressofthesociety,butalsoledthecitytospeedup,moreandmorepeoplecanaffordtobuyacar,causingtrafficcongestionphenomenon,canbeseen,trafficlightsatthecrossroadsofsimplealreadycannotadapttothemoderndevelopmenttrend,soweneedasmarttrafficthelampismorereasonable,effectivecontrolsystemtoalleviatethecitytrafficpressure.

Inmoderntimes,toachievecontroloftrafficlightsusingSCMintothemainstreamofourtrafficregulation.Theuseofsingle-chipmicrocomputertocontrolthetrafficsignallampisconvenient,highperformance,easytocontrol.Therefore,wearenecessarytostudyasystemonthissubject.Inthisgraduationdesign,themaindesigntaskistodesignacontrolsystemoftrafficlightsatacrossroads,andtheuseofsingle-chipmicrocomputertothereasonablecontrolofthesystem.ThissystemconsistsofAT89C51microcontroller,akeycircuit,thestateofthetrafficlightscontrolcircuit,LEDdigitaltubedisplaycircuit.Inadditiontothebasicstateofthetrafficlightscontrolfunction,butalsohasacountdown,timesettingandotherfunctions.

Keywords:

SCM,trafficsignallamp

 

1绪论

1.1交通控制系统的设计背景

随着世界范围内城市化进程的加快,并且汽车越来越普及化,城市的交通状况已经成为一个全球性的问题。

并且,原来简单的交通控制系统已经不能适应社会的需要,因此,这就需要我们设计出一个更加合理有效的智能交通控制系统。

我国自从改革开放以来,社会经济一直处在快速发展的过程中,尤其是21世纪以来发展就更加明显,城市化进程加快,人们生活水平的提高,再加上我国人口又多,汽车也就多了起来,这就导致交通拥堵的现象越来越严重。

因此,改善交通状况是我们首先需要实现的目标。

当然,要改善交通状况,交通信号灯在其中就起了不可或缺的作用。

所以,我们可以根据交通信号灯来设计智能交通控制系统。

1.2交通控制系统设计的现实意义

事实证明,交通信号灯的广泛应用,对城市交通的运行有了很大的帮助,并且减少了交通事故的发生,保证了道路的畅通,缓解了警力不足的压力,同时也反映了城市的面貌和国家的技术水平。

1.3国内外交通信号灯系统的发展情况

1868年,第一个信号灯在英国伦敦问世,它是由燃气带动的,标志着城市交通的正式开始。

接下来,由于技术水平的提高,交通信号灯得到了良好的发展。

从美国出现世界最早的交通信号控制系统和交通灯控制方案,到如今交通控制系统的智能化,都表明出交通控制系统在与时俱进。

在我国建国六十年来,尤其是在改革开放以来,我国在交通和城市的建设过程当中取得了巨大的进步,但是,由于经济和技术等因素的发展,以及人们生活水平的提高,但是我国现代化交通发展比较晚,由于国情的差别,交通状况也与国外有很大差别,自主开发的城市交通控制系统在整体性上比国外同类系统有较大差距,表现在:

1.城市道路结构不合理。

2.交通出行结构失衡。

3.交通管理技术水平低,交通事故频繁。

为了能够实现城市交通控制系统的最优控制的目标,探索一个有效的控制方法是很有必要的途径。

随着我国经济的快速发展,在不断拓宽交通道路以及修建新的交通要道的同时,交通信号灯的用途变得更加明显。

1.4主要研究内容

本设计主要研究通过单片机来控制交通信号灯、LED数码管显示器、按键电路等模块来实现智能交通控制。

(1)交通信号灯的设计利用相对向的灯的颜色相同,可以将其并联,统一控制,这样也就节省了资源和时间。

(2)相应的,LED数码管倒计时显示器采用两位数显示,这也就需要我们通过自己的专业知识,设计出来。

(3)要实现对交通灯亮灭时间的调整,可以通过按键来进行控制,这就需要设计出通过按键控制调节时间的程序。

2单片机交通控制系统方案设计

2.1单片机交通控制系统的通行方案

本设计系统主要由51单片机控制系统、2位LED数码管显示计时器、发光二极管组成的交通信号灯这几部分组成。

系统电源采用独立的+5V稳压电源,有各种成熟电路可供选用,使得本方案可靠稳定。

该设计可直接在I/O口上接按键开关,精简并优化了电路。

结合实际情况,显示界面采用LED数码管显示的方法,满足了倒计时的时间显示输出和状态灯提示信息输出的要求,减少系统的复杂度。

2.2单片机交通控制系统基本原理及所要实现的功能

2.2.1基本原理

交通信号灯控制系统主要是由51单片机进行控制,通过烧写程序到单片机,从而控制交通信号灯的亮灭,对LED数码管显示倒计时等功能。

通过这些功能,可以实现对交通的指挥,提示司机与行人安全通过路口的时间。

由上可知,该系统是在单片机为核心的基础之上,再经过按键设置模块产生输入,由LED倒计时模块和信号灯状态模块构成输出。

系统进入工作状态时,LED数码管能够立即显示倒计时,且由交通灯状态显示控制,进行实时控制,从而达到所要实现的要求。

2.2.2所要实现的要求

(1)交通信号灯由一个开关进行启动,并且在工作时,首先东西红灯亮,同时南北绿灯亮。

(2)东西红灯亮维持25S,在东西红灯亮的同时南北绿灯也亮,并维持20S。

到20S时,南北绿灯熄灭,黄灯亮,并维持5S,然后变成红灯,同时东西绿灯亮,维持20S后,黄灯亮5S,然后变成红灯,同时南北变成绿灯。

(3)周而复始。

可以用如下两表来表示交通状态与信号灯的关系:

表1:

交通状态

交通状态1

交通状态2

交通状态3

交通状态4

东西向

禁止通行

停车等待

车辆通行

停车等待

南北向

车辆通行

停车等待

禁止通行

停车等待

表2:

红绿灯状态

状态1

状态2

状态3

状态4

东西红灯、黄灯、绿灯

1,0,0

0,1,0

0,0,1

0,1,0

南北红灯、黄灯、绿灯

0,0,1

0,1,0

1,0,0

0,1,0

注:

0表示灭,1表示亮。

2.3单片机交通控制系统框图

由上部分两节所描述的,可以看出本设计系统主要由51单片机控制系统、2位LED数码管显示计时器、发光二极管组成的交通信号灯这几部分组成,并且是以单片机为控制核心的。

由此,可以得出系统的总体框图如图2-1所示。

图2-1单片机交通控制系统的总体框图

单片机接通电源后,该系统正常工作,由单片机根据程序来控制交通信号灯的变化,同时,在LED数码管上显示时间的倒计时,还能通过按键来实现对交通信号灯亮灭时间的调整等功能。

3系统硬件电路的设计

3.1控制芯片AT89C51单片机

3.1.1AT89C51单片机简介

AT89C51是一个低电压、高性能的微处理器,也被叫做单片机,自身携带4K字节的flash存储器。

可擦除存储器的单片机可以反复擦除1000次,采用的是一种非易失性的材料。

3.1.2AT89C51单片机的主要性能

·内含4Kb可重编程的FPEROM;

·与MCS-51产品指令系统完全兼容;

·128×8位的内部RAM;

·4个8位(32根)双向可位寻址的I/O端口;

·2个16位的计数/定时器;

·全双工方式的串行通道(UART);

·6个中断源;

·5个向量二级中断结构;

·最高时钟振荡频率可达12MHz;

·指令集中64条为单周期指令,支持6种寻址方式,共111条指令;

·低功耗空闲和掉电方式;

·片内振荡器和时钟电路。

3.1.3单片机组成及结构

单片机主要由CPU、存储器、可编程I/O口、定时/计数器、串行口等部分组成,且各部分通过单片机内部的总线连在一起,具体组成功能框图如下图3-1所示。

图3-1单片机基本组成功能框图

1)中央处理器CPU

它是单片机的最核心的部分,它的功能主要就是对单片机进行运算和控制。

2)数据存储器RAM

变化的数据经常被存放在该存储器当中,该存储器的地址现在被广泛地分成256个单元,前一半被分给用户,后一半分给专用的寄存器。

3)程序存储器ROM

单片机的程序和常数被存放在程序存储器里面,因此,该存储器一般为只读存储器,才能长期有效地保存运行。

4)定时/计数器

单片机的定时与计数一般都是由内部的定时/计数器实现。

5)并行I/O口

单片机通过并行的I/O口与外围设备连接,实现单片机内部数据与外围设备数据的输入与输出。

6)串行I/O口

单片机通过全双工串行口的同步与不同步的特性来实现与其他设备之间数据的传输。

7)时钟电路

单片机的时钟电路产生时钟脉冲序列从而实现对单片机的时钟控制。

8)中断系统

当单片机内部或外部发出中断请求时,单片机内部的中断系统就会对该请求进行管理和控制,并且及时的处理。

3.1.4单片机各引脚功能

AT89C51为双列直插(DIP)式封装的51单片机芯片,有40条引脚,其引脚示意及功能分类如图3-2所示。

图3-2单片机引脚图

VCC:

可以用+4~+5.5V的主电源。

GND:

用来接地。

P0口:

由8个端口组成,可以连接输入与输出,有地址/数据总线之称,分别提供8位地址和数据来访问片外存储器。

P1口、P2口和P3口:

都是由8个端口组成,都可以实现输入与输出的双向传输。

RST:

用来对单片机进行复位,使得单片机处于初始状态。

ALE/

地址锁存允许输出/编程脉冲输入端。

当单片机访问片外存储器时,该端口输出低位字节的控制信号,并且输入低电平的脉冲序列。

片外程序存储器选通控制信号端。

单片机的程序存储器利用输出负脉冲作为选通信号以此来访问片外程序存储器;但是当访问片外数据存储器时,这两次有效的信号不再出现。

/VPP:

为内外程序存储器选择/编程电源输入端。

(1)

端口接入高电平时,CPU从片内开始执行;

端口接入低电平时,仅访问片外存储器。

(2)VPP用于闪存编程当中,有12伏和5伏两种。

XTAL1与XTAL2:

为时钟电路引脚,可以用来配置片内振荡器。

3.1.5AT89C51的中断源

AT89C51的中断源可以分为3类,即外部中断、定时中断和串行口中断,其中又可以根据这三类将中断源具体分为5个中断请求源,分别为:

两个外部中断源①

(P2.3)和②

(P3.3),两个片内定时器T0和T1的一处中断源③TF0(TCON.5)和④TF1(TCON.7),⑤1个片内串行口发送和接收中断源T1(SCON.1)和R1(SCON.0)。

其中5个中断源的程序入口地址如表3所示:

表3:

中断源程序入口

中断源

入口地址

外部中断0

0003H

定时器T0中断

000BH

外部中断1

0013H

定时器T1中断

001BH

串行口中断

0023H

3.2LED数码管

LED数码管是一个“8”字型的器件,它的内部是由多个发光二极管通过引线连接组成。

从它的外表可以看出,数码管是由七个横向的发光二极管和一个小圆构成的小数点组成,可以分别用a,b,c,d,e,f,g,dp表示。

通过一个数码管可以表示0~9和A~F这十六个数,但是我们一般用来显示的也就是十进制数,十六进制数很少用。

LED显示器中的发光二极管共有两种连接方法:

(1)共阳极接法

把发光二极管的阳极连在一起构成公共阳极。

使用时公共阳极接+5V。

这样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。

(2)共阴极接法

把发光二极管的阴极连在一起构成公共阴极。

使用时公共阴极接地,这样阳极端输入高电平的段发光二极管就导通点亮,而输入低电平的则不点亮。

LED数码管输出低电平有效时,需选用共阳接法;输出高电平时,则需选用共阴接法。

如图3-3分别为LED数码管显示器外形和内部的两种接法。

(a)(b)(c)

图3-3LED数码管

(a)外形和引脚(b)共阳接法(c)共阴接法

3.3发光二极管

发光二极管是一个半导体器件,可以直接将电能转换成光能,这在我们日常生活当中还是非常容易看到的。

它由P、N两部分组成,当这两部分连接到一起,就可以形成一个P-N结。

通过这个P-N结的处理,将电能以光能的形式散发出,就形成光亮,而且发出光的颜色也是由P-N结的材料所决定的。

如下图3-3和图3-4所示,分别为发光二极管实物图和它的电路图符号。

图3-4发光二极管图3-5发光二极管电路图符号

根据本设计的特点,应该使用红绿黄三种普通的发光二极管,并且要在路口四个方向上都放置红绿黄三种二极管,且要按照相应的程序控制二极管灯光的亮灭。

3.4各电路模块设计

3.4.1单片机最小系统

主控器采用AT89C51,是美国ATMEL公司生产的一款性能稳定、低功耗的单片机,兼容MCS-51系列产品指令系统及引脚。

片内含4KB的可重复编程的Flash程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,使用5(1±20﹪)V的电源电压,128×8位的内部RAM,4个8位的双向可位寻址的I/O端口,2个16位定时/计数器,6个中断源,AT89C51单片机可提供许多高性价比的应用,灵活应用于各种控制领域。

单片机的P1口应用于控制南北及东西方向的交通信号灯,P0口及P2口于4组LED计时器的控制,P3口用于对交通灯亮灭时间的调整。

3.4.2交通信号灯显示电路

道路交通信号灯采用红绿黄三种发光二极管,经过编程和电路设计,通过单片机系统的控制,从而使得路口的车辆与行人能够按照信号灯的指示通过路口,以此来减少交通事故的发生以及缓解或者减少交通堵塞的现象。

在本设计的系统中,可以知道实际上需要控制的交通灯只有6组,相对面的同色灯利用相同的程序进行,因此,可以将相对面的同色灯并联起来接入电路,实现东西向与南北向各自的同步,如下图3-6为四个方向上的交通信号灯的电路图。

图3-6城市十字路口交通指示灯电路

3.4.3倒计时显示电路

在现实生活中,很多地方都是利用多个LED显示器来显示多位的数据,因此,在本次设计的系统当中,对于多位LED显示器构成的显示电路需要两个输出端口,一个用来显示十位数字,另一位用来显示个位数字。

采用七段数码管作为显示电路,两位数码管的静态显示,是将两个数码管的共阳极接连在一起并接+5V,a、b、c、d、e、f、g分别与限流电阻串联后连接到AT89C51的P0口和P2口上。

之所以称为静态显示,是因为各个LED的显示字符一经确定,相应的段码将维持输出不变,直到送入另一个字符的段码为止。

正因为如此,静态显示器的亮度都比较高。

下图3-7为两位数的数码管显示器的电路图。

图3-7时间显示驱动电路

3.4.4按键操作电路

按键一般是用来进行开关或者进行调试的按键,它是最简单的单片机输入设备,通过按键输入从而可以实现简单的人机交流。

按键可以接到VCC(或GND)上,接通电源后,启动按键电路,按键的抬起和按下分别对应单片机I/O端口的低电平和高电平,从而可以控制电路,得到想要的结果。

图3-8按键模块

上图3-8所示的按键电路为调整四个方向红绿灯的亮灭时间,其中一端接地,另一端分别于P3.4和P3.5相连,低电平有效,当按键按下,端口接地,单片机捕捉到信号,从而可以实现对红绿灯亮灭时间的调整。

 

4系统程序设计

4.1主程序框图

本系统大体上可以由如下模块组成:

交通信号灯控制程序,LED数码管显示倒计时程序,以及对红绿灯亮灭时间的调整程序。

图4-1主程序流程图

4.2交通灯闪烁子程序

在本设计的系统中,可以知道实际上需要控制的交通灯只有6组,相对面的同色灯利用相同的程序控制,即:

南北方向都是红灯,南北方向都是绿灯,南北方向都是黄灯,东西方向都是红灯,东西方向都是绿灯,东西方向都是黄灯。

因此,可以将这6组交通信号灯分别对应单片机的I/O端口,并且,当端口上为低电平时才会运行。

H_REDBITP1.0

H_YELLOWBITP1.1

H_GREENBITP1.2

L_REDBITP1.3

L_YELLOWBITP1.4

L_GREENBITP1.5

注:

其中,L表示东西向,H表示南北向,端口低电平有效。

由上可知,可以将信号灯分为4种状态:

(1)东西红灯亮20S,南北绿灯亮20S;

(2)东西红继续亮5S,南北黄灯亮5S;

(3)东西绿灯亮20S,南北红灯亮20S;

(4)东西黄灯亮5S,南北红灯也继续亮5S。

且这四种状态所对应的单片机P1端口的8个引脚值的十六进制码分别为0F3H、0F5H、0DEH、0EEH。

交通信号灯状态控制的部分程序如下所示:

其中状态之一为:

东西方向红灯亮,南北方向绿亮,并且持续计时20s。

MOVP1,#0F3H

MOV60H,61H

A1:

MOVR1,#50

A2:

ACALLBCD

ACALLDISPCLK

DJNZR1,A2

MOVA,60H

MOVR0,60H

ADDA,#99H

DAA

MOV60H,A

CJNER0,#05H,A1

4.3LED数码管显示子程序

该系统使用LED双数码管来显示倒计时电路,每秒刷新一次,由于需要显示两位数,但十位上的数和个位上的数所运行的方式是有很大区别的。

首先个位数倒计时,当个位数为0时,十位数减1,并且个位数变成9,然后依次进行。

这就需要我们运用单片机知识来设计出合适的程序,以此来实现系统所需要的要求。

LED数码管显示倒计时具体程序如下:

BCD:

;将十位数送到(51H),个位数送到(50H)

MOVA,60H;60H单元放的是倒计时值

MOVB,#10H

DIVAB

MOV51H,A

MOVA,B

MOV50H,A

RET

DISPCLK:

;显示部分

MOVDPTR,#TAB

MOVA,50H

MOVCA,@A+DPTR

MOVP0,A

CLRP2.6

LCALLDELAY

SETBP2.6

MOVA,51H

MOVCA,@A+DPTR

MOVP0,A

CLRP2.7

LCALLDELAY

SETBP2.7

RET

4.5红绿灯时间调整程序

交通信号灯状态变化的时间也不是一成不变的,当该路口处于车流量高峰时,可以适当地改变信号灯的时间,以此来缓解交通的压力。

本系统将时间调整按键与外部中断引脚P3.3连接,当需要改变时间时,在

端输入低电平,外部中断开始运行,然后就可以调整时间。

红绿灯时间调整程序程序如下:

加减程序

IINT1:

CLREA

JBP3.3,$

PUSHP1

PUSHP2

B1:

JNBP3.1,DDEC

IINC:

JNBP3.0,SINC;加1程序

ZINC:

;自动加1

MOVR0,#15

A10:

ACALLBCD

ACALLDISPCLK

DJNZR0,A10

MOVA,60H

ADDA,#01H

DAA

MOV60H,A

JNBP3.3,B1

JMPJS

SINC:

;手动加1

MOVR3,#20

A11:

ACALLBCD

ACALLDISPCLK

DJNZR3,A11

MOVA,60H

ADDA,#01H

DAA

MOV60H,A

B2:

JBP3.3,JS

JNBP3.4,SINC

JMPB2

DDEC:

;减1程序

JNBP3.0,SDEC

ZDEC:

MOVR4,#15

A12:

ACALLBCD

ACALLDISPCLK

DJNZR4,A12

MOVA,60H

ADDA,#99H

DAA

MOV60H,A

JBP3.3,JS

JMPB1

SDEC:

;手动减1程序

MOVR5,#20

A13:

ACALLBCD

ACALLDISPCLK

DJNZR5,A13

MOVA,60H

ADDA,#99H

DAA

MOV60H,A

B3:

JBP3.3,JS

JNBP3.4,SDEC

JMPB3

JS:

MOV61H,60H

POPP2

POPP1

SETBEA

RETI

 

5交通灯控制系统仿真与调试

5.1开发软件—KeilC51

KeilC51是由美国一家公司开发出来的一种办公应用软件,在51单片机设计中可以兼容C语言开发系统,这是一项很实用的应用软件。

KeilC51通过一个集成开发环境将C语言编辑器和仿真调试器等其他应用结合起来,组成一个应用广泛的应用软件。

此外,Keil比汇编程序简单,功能上也更加强大,可读性也强,并且还易维护和学习,是一个很符合

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

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1