大学生毕业设计基于单片机的交通灯设计.docx

上传人:b****2 文档编号:1935492 上传时间:2023-05-02 格式:DOCX 页数:30 大小:233.50KB
下载 相关 举报
大学生毕业设计基于单片机的交通灯设计.docx_第1页
第1页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第2页
第2页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第3页
第3页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第4页
第4页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第5页
第5页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第6页
第6页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第7页
第7页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第8页
第8页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第9页
第9页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第10页
第10页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第11页
第11页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第12页
第12页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第13页
第13页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第14页
第14页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第15页
第15页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第16页
第16页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第17页
第17页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第18页
第18页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第19页
第19页 / 共30页
大学生毕业设计基于单片机的交通灯设计.docx_第20页
第20页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

大学生毕业设计基于单片机的交通灯设计.docx

《大学生毕业设计基于单片机的交通灯设计.docx》由会员分享,可在线阅读,更多相关《大学生毕业设计基于单片机的交通灯设计.docx(30页珍藏版)》请在冰点文库上搜索。

大学生毕业设计基于单片机的交通灯设计.docx

大学生毕业设计基于单片机的交通灯设计

摘要

随着现代化建设脚步的加快,汽车数量明显增加,城市交通变得越来越拥挤,而十字路口则是造成交通堵塞的主要“凶手”。

目前大多数城市采用的交通信号灯指挥控制系统采用电子线路加继电器构成,也有少数采用可编程控制器(PLC)构成。

本课题主要是采用单片机作为控制器,来实现交通信号灯的控制。

该系统有自动和应急控制两种工作方式:

自动方式的通车时间可以由程序设定,并且用LED数码管显示出时间;应急控制方式则可以根据需要使用按键将路口的信号灯都改为红灯。

关键词:

单片机;交通信号灯;LED动态扫描显示。

 

Abstract

Withtheacceleratedpaceofmodernization,amarkedincreaseinthenumberofcars,urbantransportationhasbecomemoreandmorecrowded,andthecrossroadsisthemaincauseoftrafficcongestion"murderer."Atpresentthemajorityofcitytrafficlightsusedincommandandcontrolsystemuseselectroniccircuitsaddrelayconsistsofasmallnumberoftheuseofprogrammablelogiccontroller(PLC)constituted.Themaintopicsaretheuseofsingle-chipmicrocomputerasacontroller,toachievethecontroloftrafficlights.Thesystemhastwotypesofautomaticcontrolandemergencywork:

automaticmodeoftheopeningtimecanbesetbytheprocedure,andwithLEDdigitaltubedisplaytime;emergencycontrolmodecanusethekeyswillberequiredinaccordancewiththesignaljunctionsarereplacedbyaredlight.

Keywords:

microcomputer;trafficlights;LEDdynamicscanshows.

目录

第一章绪论

1.1课题背景……………………………………………………………………4

1.2设计动机……………………………………………………………………5

1.3设计目的……………………………………………………………………5

第二章系统分析

2.1系统要求……………………………………………………………………6

2.2设计原理…………………………………………………………………6

2.2.1交通信号灯(双色灯)的工作原理……………………………7

2.2.2LED数码管的工作原理………………………………………7

2.2.3通行规则设计………………………………………………………8

第三章主要电路模块的实现方案比较及选择

3.1电源提供方案…………………………………………………………………9

3.2显示模块方案………………………………………………………………9

第四章系统硬件电路的设计

4.1硬件电路所需资源………………………………………………………9

4.2系统电路图…………………………………………………………………9

4.3各个模块的设计……………………………………………………………10

4.3.1主控制系统…………………………………………………………10

4.3.2通行灯输出控制…………………………………………………10

4.3.3时间显示模块………………………………………………………11

4.3.4特种车辆自动控制模块………………………………………………11

4.3.5电源电路………………………………………………………………12

第五章软件设计

5.1程序流程图……………………………………………………………………12

5.1.1主程序流程图…………………………………………………………12

5.1.2外中断1中断服务程序流程图……………………………………12

5.1.3T0中断程序流程图…………………………………………………13

5.2源程序设计………………………………………………………………14

第六章总结

课程设计过程中遇到的主要问题以及解决办法………………………………25

心得体会…………………………………………………………………………26

致谢…………………………………………………………………………27

结束语…………………………………………………………………………27

参考文献…………………………………………………………………………28

附录实物图…………………………………………………………………………28

 

第一章绪论

1.1课题背景

当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。

但这一技术在19世纪就已出现了。

  1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。

