AT89C52单片机控制交通灯系统.

AT89C52单片机控制交通灯系统.
AT89C52单片机控制交通灯系统.

目录

1 交通信号灯控制系统设计任务和性能指标 (1)

1.1 设计任务 (1)

1.2 性能指标 (1)

2 交通信号灯控制系统设计方案 (1)

2.1 设计思路 (1)

2.1.1 设计思路 (1)

2.1.2 功能设计 (2)

2.2 总体设计 (2)

2.2.1 通行方案设计 (2)

2.2.2 硬件设计方案 (4)

2.2.3 软件设计方案 (4)

3 交通信号灯控制系统硬件设计 (5)

3.1 系统硬件框图 (5)

3.2 单元电路设计 (5)

3.2.1 单片机最小系统 (5)

3.2.2 信号灯显示电路 (7)

3.2.3 倒计时显示电路 (8)

3.2.4 按键操作电路 (8)

4 交通信号灯控制系统程序设计 (8)

4.1 理论基础知识 (8)

4.1.1 定时器原理 (8)

4.1.2 软件延时原理 (9)

4.1.3 中断原理 (9)

4.2 主程序框图 (9)

5 调试分析及所用器件 (10)

5.1 调试环境 (10)

5.2 所用芯片 (11)

6 心得体会 (11)

7 参考文献 (12)

8 附录 (13)

附件1 程序清单 (13)

附件2 系统仿真图 (16)

摘要

交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。

近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。

本系统采用单片机AT89C52为中心器件来设计交通信号灯控制器,系统实用性强、操作简单、扩展性强。本设计系统就是由单片机最小系统、交通灯状态显示系统、LED 数码显示系统、复位电路和按键操作电路等几大部分组成。系统除具有基本的交通信号灯功能外,还具有倒计时、时间调整和紧急情况处理等功能,较好的模拟实现了十字路口可能出现的状况。

软件上采用KEIL C 编程,主要编写了主程序,LED数码管显示程序,中断程序,延时程序等。经过整机调试,实现了对十字路口交通灯的模拟。

关键字:AT89C52 交通灯 PROTUES 中断程序

1 交通信号灯控制系统设计任务和性能指标

1.1设计任务

利用单片机设计一个十字路口交通信号灯控制系统,该交通信号灯控制器由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外,并有倒计时系统显示信号灯转换时间。用红、绿、黄发光二极管作信号灯,两位八段数码管显示时间来控制交通信号灯的变化。模拟框图如图1所示。

图1 交通信号灯模拟图

1.2性能指标

(1)东西和南北方向的车辆交替通行,任意时刻只有一个方向通行,以黄灯闪烁来转换。

(2)系统开始运行时设置每次放行10秒,其中有2秒是黄灯闪烁提醒行人和车辆禁止通行。

(3)通行时间可在0~99秒内任意设置。

(4)有紧急情况处理功能,比如:有急救车辆通行时,暂时禁止其他车辆通行。

2 交通信号灯控制系统设计方案

2.1设计思路

2.1.1设计思路