这是世界上最早的交通信号灯。

1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。

它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。

1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。

  信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。

1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。

绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。

左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。

红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。

黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。

随着经济的发展,交通运输中出现了一些传统方法难以解决的问题。

道路拥挤现象日趋严重,造成的经济损失越来越大,并一直保持大比例的增长。

现在交通系统已不能满足经济发展的需求。

由于生活水平的提高,人们对交通运输的安全性及服务水平提出了更高的要求。

在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。

并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。

1.2设计动机

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

那么靠什么来实现这井然秩序呢?

靠的就是交通信号灯的自动指挥系统。

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

该设计希望采用单片机的设计方法,来实现交通信号灯的控制,包括左拐、右拐、直行基本的交通灯的功能,计时牌显示路口通行转换剩余时间,在出现紧急情况时可由交通手动实现全路口车辆禁行而行人通行状态。

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

其他还有120s与60s通行管理转换等功能。

并且可以根据每个路口的需要采用数码管与点阵LED相结合的显示方法,既要求倒计时数字输出,又要求有状态灯输出等。

本系统实用性强、操作简单、扩展功能强,来修改程序中的时间,使其更人性化。

1.3设计目的

中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的作用。

智能交通灯的管理比重修一条马路无论在经济、交通运行速率上都有很好的效益、更加节约资源。

使交管人员有更多的精力投入到管理整个城市交通控制,带来更大的经济和社会效益,为创造美好的城市交通形象发挥更多的作用。

第二章系统分析

2.1系统要求

如上图,在城市的十字路口以单片机作为主控制器,在东西南北方向装设红、黄、绿灯按照事先设定的时序轮流点亮或熄灭;LED显示器对每个方向的信号灯的接通时间进行倒计时显示。

系统要求实现正常时序控制和应急控制两种方式。

同时在出现紧急情况可由交警手动实现全路口车辆进禁行。

2.2设计原理

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

特种车辆通行采用实时中断完成,识别方法采用按键判别。

按以上系统设计方案,单片机端口资源刚好满足要求。

该系统具有电路简单,设计方便,显示亮度高,耗电较少,可靠性高等特点。

整个电路的系统框图如下:

2.2.1交通信号灯(双色灯)的工作原理

双色LED灯是由一个红色LED管芯和一个绿色LED管芯封装在一起,共地而成。

当红色管芯的正极接高电平,绿色管芯的正极接低电平时,双色灯显示为红色。

反之,当红色管芯的正极接低电平,绿色管芯的正极接高电平时,双色灯显示绿色。

若两个管芯的正极都接高电平时,双色灯显示黄色。

反之两个灯管芯都接低电平时,双色灯灭。

2.2.2LED数码管的工作原理

通过同名管脚上所加电平的高低来控制发光二极管是否点量而显示不同的字形如doc,g,f,e,d,c,b,a,由于发光二极管为共阳极接法,输出端口为低电平,对应的二极管点亮。

七段数码管的连接驱动代码表如下:

显示数值

Docabcdefg

驱动代码(16进制)

0

11000000

C0H

1

11111001

0F9H

2

10100100

0A4H

3

10110000

0B0H

4

10011001

99H

5

10010010

92H

6

10000010

82H

7

11111000

F8H

8

10000000

80H

2.2.3通行规则设计

交通主要用于行车及行人的通行指示,按照通行规则如下:

(1)车辆南北直行、各路右拐,南北向行人通行。

南北向通行时间为1min,各路右拐比直行滞后10s开放。

(2)车辆南北向左拐、各路右拐、行人禁行。

通行时间为1min。

(3)车辆东西向直行、各路右拐,东西向行人通行。

东西向通行时间为1min,各路右拐比直行滞后10s开放。

(4)车辆东西向左拐、各路右拐、行人禁行。

通行时间为1min。

按照交通规则,红绿灯控制转换逻辑表如表1表2所列,表中通行规则,是以给控制红绿灯端口送控制码的方式实现的。

它的原理是,将按不同通行规则时的各路口的红绿灯亮灭情况转换为单片机端口控制码。

表1南北方向

P1.7P1.6

左拐

P1.5P1.4

直行

P1.3P1.2

右拐

P1.1P1.0

人行

120—110s/60—55s

10

01

绿

10

01

绿

110—70s/55—35s

10

01

绿

01

绿

01

绿

70—60s/35—30s

10

01/11

01

绿

01/11

60—10s/30—05s

01

绿

10

01

绿

10

10—0s/05—0s

01/11

10

01/11

10

表2东西方向

P2.7P2.6

左拐

P2.5P2.4

直行

P2.3P2.2

右拐

P1.1P1.0

人行

120—110s/60—55s

10

10

10

10

110—70s/55—35s

10

10

01

绿

10

70—60s/35—30s

10

10

01

绿

10

60—10s/30—05s

10

10

01

绿

10

10—0s/05—0s

10

10

01/11

10

第三章主要电路模块的实现方案比较及选择

2.1电源提供方案

为使模块稳定工作,须有可靠电源。

我们考虑了两种电源方案:

方案一:

采用独立的稳压电源。

此方案的优点是稳定可靠,且有各种成熟电路可供选用;缺点是各模块都采用独立电源,会使系统复杂,且可能影响电路电平。

方案二:

采用单片机控制模块提供电源。

该改方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。

综上所述,我们选择第二种方案。

2.2显示模块方案

该系统要求完成倒计时、状态灯等功能。

基于上述原因,我们考虑了三种方案:

方案一:

完全采用数码管显示。

这种方案只显示有限的符号和数码字苻,无法胜任题目要求。

方案二:

完全采用点阵式LED显示。

这种方案实现复杂,且须完成大量的软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形等。

方案三:

采用数码管与点阵LED相结合的方法因为设计既要求倒计时数字输出,又要求有状态灯输出等,为方便观看并考虑到现实情况,用数码管与LED灯分别显示时间与提示信息。

这种方案既满足系统功能要求,又减少了系统实现的复杂度。

权衡利弊,第三种方案可互补一二方案的优缺,我们决定采用方案三以实现系统的显示功能。

第四章系统硬件电路的设计

4.1硬件电路所需资源

AT89S52芯片一片,12MHZ晶振一个,共阳极的七段数码管3个,9012三极管3个,7805三端稳压电源一个,双色LED灯16个,470K欧姆电阻3个,20uf电容2个,上拉电阻1个开关按键3个、连线若干。

4.2系统电路图

以下是此次设计的电路图:

4.3各个模块的设计

4.3.1主控制系统

单片机的P1口和P2口用于控制南北及东西的通行灯,P0口及P3.0~P3.2口用于3位LED计时器的控制,特种车通过时使用外中断1口(P3.3),手动自动转换采用P3.7按键。

4.3.2通行灯输出控制

道口交通灯指示采用高亮度红绿双色发光二极管,左拐、直行、右拐及行人各一个。

当发光电流为6mA时,按公式R=(5-1.8)/0.006计算,限流电阻应为510Ω.由于南北通行时双向指示牌相同,因此每个端口应具有12mA的吸收电流能力。

图4.3.2为灯电路

图4.3.2指示灯电路

4.3.3时间显示模块

道口通行剩余时间采用高亮红色7段LED发光数码管显示,采用共阳数码管,如用单片机吸收电流驱动,列扫描驱动使用三极管,按每段6mA电流算,全显示字形“8”时,每个数码管需6mA×8=48mA。

由于时间显示每个道口相同,3组需144mA,因此设计中采用中功率三极管9012.图4.3.3为时间显示电路图

图4.3.3时间显示电路图

 

4.3.4特种车辆自动控制模块

自动道口灯在特种车辆到来时能自动关闭所有绿灯,让特种车通过。

设计中采用按键模拟特种车的到来,使用外部中断1来影响特种车的通行要求。

4.3.5电源电路

由于整个系统采用的电源电压需+5V电压,所以采用不可调的3端稳压器件,用常用的lm7850就可以满足系统电源的要求。

LM7850三端集成稳压电源内部由准电压回路、恒流源、过流保护、过压保护和短路保护回路等8部分组成具有低功耗,高效率,波纹系数小,输出电压稳定等优点。

第五章软件设计

5.1程序流程图

5.1.1主程序流程图

主程序主要负责总体程序管理功能,实现人机交互设定。

采用动态扫描方式显示时间,因此主程序大部分时间要调用扫描显示程序。

主程序流程图如下图

5.1.2外中断1中断服务程序流程图

P3.3按键模拟紧急情况(119,120车辆通过),有优先通行的权利,采用中断方式,流程图如下

5.1.3T0定时中断程序流程图

定时中断服务程序主要用于行车及行人的通行指示,程序流程图如下

5.2源程序设计

此次设计的源程序如下:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;交通灯;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

TIMEEQU50H;秒计数用

TIMESFREQU51H;临时寄存器

CONR5EQU52H;T11秒定时计数用

TIMED0EQU55H;单向最大定时时间,直行开始,人行开始120