(1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。

(2)确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以

及系统应拥有的各项功能,在这里,本设计除了有基本的交通功能,还增加了倒计时显示提示,基于实际情况,又增加了紧急状况处理和通行时间可调这两项特殊功能。

(3)选择器件,大体分配各个器件及模块的基本功能要求,设计主控电路、显示电路,信号灯状态电路,按键电路等。

(4)进行软件系统的设计,对于本系统,本人采用单片机C语言编写,对单片机内部结构和工作情况做了充足的研究,在深入了解了定时器,中断以及延时原理后,完成了软件的编写。

2.1.2 功能设计

本设计能模拟基本的交通控制系统,用红绿黄灯表示禁行,通行和等待的信号发生,还能进行倒计时显示,通行时间调整和紧急情况处理等功能。

(1)基本功能

采用红绿黄三种颜色的LED灯的亮灭来模拟信号灯,从而达到控制车辆的通行。

(2)倒计时显示功能

采用两位八段数码管来显示时间,来告知行人和车辆通行时间和要等待的时间。

(3)时间可调功能

通过键盘对时间进行手动设置,增加了人为的可控性,避免车少长等和减缓车多交通堵塞的麻烦。

(4)紧急处理

交通路口出现紧急状况在所难免,如特大事件发生,救护车等急行车通过等,我们都必须尽量允许其畅通无阻,由此在交通控制中增设禁停按键。

2.2 总体设计

单片机设计交通灯控制系统,可用单片机直接控制信号灯的状态变化,基本上可以指挥交通的具体通行,接入LED数码管就可以显示倒计时以提醒行使者,更具人性化。本系统在此基础上,加入了紧急情况处理与时间调整功能。

2.2.1 通行方案设计

十字路口分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。其具体状态如图2所示。说明:黑色表示亮,白色表示灭。交通状态从状态1开始变换,直至状态4然后循环至状态1,周而复始。

S1 东西通行S2 东西禁行过渡状态

S3 南北通行S4 南北禁行过渡状态

图2 交通信号灯状态

通过对具体的十字路口交通信号灯状态的演示分析,可以把这四个状态归纳如下:状态S1:东西方向绿灯亮,允许通行,南北方向红灯亮,禁止通行;

状态S2:东西方向绿灯转黄灯闪烁,允许通行,南北方向红灯亮,禁止通行;

状态S3:东西方向红灯亮,禁止通行,南北方向绿灯亮,允许通行;

状态S4:东西方向红灯亮,禁止通行,南北方向绿灯转黄灯闪烁,允许通行;

依据上述分析,东西的通行时间为状态S1和状态S2的时间之和,南北的通行时间为状态S3和状态S4的时间之和,因此可以列出各个路口灯的状态转换如表1所示(其中逻辑值“1”代表执行通行,逻辑值“0”代表禁止通行,逻辑值“L”代表绿灯转黄灯):

表1 交通灯状态转换表

状态时间

东西南北

绿灯黄灯红灯绿灯黄灯红灯

S1 8s 1 0 0 0 0 1 S2 2s 0 L(闪烁) 0 0 0 1 S 3 8s 0 0 1 1 0 0 S 4

2s

1

L(闪烁)

2.2.2 硬件设计方案

本系统选用Atmel 公司的AT 系列单片机AT89C51为中心器件设计交通信号灯控制器,实现了红绿灯循环点亮,绿灯变红灯中间为黄灯闪烁警示的功能。每个方向采用红绿黄三色的LED 灯的亮灭来模拟信号灯,采用两位八段共阳数码管,显示十字路口通行或禁止的剩余时间,通过键盘对时间进行手动设置,增加了人为的可控性,避免车少长等和减缓车多交通堵塞的麻烦,同时增设了紧急情况处理按键,因为交通路口出现紧急状况在所难免,如特大事件发生,救护车等急行车通过等,我们都必须尽量允许其畅通无阻。

所设计的系统硬件框图如图3所示。

图3 系统硬件框图

2.2.3 软件设计方案

设计要求为:首先南北方向红灯、东西方向绿灯亮,南北方向红灯10秒、东西

方向绿灯8秒,相应的数码管显示对应的数字并读秒,同时南北方向红色的二极管和东西方向的绿色二极管接通点亮显示,当东西方向的绿灯时间到,则东西方向的绿灯转为黄灯,同时数码管显示黄灯的时间2秒,东西方向的黄色二极管接通点亮,此时南北方向的红灯不变。南北方向的红灯和东西方向的黄灯时间同时到,此时南北方向的红灯跳转为绿灯,时间同样为8秒,东西方向有黄灯跳转为红灯,时间为10秒。当

STC80C51单片机

最小系统

LED 数码管显示

数码管 显示

按键控制电路

南北方向的绿灯时间到,南北绿灯跳转为黄灯,东西方向的红灯不变,当南北方向的黄灯和东西方向的红灯时间到,南北方向的黄灯跳转为红灯,东西方向的红灯跳转为绿灯。进入开始的状态,循环执行。此外还利用单片机的中断设计了紧急情况处理和时间调整的功能。

根据设计要求,程序框图如图4所示。软件采用KEIL C 语言完成。软件设计可以分为以下几个功能模块:

图4 程序结构框图

3 交通信号灯控制系统硬件设计

3.1系统硬件框图

根据设计的要求,单片机选用AT89C52,其内部带有8KB 的FLASH ROM ,设计时无需外接程序存储器,为设计和调试带来极大的方便。四个方向各采用三个不同色的LED 灯和1个两位的数码管显示,来实现该方向的指示灯的点亮时间倒计时。按键可以根据系统的需要进行操作。

初始化CPU 初始化中断

状态转换S1-S2-S3-S4

按键操作 中断处理 AT89C52

XTAL1 P0.0

XTAL2 | P0.5 RES

P2.0

| P2.7 P3

时钟电路

复位电路

信号灯显

倒计时显示

按键操作

图5 系统硬件框图

3.2单元电路设计

3.2.1单片机最小系统

对51系列单片机来说,单片机要正常工作,必须具有五个基本电路,也称五个工作条件:1、电源电路,2、时钟电路,3、复位电路,4、程序存储器选择电路,5、外围电路。因此,单片机最小系统一般应该包括单片机、晶振电路、复位电路、外围电路等,如下面的框图所示:

图6单片机最小系统框图

(1)电源电路设计

单片机芯片的第40脚为正电源引脚VCC,一般外接+5V电压。第20脚为接地引脚GND,常见电源电路设计如下图7所示:

图7 电源设计

(2)时钟电路设计

单片机是一种时序电路,必须要有时钟信号才能正常工作。单片机芯片的18脚(XTAL2)、19脚(XTAL1)分别为片内反向放大器的输出端和输入端,只要在18脚(XTAL2)和19脚(XTAL1)之间接上一个晶振,再加上2个20PF的瓷片电容即可构成单片机所需的时钟电路,本设计就采用图8所示时钟电路。

图8 时钟电路

此外,当采用外部时钟时,19脚(XTAL1)接地,18脚(XTAL2)接外部时钟信号。

(3)复位电路设计

单片机芯片的第9脚RST(Reset)是复位信号输入端。单片机系统在开机时或在工作中因干扰而使程序失控,或工作中程序处于某种死循环状态等情况下都需要复位。复位的作用是使中央处理器CPU以及其他功能部件都恢复到一个确定的初始状态,并从这个状态开始工作。AT89C52单片机的复位靠外部电路实现,信号从RST引脚输入,高电平有效,只要保持RST引脚高电平2个机器周期,单片机就能正常复位。常见的复位电路有上电复位电路和按键复位电路二种,如图9所示。本设计采用手动复位电路。

A.上电复位

B.手动复位

图9 复位电路

(4)程序存储器选择电路

单片机芯片的第31脚(EA)为内部与外部程序存储器选择输入端。当EA引脚接高电平时,CPU先访问片内8KB的程序存储器,执行内部程序存储器中的指令,当程序计数器超过0FFFH时,将自动转向片外程序存储器,既是从1000H地址单元开始执行指令;当EA引脚接低电平时,不管片内是否有程序存储器,CPU只访问片外程序存储器。

AT89S52内部有8KB的程序存储器,所以根据该脚的引脚功能,只要将该脚接上高电平,才能先从片内程序存储器开始取指令。

常见的程序存储器选择电路就是将第31脚直接接到正电源上。

(5)外围电路的设计

外围电路的设计主要依据项目要实现的功能,本项目要实现的功能是用单片机控制交通信号灯。

3.2.2交通信号灯显示电路

本系统采用LED作为信号灯来使用,单片机的I/O口直接与LED连接。在十字路口的四组红、黄、绿三色交通灯中,东西方向的同色灯连接在一起,南北方向的同色灯也彼此连接,受单片机AT89C52的P0.0—P0.5控制。12个LED指示灯采用共阳极的连接方式,因此I/O口输出低电平时,与之相连的LED会亮,输出高电平时,LED 熄灭。

3.2.3倒计时显示电路

该交通信号灯控制系统在正常工作情况下,为方便提示路上行人及车辆交通灯转换的剩余时间,专门为控制系统提供了一个倒计时的显示装置。该装置采用2位八段数码管来显示,每个路口需要1个,共4个,在设计电路时,本系统采用用共阳数码管,直接和P2口连接,作为段选,来控制每个数码管数字的显示,再通过P1.0—P1.3进行位选,来选择要显示的数码管。

3.2.3按键操作电路

该系统最大的好处就是可以实现时间的调整和紧急停车功能,通过六个按键来达到对路面通行状态的实时控制。

4 交通信号灯控制系统程序设计

4.1 理论基础知识

4.1.1定时器原理

定时器工作的基本原理其实就是给初值,让它不断加1直至减完为模值,这个初值是送到TH和TL中的。它是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值,即所要求的计数值设定为C,把计数初值设定为TC 可得到如下计算公式:

TC=M-C

式中,M为计数器模值。计数值并不是目的,目的是时间值,设计1次的时间,即定时器计数脉冲的周期为T0,它是单片机系统主频周期的12倍,设要求的时间值为T,则有C=T/T0。计算公式变为:

T=(M-TC)T0

模值和计数器工作方式有关,本系统选用方式1计数。在方式1时M的值为65536,单片机的主脉冲频率为12MHZ,经过12分频后,采用方式1最大延时是65.536毫秒。所以选择扫描周期为50ms。若使用软件则会耽搁程序流程,显然不可行。相反,时间计时方面却不可能只用计数器,因为显然1秒钟已经超过了计数器的最大定时间,所以我们还必须采用定时器和软件相结合的办法才能解决这个问题。

4.1.2软件延时原理

AT89C52单片机的工作频率为12MHZ,机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/12MHZ)=1us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间,但同时由于单片机的运行速度很快其他的指令执行时间可以忽略不计。

4.1.3 中断原理

本系统主要使用了定时器中断和外部中断,中断信号由引脚T0、INT0和INT1输入,低电平有效,CPU每个时钟周期都会检测INT0和INT1上的信号,单片机允许外部中断以电平方式或负边沿方式两种中断方式输入中断请求信号,可由用户通过设置TCON中IT0和IT1位的状态来实现。以IT0为例,IT0=0,为电平触发方式,IT0=1,为负边沿触发方式,本设计采用电平方式,IE0为其中断标志位,有中断信号则置位,中断服务子程序响应后,IE0自动清零。IE中的EA为允许中断的总控制位,为1开启,EX0为外部中断允许控制位,为1开启。

使用proteus软件进行电路仿真,芯片AT89C52还需要载入代码文件来支持其正常工作以实现预期功能要求。程序代码编写是整块设计的核心内容,本系统中利用一个定时器T0完成了交通指示灯所有的切换过程和数码管的倒计时功能,其中指示灯的切换有4种不同的操作,数码管的切换有2种不同的操作,用变量i表示状态的切换。采用C语言进行编程,下面简要介绍下各段程序代码的意义和功能。

4.2 主程序框图

主程序为交通灯四个状态循环转换的死循环,主程序代码和程序框图如下所示。

void main()

{ Init(); //初始化,基本功能循环工作 while(1) { key();

if(flag1==1&&flag_all!=1) //不在全部通行的模式下时正常刷新计数 { adjust_Time(); flag1=0; } if(flag2==1)

{ yellowled(); flag2=0; } display(); }}

全部控制程序实际上分为若干模块:键盘设置处理程序,状态灯控制程序,LED 显示程序紧停程序,中断服务子程序,红绿灯时间调整程序等。

整个软件程序方面主要分两大部分:主程序部分和中断处理程序。

图10 系统程序流程图

设计说明:该交通信号灯控制系统的软件设计采用的是顺序执行并反复循环的方法。在正常工作的情况下,每20s 循环变化一次。每个循环周期在还剩2s 时,正在通行路口的黄灯同时点亮并开始闪烁,以提醒路人上的行人及车辆,交通灯即将发生变化,当紧急情况需要禁止通行时,按下全部禁行按键,黄灯闪3秒后四个方向全变红灯,直到路面恢复正常后,通过按三次功能键即可复位。

开始

系统初始化

东西亮绿灯,南北亮红灯

调显示子程序(动态显示)

东西,南北方向换向

东西黄灯闪烁,南北亮红灯

中断处理子程序

处理

返回

5 调试分析及所用芯片

5.1 调试环境

本设计使用仿真软件Proteus和Keil C进行联合调试。原理图在Proteus提供的模板中选择恰当的元器件进行设计绘图,完成电路的搭建,发现设计中的错误及时改正。所有c语言源程序都在Keil C下编写,对仿真软件进行相应的设置后,Keil C 和Proteus能进行通信,即在Keil C中全速运行程序时,Proteus中的单片机系统也会自动运行。系统的软件调试借助于STC仿真器,在进行系统软件的连续调试之前要先进行软件的初调,就是要使各个子程序模块运行正确,程序的运行流程正确。软件调试主要分以下几个步骤进行:

1.功能子程序的调试,主要是查看每个子程序是否正确,这样方便查错。

2.程序流程的调试。主要是查看程序运行的步骤是否正确,在某时刻程序运行所处的位置是否正确,是否能正确运行各个中断服务程序。

5.2所用芯片及参数

表2 所用芯片

序号名称元件型号参数数量

1 单片机AT89C5

2 1

2 指示灯LED-RED\GREEN\YELLOW 12(各4个)

3 8段两位共阳数码管7SEG-MPX2-CA 4

4 电容CAP 22pF 2

5 电解电容CAP-ELEC 10μF 1

6 晶振CRYSTAL 12MHZ 1

7 电阻RES 100Ω12

8 电阻RES 500Ω 1

9 排阻RESPACK-8 10K 1

10 按键BUTTON 6

6 个人小结

这次是我认为最有意义的一次课程设计,从原理图设计到软件仿真,我从中收获了许多。刚开始设计时,我就在校门口仔细观察交通灯的转换,经过研究思考最终得到了上述的交通灯状态转换表。

对于交通灯这个题目,由于刚学了PLC实现交通信号灯的控制实验,所以就想通过不同的核心器件来实现同样的功能,来加深自己在这个题目上的深入研究,在确定题目之后,查阅了大量的资料,初步完成了电路设计方案。

在程序编写上,我选择了用KEIL C语言进行编程,。在整个程序的编写过程中,采用模块化,编一个子程序仿真一个,通过Keil 和proteus两个软件来实现的。Keil 帮助检查程序是否存在语法错误之类的问题,同时可以生成hex文件,供proteus软件仿真使用。通过一周的课程设计,使我更深入的学习了AT89C52单片机,尤其是在中断程序的编写上学到了好多。

七参考文献

[1]张毅坤. 单片微型计算机原理及应用,西安电子科技大学出版社 1998

[2]夏继强. 单片机实验与实践教程. 北京:北京航空航天大学出版社, 2001

[3]彭伟. 单片机C语言程序设计100例.北京:电子工业出版社, 2009

[5]雷丽文. 微机原理与接口技术.北京:电子工业出版社, 2001

[6]于永. 51单片机C语言常用模块与综合系统设计.北京:电子工业出版社, 2007

[7]谭浩强. C语言程序设计.北京:清华大学出版社, 2005

[8]于永. 51单片机C语言常用模块与综合系统设计.北京:电子工业出版社, 2007

8附录附件1 程序代码

#include

#include

#define uchar unsigned char

#define uint unsigned int

sbit yellowled_nb=P0^3; //南北黄灯

sbit yellowled_dx=P0^0; //东西黄灯

sbit greenled_nb=P0^4; //南北绿灯

sbit greenled_dx=P0^1;//东西绿灯

sbit K1=P3^0; //时间加1调整

sbit K2=P3^1;//时间减1调整

sbit K3=P3^6;//功能键

uchar code

table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x 82,0xf8,0x80,0x90,0xff};//共阳数码管uchar code

weixuan[]={0x01,0x02,0x04,0x08};

uchar data buf[4]; //显示缓冲区

uchar max_dx=10;//东西绿灯通行时间uchar max_nb=10;//南北绿灯通行时间uchar sec_nb;//南北数码指示值

uchar sec_dx;//东西数码管指示值

uchar flag_nb;

uchar flag_dx;//黄灯控制

uchar flag_all;//全部禁止黄灯控制标志uchar t;//控制禁止时的黄灯闪烁时长

uchar flag1,flag2;//flag1为1s定时标志,flag2为黄灯闪烁标志

uchar data time,time1;//time控制1s定时,time1控制黄灯闪烁时间

bit set=0;//交通灯方向切换标志

int adjust_flag=-1;//功能选择位//毫秒延时函数

void delayms(uint ms)