TIMED1EQU56H;各路右转开始时间110

TIMED2EQU57H;前行结束提醒70

TIMED3EQU58H;前行结束,人行结束,左转开始60

TIMED4EQU59H;左转结束提醒

TIMED5EQU5AH;左转结束

TIMED6EQU5BH;

TIMED7EQU5CH;

SNEQUP1;南北口

EWEQUP2;东西口

SCANEQUP3;扫描口

LEDOUTEQUP0;段码口

SNEWFLAGBIT09H;东西口与南北口转换标志

;按键在扫描口的最高位,按一下,全红灯,再按一下,恢复原状态

;

;定时器T0、T1溢出周期为50MS,T0为秒计数用,

;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;中断入口程序;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;

ORG0000H;程序执行开始地址

LJMPSTART;跳到标号START执行

ORG0003H;外中断0中断程序入口

RETI;外中断0中断返回

ORG000BH;定时器T0中断程序入口

LJMPINTT0;跳至INTTO执行

ORG0013H;外中断1中断程序入口

LJMPINT11;外中断1中断返回,119.120中断

ORG001BH;定时器T1中断程序入口

LJMPINTT1

ORG0023H;串行中断程序入口地址

RETI;串行中断程序返回

;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;主程序;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;

START:

MOVSP,#80H

MOVR0,#00H;清70H-7AH共11个内存单元

MOVR7,#8FH;

CLEARDISP:

MOV@R0,#00H;

INCR0;

DJNZR7,CLEARDISP;

MOVTIMED0,#78H;单向最大定时时间,直行开始,人行开始120

MOVTIMED1,#6EH;各路右转开始时间110

MOVTIMED2,#46H;前行结束提醒70

MOVTIMED3,#3CH;前行结束,人行结束,左转开始60

MOVTIMED4,#0AH;左转结束提醒

CLRSNEWFLAG;南北先通行标志位

MOVTMOD,#11H;设T0、T1为16位定时器

MOVTL0,#0B0H;50MS定时初值(T0计时用)

MOVTH0,#3CH;50MS定时初值

MOVTL1,#0B0H;50MS定时初值(T1闪烁定时用)

MOVTH1,#3CH;50MS定时初值

;

JBSCAN.7,SSST;120秒管理

;以下为60秒管理

LCALLDL1MS

LCALLDL1MS

LCALLDL1MS

JBSCAN.7,SSST;干扰

MOVTIMED0,#60;单向最大定时时间,直行开始,人行开始60

MOVTIMED1,#55;各路右转开始时间55

MOVTIMED2,#35;前行结束提醒35

MOVTIMED3,#30;前行结束,人行结束,左转开始30

MOVTIMED4,#05;左转结束提醒

SSWAIT:

JNBSCAN.7,SSWAIT

LCALLDL1MS

LCALLDL1MS

LCALLDL1MS

JNBSCAN.7,SSWAIT

;

SSST:

MOVTIME,TIMED0;120秒

LCALLTUNBCD

MOVSN,#66H;

MOVEW,#55H;

SETBEA;总中断开放

SETBPX1

SETBEX1

SETBET0;允许T0中断

SETBTR0;开启T0定时器

MOVR4,#14H;1秒定时用初值(50MS×20)

MOVCONR5,#20

START1:

LCALLDISPLAY;调用显示子程序

JNBSCAN.7,KEYFUN;手动状态

SJMPSTART1;P1.0口为1时跳回START1

;

KEYFUN:

LCALLDISPLAY

LCALLDISPLAY

JBSCAN.7,START1

CLRET0

CLRTR0

MOVSN,#056H;全车道停,行人通

MOVEW,#056H;

MOVTIME,#00H;时间显示0

LCALLTUNBCD

KEYWAIT:

LCALLDISPLAY;

JNBSCAN.7,KEYWAIT;

KEYY:

LCALLDISPLAY;等待按键按下

JBSCAN.7,KEYY

LCALLDISPLAY

JBSCAN.7,KEYY

KEYWAIT1:

LCALLDISPLAY;

JNBSCAN.7,KEYWAIT1;

MOVTIME,TIMED0;从新开始计时初值

LCALLTUNBCD

CLRSNEWFLAG;南北先通行标志位

SETBTR0

SETBET0

AJMPSTART1

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;1秒计时程序;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;T0中断服务程序

INTT0:

PUSHACC;累加器入栈保护

PUSHPSW;状态字入栈保护

CLRET0;关T0中断允许

CLRTR0

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

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2