{ uint j,k;

for(j=0;j

for(k=0;k<110;k++);}

//调刷新计时数据缓冲

void adjust_BUFFER()

{buf[1]=sec_nb/10; //第1位东西秒十位if(buf[1]==0)

{ buf[1]=10;}

buf[0]=sec_nb%10; //第2位东西秒个位buf[3]=sec_dx/10; //第3位南北秒十位if(buf[3]==0)

{ buf[3]=10; }

buf[2]=sec_dx%10; //第4位南北秒个位}

//刷新调整南北时间缓冲

void adjust_BUFFER1()

{buf[1]=max_nb/10; //第1位东西秒十位if(buf[1]==0)

{ buf[1]=10; }

buf[0]=max_nb%10; //第2位东西秒个位buf[3]=max_dx/10; //第3位南北秒十位

if(buf[3]==0)

{ buf[3]=10; }

buf[2]=max_dx%10; //第4位南北秒个位}

void key1()//调整时间(+1)

{//调整对象标志位

if(adjust_flag==0&&flag_all!=1)

{ max_nb++; //南北加1S

if(max_nb==100)

max_nb=5;//最小为5

}

else if(adjust_flag==1&&flag_all!=1) { max_dx++;//东西加1S

if( max_dx==100)

max_dx=5;

}

if(adjust_flag!=-1&&flag_all!=1)

{adjust_BUFFER1();}

}

void key2()//调整时间(-1)

{//调整对象标志位

if(adjust_flag==0&&flag_all!=1)

{ max_nb--; //南北减1S

if(max_nb==4)

max_nb=99;//最大为120

}

else if(adjust_flag==1&&flag_all!=1) { max_dx--; //东西减1S

if(max_dx==4 )

max_dx=99;

}

if(adjust_flag!=-1&&flag_all==0)

{adjust_BUFFER1();}

}

void key3()//功能键判断

{adjust_flag++;

if(adjust_flag>=2)

{adjust_flag=-1;

}

if(adjust_flag==-1)

{ if(flag_all==1)

{ flag_all=0; }

sec_nb=max_nb-2;

sec_dx=max_nb;

TR0=1;

P0=0xeb;

adjust_BUFFER();

}

else

{

if(flag_all!=1)

adjust_BUFFER1();

}}

void key() //按键扫描

{

if(K1==0)//扫描按键1 (+1){ delayms(10);

if(K1==0)

{ key1();

while(!K1); }}

if(K2==0)//扫描按键2 (-1){ delayms(10);

if(K2==0)

{ key2();

while(!K2);

} }

if(K3==0)//扫描按键2 (-1){ delayms(10);

if(K3==0)

{ TR0=0;

key3();

while(!K3);

}

}}

void display()//显示数据

{ uchar i;

for(i=0;i<4;i++)

{

P1=0x00;

delayms(2);

P2=table[buf[i]];

P1=weixuan[i];

delayms(4);

}

}

//控制黄灯闪烁

void yellowled()

{

if(flag_nb==1)

{

yellowled_nb=~yellowled_nb;

}

else if(flag_dx==1)

{

yellowled_dx=~yellowled_dx;

}

if(flag_all==1)

{

yellowled_nb=~yellowled_nb;

yellowled_dx=~yellowled_dx;

t++;//一次闪烁时间为250ms

if(t>=12)

{

t=0;TR0=0; P0=0xdb;

} }}

void adjust_Time()

{ sec_dx--; sec_nb--;

if(set==0)//如果是南北方向通行时

{ if(sec_nb==0)

{ if(flag_nb==0)

{ sec_nb=2;

flag_nb=1;//南北黄灯控制

greenled_nb=1; //关绿灯

yellowled_nb=0;//南北黄灯亮}

else

{ flag_nb=0;//南北黄灯控制位清零

set=1;

sec_dx=max_dx-2;

sec_nb=max_dx;

P0=0xdd;

} } }

else

{ if(sec_dx==0)//如果东西方向通行时{if(flag_dx==0)

{ sec_dx=2;

flag_dx=1;//东西黄灯控制

greenled_dx=1; //关绿灯

yellowled_dx=0;//东西黄灯亮}

else

{flag_dx=0;//南北黄灯控制位清零

set=0;

sec_dx=max_nb;

sec_nb=max_nb-2;

P0=0xeb;

}}}

adjust_BUFFER();//刷新显示区

}

void Init()//中断初始化

{ TMOD=0X61;

TH0=0X3C;TL0=0XB0;

TH1=0xff;TL1=0xff;

ET0=1; ET1=1;

EX0=1; IT0=1;

EX1=1; IT1=1;

TR0=1; TR1=1;

EA=1;

flag_nb=0; flag_dx=0;

set=0;//南北通行

P0=0xeb;

sec_nb=max_nb-2;

sec_dx=max_nb;

adjust_BUFFER();

}

void main()

{ Init();

while(1)

{ key();

if(flag1==1&&flag_all!=1) //不在全部通行的模式下时正常刷新计数

{ adjust_Time(); flag1=0; }

if(flag2==1)

{ yellowled();

flag2=0; }

display(); }}

void time0( ) interrupt 1 using 1

{ TH0=0X3C; TL0=0XB0;

time++; time1++;

//控制黄灯闪烁

if(time1==5)

{ time1=0; flag2=1; }

if(time==20)

{ time=0;flag1=1;}}

//东西强行按键

void int0(void) interrupt 0 using 1 //外部中断0

{ //定时器停止计时,数码管不显示,且东西方向亮绿灯,南北方向亮红灯

uchar i; TR0=0;

for(i=0;i<4;i++)

{buf[i]=10; }

P0=0xdd;}

//南北强行按键

void int1(void)interrupt 2 using1

//外部中断1

{ //定时器停止计时,数码管不显示,且南北亮绿灯,东西亮红灯

uchar i; TR0=0;

for(i=0;i<4;i++)

{ buf[i]=10; }

P0=0xeb;}

//全部禁止

void time2() interrupt 3

{ //定时器停止计时,数码管不显示,且南北亮红灯,东西亮红灯

uchar i; TR0=1;

flag_all=1;

for(i=0;i<4;i++)

{ buf[i]=10; }

P0=0xf6;}

附件2系统原理图

附图1 PROTUES仿真交通信号灯电路图

附图2 PROTUES仿真电路图(正常通行)

单片机控制交通灯系统设计

摘要 本系统由单片机系统、键盘、LED显示、交通灯演示系统组成。系统包括人行道、左转、右转、以及基本的交通灯的功能。系统除基本交通灯功能外,还具有倒计时、时间设置、紧急情况处理、分时段调整信号灯的点亮时间以及根据具体情况手动控制等功能。 本设计是单片机控制的交通灯控制系统。单片机即单片微型计算机。由RAM,ROM,CPU构成,其集定时、计数和多种接口与一体的微控制器。它体积小、成本低、功能强,广泛的应用于只能产业和工业自动化上。而51系列单片机是各类单片机中最为典型和富有代表性的一种。 关键字:单片机;交通灯;AT89S52;Proteus仿真

ABSTRACT This system by single chip microcomputer system, keyboard, LED display, traffic lights of the demo system. System including sidewalks, turn left, turn right, and the basic function of traffic lights. System in addition to the basic function of traffic lights, also has a countdown, time setting, emergency treatment, light time of period of time to adjust light and manual control based on the specific situation, and other functions. This design is a single-chip microcomputer control of traffic lights control system. SCM the single chip microcomputer. Formed by RAM, ROM and CPU, timing, count and various interface and the integration of the micro controller. It has small volume, low cost, strong function, widely used in industry and industrial automation. And 51 series microcontroller is the most typical and representative in all kinds of single chip microcomputer. Key words: Single chip microcomputer;Traffic lights;AT89S52;Proteus simulation

基于AT89c51单片机实现的交通灯

江西科技师范大学 通信与电子学院《单片机应用技术》实训报告实训题目:模拟交通灯 小组成员:龚石冲罗仁敏曾建伟 班级:12电子科学与技术 指导老师:熊朝松

一、实训选题内容、要求 交通模拟灯 要求: 1、南北方向为主干道,东西方向为支路;主干路绿灯时间为45秒,红灯时间为35秒; 支路绿灯时间30秒,红灯时间为50秒,两个方向的黄灯时间都为4秒; 2、使用定时器实现时间的倒计时;用显示部件显示主干道路的倒计时变化; 3、设计三个外部按钮,分别用以手动控制紧急情况下两个方向同时禁通过;南北方向 长时间通过(不显示时间倒计时变化);东西方向长时间通过;释放按钮后则正常 通行。 二、实训计划和人员安排 经小组人员商定,分工完成任务,在课余时间完成。 若其中遇到什么问题,大家聚在一起讨论解决。具体分工如下: 1、程序编写:龚石冲 2、实体焊接:龚石冲 3、实训报告:罗仁敏 4、视频及PPT:曾建伟 三、实训选题分析 交通灯由东西南北四向灯,倒计时显示,人行横道通行指示标志等部分组成。其中东西南北四向灯中的每一向都由红、黄、绿三色灯组成;东西为一组,南北为一组。黄灯在红绿灯之间转换时亮。倒计时显示表示红、黄、绿灯亮时所剩时间。由于人行横道通行指示标志与红灯是同步的,所以在模拟交通灯时省略。交通会遇到一些突发情况。因此交通信号灯要设定一些特定功能,以防不时之需。 整个电路由单片机完成,控制部分由软件完成,硬件只负责响应。 四、方案设计 方案一:主控系统采用AT89C51单片机作为控制器,由定时器1间接控制通行倒计时及南北和东西的通行。由按键开关完成禁止通行,东西 通行,南北通行。 方案二:主控系统采用AT89C51单片机作为控制器,由延时函数完成信号灯

单片机控制红绿灯系统

关键词:AT89C51;7448,LED 2方案论证 2.1设计任务 设计基于单片机的智能交通红绿灯控制系统,要求能通过按键或遥控器设置系统参数,系统运行时,“倒计时等信息”能通过数码管或点阵发光管显示,设计时应考虑交通红绿灯控制的易操作性及智能性。以单片机的最小系统为基础设计硬件,用汇编语言、或C语言设计软件。通过本设计可以培养学生分析问题和解决问题的能力,掌握Mcs51单片机的硬件与软件设计方法,从而将学到的理论知识应用于实践中,为将来走向社会奠定良好的基础。 东西(A)、南北(B)两干道交于一个十字路口,各干道有一组红、黄、绿三个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行,黄灯亮时车辆及行人小心通过。红灯的设计时间为45秒,绿灯为40秒,黄灯为5秒。 2.2 方案介绍 方案1设计思想: 采用分模块设计的思想,程序设计实现的基本思想是一个计数器,选择一个单片机,其内部为一个计数,是十六进制计数器,模块化后,通过设置或程序清除来实现状 态的转换,由于每一个模块的计数多不是相同,这里的各模块是以预置数和计数器计 数共同来实现的,所以要考虑增加一个置数模块,其主要功能细分为,对不同的状态输 入要产生相应状态的下一个状态的预置数,如图中A道和B道,分别为次干道的置数选 择和主干道的置数选择。 方案2 设计思想: 由两个传感器监视南北方向即A道与东西方向即B道的车辆来往情况,设开关K=1 为有车通过,K=0为没有车通过。则有以下四种情况: Ka=1时:Kb=0,表示A有车B没有车,则仅通行B道: Kb=1,表示A有车B有车,则优先通行A道; Ka=0时:Kb=0表示A没有车B也没有车,同样优先通行A道; Kb=1表示A没有车B有车,则仅通行B道。 方案比较: 方案1用了模块设计,而方案2采用逻辑设计,相比之下1有较强的可读性和较强 的可修改性,而2则在设计上显得较简单,设计纯朴,便于测试,它的优势则在于提供

基于单片机的十字路口交通灯控制系统设计

长沙航空职业技术学院毕业设计(论文) 题目:基于单片机的十字路口 交通灯控制系统设计 学生姓名 系别航空电子电气工程系 专业应用电子技术专业 学号 指导教师 职称

目录 摘要 (2) 前言 (4) 第一章绪论 (5) 1.1背景 (5) 1.2 设计的目的及意义 (5) 1.3 交通灯控制系统设计的任务与要求 (5) 1.4 设计实现的主要功能 (6) 第二章交通灯的总体方案设计与论证 (7) 2.1 显示界面方案 (7) 2.2 输入方案 (7) 第三章交通灯原理分析 (8) 3.1 交通灯显示时序的理论分析 (8) 3.2 交通灯显示的理论分析 (9) 3.2.1倒计时显示的理论分析 (9) 3.2.2状态灯显示的理论分析 (10) 第四章交通灯系统硬件设计 (11) 4.1 交通灯系统设计芯片选择 (11) 4.2.1系统构成: (12) 4.2.2七段数码管介绍: (12) 第五章交通灯系统软件设计 (14) 5.1程序设计流程图 (14) 5.2 交通灯系统编程信息 (16) 第六章交通灯的仿真及调试 (17) 6.1 Proteus软件仿真 (17) 6.2功能调试 (18) 6.3 交通灯实物调试 (19) 结论 (21) 致谢 (22) 参考文献 (23) 附录 A(源程序) (24) 附录 B(电路原理图) (27) 附录 C(PCB图) (28)

摘要 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MCS-51系列单片机AT89C51为中心器件来设计交通灯控制器,实现了能根据实际车流量通过8051芯片的P1口设置红、绿、黄灯燃亮时间的功能;红绿灯循环点亮,倒计时剩3秒时黄灯警示,显示时间通过P2口输出至双位数码管。本系统设计周期短、可靠性高、实用性强、操作简单、维护方便、扩展功能强。 关键词:单片机;交通灯;AT89C51

单片机课程设计——交通灯控制系统设计

本科课程设计报告 单片机课程设计报告交通灯控制系统设计

摘要 本设计是针对交通灯系统的设计,由单片机AT89C51(实物用AT89S52)、键盘、LED显示、交通灯演示系统组成。单片机是把微型计算机的各功能部件集成在一块芯片中,构成的一个完整的微型计算机。AT89C51单片机是MC-51中的子系列,是一组高性能兼容型单片机,AT89C51是一个低功耗高性能的CMOS 8位单片机,40个引脚,片内含4KB Flash ROM和128B RAM,它是一个全双工的串行通行口,既可以用常规编程,又可以在线编程。 本设计中的数码管的选通采用的方法是动态显示,对每一位数码分时轮流通电显示,复位电路采用上电+按钮电平复位,时钟电路采用内部时钟产生方式。对特殊情况的处理采用中断处理方式,在中断处理程序中采用对管脚的状态查询扫描,已采取相应情况的处理。 对设计方案进行电路硬件设计,并将已编程的程序载入调试,可以得到理想的实验效果。系统包括人行道、左转、右转、以及基本的交通灯的功能.具体功能是假如 A 道和B道上均有车辆要求通过时,A、B道轮流放行。A道放行 25秒,B道放行20秒。一道有车而另一道无车,交通灯控制系统能立即让有车道放行。有紧急车辆要求通过时,系统要能禁止普通车辆通行,A、B道均为红灯,紧急车由K2 开关模拟。绿灯转换为红灯时黄灯亮 1秒钟。系统除基本交通灯功能外,还具有倒计时、时间设置、紧急情况处理、分时段调整信号灯的点亮时间以及根据具体情况手动控制等功能。

目录 1引言.......................................................................................................................................... - 1 - 1.1交通灯的重要作用........................................................................................................... - 1 -1.2该交通灯系统的特点....................................................................................................... - 1 -2系统总体方案及硬件设计 ......................................................................................................... - 2 - 2.1原理框图........................................................................................................................... - 2 -2.2设计功能........................................................................................................................... - 2 - 2.3交通灯控制系统各部分硬件组成................................................................................... - 2 - 2.3.1复位部分.................................................................................................................... - 2 - 2.3.2时钟电路部分............................................................................................................ - 3 - 2.3.3路口指示灯部分........................................................................................................ - 3 - 2.3.4显示部分.................................................................................................................... - 3 -2.4元器件清单....................................................................................................................... - 4 -3软件设计..................................................................................................................................... - 5 - 3.1交通灯控制系统软件流程图及程序分析....................................................................... - 5 - 3.1.1主程序流程图及程序模设计.................................................................................... - 5 - 3.1.2INT0中断服务程序流程图及程序模设计.............................................................. - 6 -3.2路口指示灯部分............................................................................................................... - 7 - 3.3显示部分........................................................................................................................... - 7 - 4. Proteus软件仿真 ..................................................................................................................... - 8 - 5 课程设计体会......................................................................................................................... - 10 -参考文献....................................................................................................................................... - 10 -附1:源程序代码 (13) 附2:系统原理图 (20)

基于51单片机的十字路口交通灯控制系统设计(含源码及仿真图)

课程设计任务书 专业计算机科学与技术 班级09计(嵌入式系统方向)姓名江海洋 学号0905101072 指导教师刘钰 金陵科技学院教务处制

摘要 本文介绍了一个基于MCS-51及PROTEUS的十字路口交通灯控制系统的设计与仿真,通过对现实路况交通灯的分析研究,理解交通控制系统的实现方法。 十字路口交通灯控制系统通常要实现自动控制和在紧急情况下禁止普通车辆,而让紧急车辆优先通行。本文还对MCS-51单片机的结构特点和重要引脚功能进行了介绍,同时对智能交通灯控制系统的设计进行了详细的分析。最后介绍了PROTEUS嵌入式系统仿真与开发平台的使用方法,利用Proteus 软件对交通灯控制系统进行了仿真,仿真结果表明系统工作性能良好。 关键字:单片机,proteus仿真,中断,十字路口交通灯控制系统

前言 1,十字路口的交通控制系统指挥着人和各种车辆的安全运行,对交叉口实行科学的管理与控制是交通控制工程的重要研究课题,是保障交叉口的交通安全和充分发挥交叉口的通行能力的重要措施,是解决城市交通问题的有效途径。交通灯信号灯的出现是人类历史上的一次重大改革,使人类的聚居生活,产生了深远的影响。使交通得以有效管制,对于疏导交通流量,提高道路通行能力,减少交通事故有明显效果。如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。随着电子技术的发展,利用单片机技术对交通灯进行智能化管理,已成为目前广泛采用的方法。 2,此十字路口交通灯控制系统,分东西道和南北道,设东西道为A道,南北道为B 道。规定:A道放行时间为2分钟,B道放行1.5分钟;绿灯放行,红灯停止;绿灯转红灯时,黄灯亮2秒钟;若有紧急车辆要求通过时,此系统应能禁止普通车辆,而让紧急车辆通过。 3,应用单片机实现对交通灯的控制,在十字路口用红,黄,绿的指示灯,加上四个以倒计时显示的数码管来控制交通。考虑到紧急车辆,设计紧急车辆开关。

用51单片机控制交通灯汇编语言编写

基于51单片机的交通灯控制系统设计 摘要:在日常生活中,交通信号灯的使用,市交通得以有效管理,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。交通灯控制系统由80C51单片机、键盘、LED 显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,市交通实现有效控制。 关键词:交通灯,单片机,自动控制 一引言 当今,红绿灯安装在个个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这个技术在19世纪就已经出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械般手势信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的会议大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转方式玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,是警察受伤,遂被取消! 电气启动的红绿灯出现在美国,这种红绿灯由红黄绿三色圆形的投光器组成,1914年始装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 信号灯的出现,使得交通得以有效的管理,对于疏导交通流量、提高道路通行能力、减少交通事故有明显效果。1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯时通行信号灯,面对绿灯的车辆可以直行,左转弯和右转弯,除非两一种标志禁止某一种转向。左右转弯车辆必需让合法的正在路口内行驶的车辆和过人行横线的行人优先通行。红灯是禁行信号灯,面对红灯的车辆必需在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已经十分接近停车线而不能安全停车的可以进入交叉路口! 二概要设计 2.1 设计思路 利用单片机实现交通灯的控制,该任务分以下几个方面: a 实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。 b 用数码管显示倒计时。可以利用动态显示或静态显示,串行并出或者并行并出实现。 C 实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下,那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,让时间回到只能隔断处继续进行。 2.2总体设计框图 见图一:

51单片机控制交通灯

#include #define uchar unsigned char #define uint unsigned int sbit dula=P2^6; sbit wela=P2^7; sbit beep=P2^3; unsigned int pp; unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; uchar j,k,l=255; uchar a1,a0; uchar shijian,deng=2; void delay(unsigned int i)//延时函数 { for(j=i;j>0;j--) for(k=125;k>0;k--); } void display(unsigned char sh_c,unsigned char g_c) { dula=0; P0=table[sh_c]; dula=1; dula=0; wela=0; P0=0xfe; wela=1; wela=0; delay(5); P0=table[g_c]; dula=1; dula=0; P0=0xfd; wela=1; wela=0; delay(5); }

void main() { TMOD=0x01; TR0=1; TH0=(65536-46080)/256; TL0=(65536-46080)%256; ET0=1; EA=1; while(1) { if(shijian==0) { switch(deng) { case 0: shijian=50; //红灯 deng=1; break; case 1: shijian=15; //黄灯 deng=2; break; case 2: shijian=50; //绿灯 deng=3; break; case 3: shijian=15; //黄灯 deng=0; break; } } if(pp==20) { pp=0; shijian--; } a0=shijian%10; a1=shijian/10; display(a1,a0); switch(deng) { case 1: P1=0X00; //红灯 break; case 2: //黄灯 if(shijian%2==0) P1=0x00; if(shijian%2==1) P1=0xff;

单片机的交通灯显示系统

单片机课程设计 基于单片机的交通灯显示系统 交通灯是日常生活中常见的自动控制产品,人们的日常出行及人身安全等都与交通灯有着密切的联系。本文提出一种基于单片机的交通灯设计,系统包含三个功能模块: (1)交通灯LED显示模块,实时显示东西、南北两个路口红、黄、绿三种灯的状态; (2)定时器模块,中断计算绿灯剩余时间; (3)独立按键模块,分为紧急制动按钮和夜间模式按钮两个按钮; (4)LCD液晶显示模块,显示绿灯亮的剩余时间 系统结构如下图所示: 关键词:定时器;液晶显示;独立按键

山东经济学院课程设计 目录 摘要...................................................................................................... 错误!未定义书签。引言. (1) 1.交通灯的概述 (2) 1.1交通灯的结构 (2) 1.2 工作原理 (3) 1.3功能应用 (3) 1.4工作流程 (4) 2 交通灯显示系统组成 (5) 2.1 定时器TR1模块的选择与设计 (5) 2.2 LCD液晶显示模块的选择与设计 (5) 2.3独立按键模块的选择与设计 (7) 2.4LED模块的选择与设计 (8) 3 实验结果演示 (9) 结论 (10) 参考文献.................................................................................................. 错误!未定义书签。附录.. (11) 1.原件明细表 (11) 2.源程序清单 (11) 致谢 (17)

基于单片机的交通灯控制系统设计

兰州文理学院学生毕业论文 题目:基于单片机的交通灯控制系统 作者: 指导老师: 电子信息工程学院电子系电子信息工程技术专业2011 级三年年制一班 2013年11月15 日

基于单片机的交通灯控制系统 摘要:介绍一种基于单片机的交通灯控制系统设计。本文在对目前交通控制进 行深入分析的基础上,运用程序时间控制、传感器检测、实时调整智能化控制的实现技术,将传感器监测、实时调整车辆通行时间的算法与单片机控制作用相结合,提出了基于单片机的交通控制系统设计方案。矚慫润厲钐瘗睞枥庑赖。 硬件方面该方案主要是基于单片机的交通灯控制系统由单片机、交通灯显示、LED倒计时、车流量检测及调整、违规检测、智能报警、紧急处理、时间模式手动设置等模块组成。系统除基本交通灯功能外,还具有通行时间手动设置、可倒计时显示、急车强行通过、车流量检测及调整、交通异常状况判别及处理等相关功能。理论证明该系统能够简单、经济、有效地疏导交通,提高交通路口的通行能力。聞創沟燴鐺險爱氇谴净。 程序方面,编写适应某一地方的程序,输入到相应的单片机当中以调整时间、智能检测、以及智能报警等应用使之成为某一地方的一套独特的交通灯控制系统。这样可以保证高效安全的交通秩序,除了制定一系列的交通规则,还必须通过一定的科技手段加以实现。残骛楼諍锩瀨濟溆塹籟。 本设计主要做了如下几方面的工作:一是确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,二是进行传感器的硬件电路、显示电路等的设计和基本功能要求。酽锕极額閉镇桧猪訣锥。 关键字:交通控制;传感检测;单片机;智能时间控制

Abstract This paper introduces a design of control system of traffic lights based on single chip microcomputer. Based on the current traffic control based on the thorough analysis, application time to achieve control, sensor detection, real-time adjustment of intelligent control, sensor monitoring, real-time adjustments to traffic control algorithm and the role of single-chip combination, put forward the design scheme of traffic control system based on single chip microcomputer.彈贸摄尔霁毙攬砖卤庑。 The hardware aspect of the project is mainly composed of a traffic light control system based on single chip microcomputer, the traffic light display, LED countdown, traffic detection and adjustment, violation detection, intelligent alarm, emergency treatment, time mode manual settings module based on. In addition to the basic traffic lights function, but also with the passage of time manually, but the countdown display, urgent vehicle passing, distinguishing traffic detection and adjustment, and handling of traffic anomalies and other related functions. Theory shows that the system can simple, economic and effective relieves traffic, improving the traffic intersection traffic capacity.謀荞抟箧飆鐸怼类蒋薔。 The program, written to a local procedure, the input to the corresponding microcontroller to adjust the time, intelligent detection, and smart alarm application to become a place of a set of traffic lights unique control system. This can ensure safe and efficient traffic order, except for a series of traffic rules, it must be achieved through certain means of science and technology.厦礴恳蹒骈時盡继價骚。 This design mainly do the following aspects of work: one is to determine the overall design, traffic control system includes a crossroads, specific traffic ban the function design and the system should have, the two is the hardware circuit for the sensor, display circuit design and the basic functional requirements.茕桢广鳓鯡选块网羈泪。 Key Words:Traffic control;sensor;SCM;intelligent control鹅娅尽損鹌惨歷茏鴛賴。

基于单片机的交通灯控制系统

基于单片机的交通灯控制系统 一、实验目的 1、了解交通灯的控制方法 2、掌握8051单片机基本操作 3、掌握keil和PrOteuS软件的使用 二、实验原理 通过对十字路口的观察,发现红绿灯的控制原理:首先南北方向右转加直行的绿灯亮起。此时,东西方向为红灯;当右转加直行绿灯倒计时进入最后5秒, 绿灯切换为黄灯并开始闪烁,东西方向红灯不变;接着南北方向切换为左转灯,东西方向依然是红灯;同样当倒计时进入最后5秒时,黄灯开始闪烁。东西方向为红灯。然后东西方向的右转加直行绿灯亮起,以此类推。 三、实验内容及程序 主程序: void main (VOid)

Busy_LED=O; SPeCiaLLED=O; ITO=1; //INTO 负跳变触发 TMOD=O X OI;//定时器工作于方式1 TH0=(65536-50000)∕256;// 定时器赋初值TL0=(65536- 50000)%256; EA=1; //CPU开中断总允许 ET0=1;//开定时中断 EX0=1;//开外部INTO中断 TR0=1;// 启动定时 while(1) { Flag_EW_Yellow=0; //EW关黄灯显示信号 Time_EW=EW; Time_SN=SN; WhiIe(Time_SN>=5) {P仁S[0]; /∕SN 通行,EW红灯 DiSPIay();} P仁0x00; WhiIe(Time_SN>=0 ) {Flag_SN_Yellow=1; EW_Red=1; /∕SN //SN开黄灯信号位 黄灯亮,等待左拐信号,EW红灯 DiSPIay(); } Flag_SN_Yellow=0; /∕SN关黄灯显示信号Time_SN=SNL; WhiIe(Time_SN>=5) {P仁S[2];//SN左拐绿灯亮,EW红灯 DiSPIay();} P仁0x00; WhiIe(Time_SN>=0 ) {Flag_SN_YeIIow=1; EW_Red=1; /∕SN //SN开黄灯信号位 黄灯亮,等待停止信号,EW红灯 DiSPIay(); }

单片机控制十字路口交通灯

单片机原理及应用课程设计 题目:十字路口交通灯 学院:电气与信息工程学院 专业:电气工程及其自动化 姓名: 学号: 指导老师: 完成时间:

成绩评定· 一、指导教师评语 二、评分 课程设计成绩评定 成绩: 指导教师签字年月日

摘要 随着各种交通工具的发展和交通指挥的需要,第一盏名副其实的三色灯(红、黄、绿三种标志)于1918年诞生。它是三色圆形四面投影器,被安装在纽约市五号街的一座高塔上,由于它的诞生,使城市交通大为改善。黄色信号灯的发明者是我国的胡汝鼎,他怀着“科学救国”的抱负到美国深造,在大发明家爱迪生为董事长的美国通用电器公司任职员。一天,他站在繁华的十字路口等待绿灯信号,当他看到红灯而正要过去时,一辆转弯的汽车呼地一声擦身而过,吓了他一身冷汗。回到宿舍,他反复琢磨,终于想到在红、绿灯中间再加上一个黄色信号灯,提醒人们注意危险。他的建议立即得到有关方面的肯定。于是红、黄、绿三色信号灯即以一个完整的指挥信号家族,遍及全世界陆、海、空交通领域了。 交通灯控制器设计主要功能是用单片机控制LED灯模拟指示。模拟东西南北方向的十字路口交通灯信号控制情况。以89C52单片机为核心芯片,采用中断方式实现控制。本模拟系统由单片机硬/软件系统,两位8段数码管和LED灯显示系统。和复位电路控制电路等组成,较好的模拟了交通路面的控制。 关键词:交通灯单片机数码管

目录 1.概述 (1) 2系统总体方案及硬件设计 (2) 2.1设计内容 (2) 2.2 设计要求 (2) 2.3 总体设计思想 (2) 2.4 设计参考 (2) 2.5 知识点准备 (2) 3各模块设计 (3) 3.1设计项目简介 (3) 3.2总体设计 (3) 3.3硬件设计 (3) 3.4软件设计 (9) 4软件仿真 (12) 5课程设计体会 (13) 参考文献 (14) 附录一程序清单 (15) 附录二系统原理图 (21)

基于单片机的交通灯控制系统设计

课程设计报告 题目:基于单片机的(数显)交通灯控制系统设计 目录 摘要 (3) 一、设计背景 (4) 二、方案分析与对比 (4) 2.1方案分析 (4) 2.2方案对比 (4) 三、智能交通灯控制系统的硬件设计 (4)

3.1 STC89S5单片介 (4) 3.2 控制器的原理框图 (8) 3.3 紧急转换电 (8) 四、智能交通灯控制系统的软件设计 (10) 4.1交通灯的软件设计流程图 (10) 4.2 控制器的软件设计 (10) 五、系统分析及改进措施 (12) 六、心得体会 (13) 参考文献 (14) 附录 (14) 摘要: 自从1858年英国人,发明了原始的机械扳手交通灯之后,随后的一百多年里,交通灯改变了改变了交通路况,也在人们日常生活中占据了重要地位,随着人们社会活动日益增加,经济发展,汽车数量急剧增加,城市道路日渐拥挤,交通灯更加显示出了它的功能,使得交通得到有效管制,对于交通疏导,提高道路导通能力,减少交通事故有显著的效果。 近年来,随着科技的飞速发展,电子器件也随之广泛应用,其中单片机也不断深入人民的生活当中。本模拟交通灯系统利用单片机STC89C52作为核心元件,实现了通过信号灯根据区域车流现实对路面状况的智能控制。从一定程度上解决了交通路口堵塞、车辆停车等待时间不合理、急车强通等问题。系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 本模拟系统由单片机硬/软件系统,两位8段数码管和LED灯显示系统。和复位电路控制电路等组成,较好模拟了,交通路面的控制。 关键词:交通灯单片机数码管 Abstract: In 1858, since the invention of primitive mechanical a wrench to the traffic lights, the more than a hundred years, the traffic lights changed to change the traffic and transport in their everyday lives as an important position, increasing

基于51单片机的交通灯控制系统设计

目录 一引言 (2) 二概要设计 (2) 2.1 设计思路 (2) 2.2总体设计框图 (2) 三硬件设计 (3) 3.1LED循环电路设计 (3) 3.1.1 89cs51单片机概述 (3) 3.1.2 LED循环说明 (5) 3.2 倒计时显示电路 (5) 3.2.1 74LS164芯片 (5) 3.2.2 共阴极数码显示管 (6) 3.2.3 倒计时电路 (6) 3.2.4 急通车电路 (7) 四软件按设计 (7) 4.1 程序流程图: (7) 4.2 LED红绿灯显示 (8) 4.3倒计时显示 (9) 4.4 急通车控制 (9) 4.5程序代码 (9) 五总结 (9) 参考文献 (9) 附录一: (9) 附录二: (10)

基于51单片机的交通灯控制系统设计 摘要:在日常生活中,交通信号灯的使用,市交通得以有效管理,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。交通灯控制系统由80C51单片机、键盘、LED 显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,市交通实现有效控制。 关键词:交通灯,单片机,自动控制 一引言 当今,红绿灯安装在个个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这个技术在19世纪就已经出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械般手势信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的会议大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转方式玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,是警察受伤,遂被取消! 电气启动的红绿灯出现在美国,这种红绿灯由红黄绿三色圆形的投光器组成,1914年始装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 信号灯的出现,使得交通得以有效的管理,对于疏导交通流量、提高道路通行能力、减少交通事故有明显效果。1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯时通行信号灯,面对绿灯的车辆可以直行,左转弯和右转弯,除非两一种标志禁止某一种转向。左右转弯车辆必需让合法的正在路口内行驶的车辆和过人行横线的行人优先通行。红灯是禁行信号灯,面对红灯的车辆必需在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已经十分接近停车线而不能安全停车的可以进入交叉路口! 二概要设计 2.1 设计思路 利用单片机实现交通灯的控制,该任务分以下几个方面: a 实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。 b 用数码管显示倒计时。可以利用动态显示或静态显示,串行并出或者并行并出实现。 C 实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下,那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,让时间回到只能隔断处继续进行。 2.2总体设计框图 见图一:

基于51单片机交通灯控制系统

摘要 随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术。本模拟交通灯系统利用单片机AT89C51作为核心元件,实现了通过信号灯对路面状况的智能控制。从一定程度上解决了交通路口堵塞、车辆停车等待时间不合理、急车强通等问题。系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 本模拟系统由单片机硬/软件系统,两位8段数码管和LED灯显示系统等组成,较好的模拟了交通路面的控制。 关键词:交通灯,单片机,数码管,LED灯

目录 引言 (1) 1.设计背景 (2) 1.1课题背景 (2) 1.2设计内容 (2) 2.交通灯控制系统系统简介 (3) 2.1方案选择 (3) 2.2系统设计原理 (4) 3.系统硬件设计 (5) 3.1主控制器选择 (5) 3.2 时钟及复位电路 (7) 3.3 指示灯及倒计时模块 (8) 3.4系统总体电路图 (9) 4. 系统软件设计简介 (10) 4.1 系统主程序流程 (10) 5. Proteus软件仿真 (10) 5.1 Proteus软件介绍 (10) 5.2 交通控制系统Proteus仿真 (12) 6. 总结 (14) 参考文献 (15) 附录:源程序代码 (15)

引言 当今,红绿灯安装在个个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这个技术在19世纪就已经出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械般手势信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的会议大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转方式玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,是警察受伤,遂被取消。 电气启动的红绿灯出现在美国,这种红绿灯由红黄绿三色圆形的投光器组成,1914年始装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 信号灯的出现,使得交通得以有效的管理,对于疏导交通流量、提高道路通行能力、减少交通事故有明显效果。1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯时通行信号灯,面对绿灯的车辆可以直行,左转弯和右转弯,除非两一种标志禁止某一种转向。左右转弯车辆必需让合法的正在路口内行驶的车辆和过人行横线的行人优先通行。红灯是禁行信号灯,面对红灯的车辆必需在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已经十分接近停车线而不能安全停车的可以进入交叉路口。 1

相关文档
最新文档