基于单片机的交通灯

基于单片机的交通灯
基于单片机的交通灯

毕业设计说明书

基于单片机的交通灯

控制系统设计

专业 电气工程及其自动化

学生姓名

恒 燕 班级 BD 电气042 学

0420610228 指导教师 张 兰 红 完成日期

2008年6月10日

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

摘要:对基于单片机的交通灯控制系统进行了设计。系统功能为:以MCS-51系列单片机作为控制核心,设计并制作交通灯控制系统,东西南北四个方向具有左拐、右拐、直行及行人4种通行指示灯,用计时器显示路口通行转换剩余时间,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行状态。

在对系统功能分析的基础上,提出了三种设计方案,经比较,选择性能较优的LED动态循环显示方案进行了设计。设计包括硬件和软件两大部分。硬件部分包括单片机最小系统、时间显示、交通灯显示三部分。选用Atmel公司的AT89S52单片机作为控制核心,东西南北四个方向设置了LED时间显示和交通灯显示,时间显示采用三位LED显示器,交通灯显示则采用红绿双色高亮发光二极管来模拟。软件采用了模块化的设计方法,主要分为主程序、定时器中断服务子程序、倒计时显示子程序、交通灯模拟显示子程序四部分。

在实验板上制作了基于单片机的交通灯控制系统样机,对硬件和软件部分分别进行了调试,再进行了软硬件联调,得到的交通灯控制系统样机实物,可圆满地完成毕业设计任务书所要求的功能。

关键词: 交通灯;单片机;AT89S52

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

1 概述

1.1 课题研究背景与意义

随着经济的增长和人口的增加,人们生活方式不断变化,人们对交通的需求不断增加。城市中交通拥挤、堵塞现象日趋严重,由此造成巨大的经济与时间损失。资料显示,对日本东京268个主要交叉路口的调查估计表明:每年在交叉路口的时间延误,折成经济报失为20亿美元;而在我国北京市,当早晚交通高峰时,交叉路口处的排队长度竟达1000多米,有的阻车车队从一个交叉路口延伸到另一个交叉路口,这时一辆车为通过一交叉路口,往往需要半个小时以上,时间损失相当可观。

我国是一个历史悠久、人口众多的国家,城市数量随着社会的发展不断增多。随着城市化进程的大大加快,诱发的交通需求急剧增长,供需矛盾不断激化,严重的交通问题也随之而来。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。

十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊,这一切要归功于城市交通控制系统中的交通灯控制系统。交通灯控制系统对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果,使城市交通得以有效管理。

交通灯可以采用PLC、单片机等控制方法。利用单片机实现对交通信号灯的实时控制,只要采用一块单片机,加上简单的接口与驱动放大电路,即可实现,具有成本低,可靠性高的特点。

1.2 课题设计内容

本课题对基于单片机的交通灯控制系统进行设计。以MCS-51系列单片机为控制核心,设计并制作交通灯控制系统,用于十字路口的车辆及行人的交通管理。东西南北四个路口具有左拐、右拐、直行及行人4种通行指示灯,并分别用计时器显示路口通行转换剩余时间,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行状态。

设计交通灯控制系统硬件电路与软件控制程序,对硬件电路与软件程序分别进行调试,并进行软硬件联调,要求获得调试成功的实物。

2 系统设计

2.1 设计方案论证

根据设计内容要求,提出了如下三种方案:

方案一:采用AT89S52单片机作为控制核心,采用四组高亮红绿双色二极管作

图2-1 方案一:采用LED 动态扫描的交通灯控制系统

方案二:采用AT89C2051单片机作为控制器,通行倒计时显示采用16×16点阵LED 发光管,左拐、右拐、直行及行人4

种通行指示也采用16×16点阵双色LED 发光管。方案二设计框图如图2-2所示,LED 点阵的列驱动采用74LS595,用串行端口扩展实现,行驱动采用1/16译码器74LS154动态扫描,译码器74LS154生成16条行选通信号线,再经过驱动器驱动对应的行线。每条行线上需要较大的驱动电流,应选用大功率三极管作为驱动管。

图2-2 方案二:采用16×16点阵LED 发光管设计的交通灯控制系统

方案三:采用AT89C2051单片机作为控制器,通行倒计时及左拐、右拐、直行、

行人通行指示采用单块LCD 液晶点阵显示器。

三种方案的特点比较如下:方案一具有电路简单,设计方便,显示亮度高,耗电较少,可靠性高等特点;方案二的图案显示逼真,单片机占用端口资源少,缺点

是需要大量的硬件,电路复杂,耗电量大,不太适合于模型制作;方案三设计占用单片机的端口最少,硬件也少,耗电也最少;虽然显示图案也很精美,但由于亮度太暗,晚上还得开背光灯,不够实用。可见方案一优于其他两种方案,因此本设计选用方案一:采用LED动态扫描的方案进行设计。

2.2系统硬件设计

采用LED动态扫描的交通灯控制系统电路原理图如图2-3所示。(为排版起见,该图放在下一页)。系统由控制模块、通行灯显示模块、时间显示模块、电源模块四部分组成。

2.2.3 时间显示模块

通行剩余时间显示模块如图2-6所示(以北路口为例)。

路口通行剩余时间采用高亮红色7段共阳LED发光数码管显示,采用共阳数码管,如用单片机吸收电流驱动,列扫描驱动使用三级管,按每段6mA电流算,全显示字型“8”时,每个数码管需6mA×8=48mA。由于时间显示每个路口相同,4组需192mA,因此设计中采用功率三极管S9012驱动。由于单片机每个段码输出口需吸收48mA电流,因此在电路设计中也使用了驱动集成块74HC244。

2.2.4 电源电路

电源电路如图2-7所示。整个系统采用的电源电压只需+5V电压,将交流电经变压器变换为15V交流电,再用整流桥得到13.5V左右的直流电,采用不可调的3端稳压器件LM7805将电源稳定在5V直流输出。

+5V

图2-7 电源电路

2.2.5 硬件电路中器件选择

A. AT89S52单片机

AT89系列单片机是ATMEL公司的8位FLASH单片机。这个系列单片机最吸引人的特点就是在片内含有FLASH存储器,不需要再外扩存储器,与80C51插座兼容,由于这些优点,使它有着十分广泛的用途,特别是在便携式和需要特殊信息保存的仪器和系统中显得更为有用。89系列单片机典型型号有AT89C51,AT89LV51,AT89C52,AT89LV52,AT89C2051, AT89S52,AT89C1051,AT89S51和AT89S8252。

本设计选用AT89S52。它内部具有1个8KB的Flash的程序存储器,1个512字节的RAM,4个8位的双向可位寻址I/O端口,3个16的定时/计数器、1个串行口、6个二级中断源和两个中断优先级。引脚如图2-8所示。

D.七段LED 数码管

7段数码管是一种常用的显示器件,其外观与内部电路连接见图2-11。它使用

7个笔画显示0~9共10个数字,加上一个小数点共8个显示段,每一个笔画都是由发光二级管组成的。LED 数码管根据LED 的接法不同分为共阴和共阳两类,图2-11 (b)是共阳极数码管的内部电路,将八只LED 的阳极连在一起,其中a~g 为7个笔画的驱动端;dp 为小数点驱动端;COM 为公共引脚。

a b c d e f g dp VCC

7

6

4

2

1

9

10

5

(a)外观 (b)内部电路连接

图2-11 LED 数码管

0~9共10个字符的字形码如表2-1所示。

E.双色发光二极管

双色发光二极管是在一个封装结构内设置两只不同单色的发光二极管。共阴红绿双色发光电气符号图与内部电路连接如图2-12所示。有3根引出线,圆形和长方形两种封装。其中第一只发光二极管的负(或正极)与第二只发光二极管的负(或正极)极相互连接后再向外引出。

表2-1 LED数码管显示字符的字形码

发光双色二极管的判别与检测方法:将万用表打在电阻档,用万用表黑表笔接在双色发光二极管中间的负极上,红表笔接在双色发光二极管的正极上,每次都亮,该双色发光二极管是共阴极的,并且是好的。

2.3 系统软件的设计

交通灯控制系统软件分为主程序、定时中断程序与特种车实时响应程序三部分。

2.3.1 主程序

主程序主要负责总体程序管理功能,包括初始化部分与人机交互设定部分。由于采用动态扫描方式显示时间,因此主程序大部分时间要调用扫描显示程序。主程序流程图如图2-15所示。

图2-15主程序流程图

初始化部分主要完成内存规划,定时器的工作模式、中断方式等的设定。由于子程序调用较多,因此初始化时堆栈指针设于80H处。定时器T0、T1设为16位定时器模式,定时时间为50mS,T0为秒计时用,T1为通行结束闪烁用。

2.3.2 定时中断服务程序

定时中断服务程序主要用于车辆与行人的通行指示,按照通行规则,红绿灯控制转换逻辑表如表2-2所示。

通行规则如下:

A.车辆南北直行、各路右拐,南北向行人通行。南北向通行时间为1min(60S),

各路右拐比直行滞后10S开放。

B.车辆南北向左拐、各路右拐,行人禁行。通行时间为1min(60S)。

C.车辆东西直行、各路右拐,东西向行人通行。东西向通行时间为1min(60S),

各路右拐比直行滞后10S开放。

D.车辆东西向左拐、各路右拐,行人禁行。通行时间为1min(60S)。

表2-2 路口通行方式控制码数据表

交通灯的4种通行规则,是以给控制红绿灯端口送控制码的方式实现的。它的原理是,将按不同规则通行时的各路口的红绿灯亮灭情况转换为单片机端口控制码。红绿灯指示功能通过T0定时中断服务程序实现。

定时器T0定时溢出中断周期设为50ms,中断累计20次(即1S)时对120S倒计时单元减一操作。设计中将4种通行规则分成几种不同的亮灯方式,通过查询秒倒计时单元的数据,实现在不同的时间段给控制端口送不同的控制数据码。控制码分为5个时间段:120~110S、110~70S、70~60S、60~10S、10~0S。交通管理

定时功能程序流程图如图2-16所示。

图2-16 交通管理定时功能程序

2.3.4 算法分析

A.定时器/计数器

本设计涉及到120~110S、110~70S、70~60S、60~10S、10~0S五段计时,首先须将它们转为16进制代码。

120=7×16+8=78H

110=6×16+14=6EH

70=4×16+6=46H

60=3×16+12=3CH

10=0×16+10=0AH

B.定时时间初值与TMOD的设置

T0、T1为16位定时器,由于定时时间大于8192μS,应选用工作方式一。

由于晶振频率为12MHz,T CY=1μS,故有

T=(65536-X)T CY=(65536-X)×1μs =50ms

计算初值X=15536=3CB0H

即TH0=3CH ,TL0=0B0H。

TMOD的格式如图2-18所示。

图2-19IE的格式

IE每一位都由软件置1或清零。本设计中CPU允许中断即EA=1,定时器/计数器0中断允许位ET0及外部中断0中断允许位EX0可申请中断,即ET0=1,EX0=1,其余不允许中断,均设为0,所以IE=10000011H=83H

3 系统调试

3.1 硬件调试

3.1.1 静态检查

根据硬件电路图核对了元器件的型号、极性,安装是否正确,检查硬件电路连线是否与电路原理图一致,检查电路元器件是否都已经连接好,用万用表一一测试。

3.1.2 通电检查

首先调试电源部分。整个电路只需要+5V的电压,接上电源,将220V交流电通入,测试变压器的输出端,整流桥输出,LM7805的输出电压是否和理论计算值一致,再用示波器检测单片机的复位和晶振电路是否有复位信号和振荡信号。

3.2软件调试及软硬件联调

对软件先用仿真器进行了调试。用仿真器运行正常后,再用烧写器将程序烧到AT89S52单片机中,进行了脱机调试。

3.2.3通行灯输出调试

对于通行灯输出程序的调试,首先看左拐灯、直行灯、右拐灯、行人灯是否能正常工作。编制了以下测试灯亮灭的程序:

ORG 0000H

START: MOV A,#0AAH;让东西南北四个路口的四个红灯全亮

MOV P1,A

MOV P2,A

ACALL DELAY ;延时一段时间

MOV A,#55H ;让东西南北四个路口的绿灯全亮

MOV P1,A

MOV P2,A

ACALL DELAY ;延时一段时间

SJMP START; 到START处循环以上操作DELAY: MOV R7,#01H ;延时子程序

MOV R6,#81H

DL1: NOP

NOP

NOP

DJNZ R6,DL1

DJNZ R7,DL1

RET

将上述程序输入电脑,经仿真器传输到系统运行后,发现有一红灯不亮,而其他指示灯都按指令运行出现正确的结果。用万用表仔细检测,发现该灯的阳极被误接地了,没有接到单片机的并行口上。经修改,每个指示灯均能正确的显示了,至此,说明通行灯的接线完全正确。

判断出通行灯接线正确后,对于整个电路的通行控制,根据逻辑状态表2-2编制了相应的程序(程序段见附录2中的T0中断服务程序)多次、反复调试,直到逻辑关系正确。调试时南北方向、东西方向指示灯同时进行。

3.2.4时间显示模块调试

对于时间模块,首先看显示的数字是否正常,显示的亮度是否合适。对于图2-3所示的电路,尽管LED数码管为共阳极,但是各位的位选为P3.0, P3.1 ,P3.2经PNP 型晶体管9012后提供,P3.i(i=0,1,2)必须提供低电平才能点亮相应的显示器,须输出CLR P3.i指令(i=0,1,2)。先编制了LED静态显示的程序,测试P3.i引脚上的LED是否可以正常显示,相应程序如下:

ORG 0000H

START: MOV A,#01H

MOV DPTR,#TAB ;取段码表地址

MOVC A,@A+DPTR ;查显示数据对应段码

MOV P0,A

CLR P3.0 ; 开启P3.0口

SETB P3.1 ; 关闭P3.1口

SETB P3.2 ; 关闭P3.2口

SJMP START

TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,

END

运行后P3.0引脚上接的显示器显示为1,同理可分别测试P3.1 ,P3.2引脚上的LED显示器是否可以正常显示。经检测各位LED可以正常显示,但是发光的亮度偏暗,有些模糊,这说明电路连接没有问题,但选用的电阻过大了,以至于电流很小,显示器不太亮,在保证9012正常工作的情况下,将电阻从47K调整为10K,显示亮度合适,这部分调试成功。

将附录2中的显示子程序进行了调试,四个路口的三个数码管均可以动态显示。至此,显示模块调试成功。

整个程序设计中采用了两种倒计时显示方式,120S倒计时适用于车流量较大的大城市,60S倒计时可用于中小型城市,两种倒计时由P3.7上的开关进行转换。3.2.5特种车中断程序调试

将附录3中的119、120特种车程序进行调试,所有绿灯自动关闭,红灯全亮。

3.2.6脱机调试

用仿真器与硬件电路连接调试成功后,又将附录3的程序烧写到AT89S52中去,接上电源,发现LED不能正常显示,而通行灯输出一切正常。经检查AT89S52的P0口需要加外部上拉电阻,在仿真器上不存在此问题,因为仿真器的P0口有外部上拉电阻。接510Ω的上拉电阻,接通电源交通灯与倒计时显示器可以正常运行,至此调试工作全部完成。

3.2.7实验结果

对实验板通电后,显示器从120S开始倒计时,每秒钟自动减一,四个路口的红绿灯按通行规则正确显示。显示图片如图3-1所示。

将S1开关打在合上的位置,显示器从60S开始倒计时,每秒钟自动减1,四个路口的红绿灯按通行规则正确显示。

按下S3按钮,所有绿灯全部关闭,红灯全亮,呈现特种车辆放行状态。

实验结果表明,本次设计并制作的交通灯可以很好地满足设计任务书的要求。

4 结束语

拿到课题后,开始着手设计。查阅了大量相关资料,结合毕业设计任务书中的指标要求,进行了方案论证,确定了设计方案:将系统分为控制模块、通行灯显示模块、时间显示模块、电源模块四部分。

设计方案与元器件参数确定后,就开始采购元器件,然后进行硬件制作。在制作硬件的过程中,每制作一步,都要检查这一步的正确性,可靠性。最后硬件制作

完毕后,先进行了静态调试,根据硬件电路图核对了元器件的型号,极性,安装是否正确,检查硬件电路连线是否与电路图一致。然后是通电调试,先调试电源部分。将220V交流电通入,测试变压器的输出端整流桥输出,LM7805的输出电压是否和理论计算值一致。再调试单片机的复位和晶振电路。

硬件电路制作完毕后,采用仿真器进行了软件调试,这个过程相当复杂艰难,出现了很多问题,例如输出灯不按规律显示,倒计时数码管显示不正确等。每一个问题都相当棘手,遇到这些问题后,首先检测硬件电路,对硬件电路排查完毕并确定无误后,对软件进行修改及再调试。问题一一被解决后最后得出所需软件部分。这个过程让我学到很多东西:首先必须具有的是耐心和细心,问题出现后,必须分析问题,找出可能出现此种问题的原因,然后进行一一检测,进行多次修改后才得到所需结果。最后是软硬件联调,将程序烧入到AT89S52,进行调试直到成功。

基于单片机的交通灯控制系统的PCB板已进行了设计,但是由于时间紧迫,布线还不十分合理,需进一步调整,初步设计的PCB图见附录2。

通过本次设计,本人的知识领域得到进一步扩展,专业技能得到进一步提高,同时提高了分析和解决实际问题的综合能力。另外,也培养了自己严肃认真的科学态度和严谨求实的作风。

由于本人水平有限,本次设计还存在一些不足之处,请评阅与答辩的各位老师批评指正。

附录3 基于单片机的交通灯控制系统程序清单

;************************************************;

;交通灯控制程序;

;************************************************;

;以下是初始化部分

TIME EQU 50H ;秒记数用

TIMESFR EQU 51H ;临时寄存器

CONR5 EQU 52H ;T1秒定时记数用

TIMED0 EQU 55H ;单向最大定时时间,直行开始,人行开

始(120S)

TIMED1 EQU 56H ;各路右拐开始时间(110S)

TIMED2 EQU 57H ;前行结束提醒(70S)

TIMED3 EQU 58H ;前行结束,人行结束,左拐开始(60S)TIMED4 EQU 59H ;左拐结束提醒

TIMED5 EQU 5AH ;左拐结束

TIMED6 EQU 5BH

TIMED7 EQU 5CH

SN EQU P1 ;南北口

EW EQU P2 ;东西口

SCAN EQU P3 ;扫描口

LEDOUT EQU P0 ;段码口

SNEWFLAG BIT 09H ;东西口与南北口转换标志

;按键在扫描口的最高位,按一下,全红灯。P3.7扳键开关扳向合上位置,则为60秒倒计时

;定时器T0﹑T1溢出周期为50ms,T0为秒记数用

;*************中断入口程序********************

ORG 0000H ;程序执行开始地址

LJMP START ;跳到标号START执行

ORG 0003H ;外中断0中断程序入口

RETI ;外中断0中断返回

ORG 000BH ;定时器T0中断程序入口

LJMP INTT0 ;跳至INTT0执行

ORG 0013H ;外中断1中断程序入口

LJMP INT11 ;外中断1、119﹑120中断

ORG 001BH ;定时器T1中断程序入口

LJMP INTT1

ORG 0023H ;串行中断程序程序返回

RETI

;****************主程序*********************

START:MOV SP, # 80H

MOV R0, # 00H ;清00H~8EH内存单元

MOV R7, # 8FH

CLEARDISP: MOV @R0, # 00H

INC R0

DJNZ R7, CLEARDISP

MOV TIMED0, # 78H ;单向最大定时时间,直行开始,

人行开始

MOV TIMED1, # 6EH ;各路右拐开始时间(110S)

MOV TIMED2, # 46H ;前行结束提醒(70S)

MOV TIMED3,# 3CH ;前行结束,人行结束,左拐开始

(60S)

MOV TIMED4,# 0AH ;左拐结束提醒

CLR SNEWFLAG ;南北先通行标志位

MOV TMOD, # 01H ;设T0,T1为16位定时器

MOV TL0, #0B0H ;50ms定时初值(T0记时用)

MOV TH0, #3CH ;50ms定时初值

MOV TL1, #0B0H ;50ms定时初值(T1闪烁定时用)

MOV TH1, #3CH ;50ms定时初值

JB SCAN.7, SSST ;120s管理

;以下为60s管理

LCALL DL1MS

LCALL DL1MS

LCALL DL1MS

JB SCAN.7, SSST ;干扰

MOV TIMED0, #60 ;单向最大定时时间,直行开始,

人行开始

MOV TIMED1, #55 ;各路右拐开始时间(55S)

MOV TIMED2, #35 ;前行结束提醒(35S)

MOV TIMED3, #30 ;前行结束,人行结束,左拐开始

(30S)

MOV TIMED4, #05 ;左拐结束提醒

SSWAIT: JNB SCAN.7, SSWAIT

LCALL DL1MS

LCALL DL1MS

LCALL DL1MS

JNB SCAN.7, SSWAIT

SSST: MOV TIME, TIMED0 ;120S

LCALL TUNBCD

MOV SN, #99H

MOV EW, #0AAH

SETB EA ;总中断开放

SETB PX1

SETB EX1

SETB ET0 ;允许T0中断

SETB TR0 ;开启T0定时器

MOV R4, #14H ;1S定时用初值(50ms×20)

MOV CONR5, #20

START1: LCALL DISPLAY ;调用显示子程序

JNB SCAN.7, KEYFUN ;手动状态

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

KEYFUN: LCALL DISPLAY

LCALL DISPLAY

JB SCAN.7, START1

CLR ET0

CLR TR0

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

MOV EW, #056H

MOV TIME, #00H ;时间显示0

LCALL TUNBCD

KEYWAIT: LCALL DISPLAY

JNB SCAN.7, KEYWAIT

KEYY: LCALL DISPLAY ;等待按键按下

JB SCAN.7, KEYY

LCALL DISPLAY

JB SCAN.7, KEYY

KEYWAIT1: LCALL DISPLAY

JNB SCAN.7, KEYWAIT1

MOV TIME, TIMED0 ;重新开始计时初值

LCALL TUNBCD

CLR SNEWFLAG ;南北先通行标志位

SETB TR0

SETB ET0

AJMP START1

;********************1s计时程序*******************

;T0中断服务程序

INTT0: PUSH ACC ;累加器入栈保护

PUSH PSW ;状态字入栈保护

CLR ET0 ;关T0中断允许

CLR TR0 ;关闭定时器T0

MOV A, #0B7H ;中断响应时间同步修正

ADD A, TL0 ;低8位初值修正

MOV TL0, A ;重装初值(低8位修正值)

MOV A, #3CH ;高8位初值修正

ADDC A, TH0

MOV TH0, A ;重装初值(高8位修正值)

SETB TR0 ;开启定时器T0

DJNZ R4, OUTT00 ;20次中断到(1S),重赋初值

MOV R4, #14H

JB SNEWFLAG, INT22

DEC TIME

MOV A, TIME

CJNE A, TIMED1, LOOP11 ;判断是否小于110S LOOP11: JC LOOP22 ;120-110

MOV SN, #99H

MOV EW, #0AAH

LJMP OUTT0 ;120-110

LOOP22: MOV A, TIME

CJNE A, TIMED2, LOOP33;判断是否小于70S LOOP33: JC LOOP44 ;110-70

MOV SN, #95H

MOV EW, #0A6H

LJMP OUTT0 ;110-70

LOOP44: MOV A, TIME

CJNE A, TIMED3, LOOP55 ;判断是否小于60S

LOOP55: JC LOOP66 ;70-60

MOV 20H, SN

CPL 04H

CPL 00H

MOV SN, 20H

MOV EW, #0A6H

LJMP OUTT0 ;70-60

LOOP66: MOV A, TIME

CJNE A, TIMED4, LOOP77 ;判断是否小于10S LOOP77: JC LOOP88 ;60-10

MOV SN, #66H

LJMP OUTT0 ;60-10

LOOP88: MOV A, TIME

JZ OUT88

MOV 20H, SN

CPL 06H

CPL 02H

MOV SN, 20H

MOV 20H, EW

CPL 02H

MOV EW, 20H

LJMP OUTT0 ;70-60

OUT88: MOV TIME, TIMED0 ;20初值

CPL SNEWFLAG

OUTT0: LCALL TUNBCD

OUTT00: POP PSW ;恢复状态字(出栈)

POP ACC ;恢复累加器

SETB ET0 ;开放T0中断

RETI ;中断返回

INT22: DEC TIME

MOV A, TIME

CJNE A, TIMED1, LOOP111 ;判断是否小于110S LOOP111: JC LOOP221 ;120-110

MOV EW, #99H

MOV SN, #0AAH

LJMP OUTT01 ;120-110

LOOP221: MOV A, TIME

CJNE A, TIMED2, LOOP331 ;判断是否小于70S LOOP331: JC LOOP441 ;110-70

MOV EW, #095H

MOV SN, #0A6H

LJMP OUTT01 ;110-70

LOOP441: MOV A, TIME

CJNE A, TIMED3, LOOP551 ;判断是否小于60S LOOP551: JC LOOP661 ;70-60

MOV 20H, EW

CPL 04H

CPL 00H

基于单片机的交通灯控制

基于单片机的交通灯控制 目录 摘要 ................................................................... 2 第1 章概述.............................................................3 1.1课题背景.......................................................... 3 1.1.1课题来源 ......................................................3 1.1.2市场需求 .......................................................3 1.2单片机技术的发展................................................. (3) 1.2.1单片机简介 . . . . . .............................................3 1.2.2单片机发展概述..................................................4 1.2.3单片机的发展趋势...............................................6第2章交通灯的硬件设计...................................................7 2.1MSC-51芯片简介.................................................7 2.2移位寄存器74LS164.................................................10 2.3 LED显示器.................................................................10 2.3.1显示器的结构和原理..................................................10 2.3.2 LED静态显示方式...................................................11 2.3.3 LED动态显示方式...................................................12 第3章交通灯的设计方案..................................................12 3.1设计要求..........................................................13 3.2 基本原理.........................................................13 3.3交通灯控制线路图..................................................14 3.4印制电路板图......................................................14 3.4.1印制电路板图的设计要求.......................................14 3.4.2交通灯印制板图................................................15 第4章交通灯的软件设计...............................................16 4.1延时设计..........................................................16 4.1.1 硬件延时.....................................................16 4.1.2 软件延时......................... ........... ...... (17) 4.2 时间及信号灯的显示...............................................18 4.2.1 74LS164 8位并行输出串行输入移位寄存...........................18 4.2.2显示原理......................................................18 4.2.3数码管显示器显示..............................................18 4.3程序设计..........................................................18 4.3.1流程图........................................................18 4.3.2 程序源代码...................................................19

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

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

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

整个电路由单片机完成,控制部分由软件完成,硬件只负责响应。 四、方案设计 方案一:主控系统采用AT89C51单片机作为控制器,由定时器1间接控制通行倒计时及南北和东西的通行。由按键开关完成禁止通行,东西 通行,南北通行。

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

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

目录 摘要 (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

基于单片机的交通灯

毕业设计说明书 基于单片机的交通灯 控制系统设计 专业 电气工程及其自动化 学生姓名 郭 恒 燕 班级 BD 电气042 学 号 0420610228 指导教师 张 兰 红 完成日期 2008年6月10日

基于单片机的交通灯控制系统设计 摘要:对基于单片机的交通灯控制系统进行了设计。系统功能为:以MCS-51系列单片机作为控制核心,设计并制作交通灯控制系统,东西南北四个方向具有左拐、右拐、直行及行人4种通行指示灯,用计时器显示路口通行转换剩余时间,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行状态。 在对系统功能分析的基础上,提出了三种设计方案,经比较,选择性能较优的LED动态循环显示方案进行了设计。设计包括硬件和软件两大部分。硬件部分包括单片机最小系统、时间显示、交通灯显示三部分。选用Atmel公司的AT89S52单片机作为控制核心,东西南北四个方向设置了LED时间显示和交通灯显示,时间显示采用三位LED显示器,交通灯显示则采用红绿双色高亮发光二极管来模拟。软件采用了模块化的设计方法,主要分为主程序、定时器中断服务子程序、倒计时显示子程序、交通灯模拟显示子程序四部分。 在实验板上制作了基于单片机的交通灯控制系统样机,对硬件和软件部分分别进行了调试,再进行了软硬件联调,得到的交通灯控制系统样机实物,可圆满地完成毕业设计任务书所要求的功能。 关键词: 交通灯;单片机;AT89S52

基于单片机的交通灯控制系统设计 1 概述 1.1 课题研究背景与意义 随着经济的增长和人口的增加,人们生活方式不断变化,人们对交通的需求不断增加。城市中交通拥挤、堵塞现象日趋严重,由此造成巨大的经济与时间损失。资料显示,对日本东京268个主要交叉路口的调查估计表明:每年在交叉路口的时间延误,折成经济报失为20亿美元;而在我国北京市,当早晚交通高峰时,交叉路口处的排队长度竟达1000多米,有的阻车车队从一个交叉路口延伸到另一个交叉路口,这时一辆车为通过一交叉路口,往往需要半个小时以上,时间损失相当可观。 我国是一个历史悠久、人口众多的国家,城市数量随着社会的发展不断增多。随着城市化进程的大大加快,诱发的交通需求急剧增长,供需矛盾不断激化,严重的交通问题也随之而来。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊,这一切要归功于城市交通控制系统中的交通灯控制系统。交通灯控制系统对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果,使城市交通得以有效管理。 交通灯可以采用PLC、单片机等控制方法。利用单片机实现对交通信号灯的实时控制,只要采用一块单片机,加上简单的接口与驱动放大电路,即可实现,具有成本低,可靠性高的特点。 1.2 课题设计内容 本课题对基于单片机的交通灯控制系统进行设计。以MCS-51系列单片机为控制核心,设计并制作交通灯控制系统,用于十字路口的车辆及行人的交通管理。东西南北四个路口具有左拐、右拐、直行及行人4种通行指示灯,并分别用计时器显示路口通行转换剩余时间,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行状态。 设计交通灯控制系统硬件电路与软件控制程序,对硬件电路与软件程序分别进行调试,并进行软硬件联调,要求获得调试成功的实物。 2 系统设计 2.1 设计方案论证 根据设计内容要求,提出了如下三种方案: 方案一:采用AT89S52单片机作为控制核心,采用四组高亮红绿双色二极管作

基于单片机交通灯课程设计

重庆三峡职业学院 课程设计 课题名称交通灯控制系统设计 交通灯控制系统设计 摘要:本系统由单片机最小系统、按键(开关)、LED显示等等组成交通灯演示系统。 系统用红、黄、绿三个发光二极管模拟交通灯的红灯、黄灯、绿灯的功能。系统除基本交通灯功能外,还具有倒计时(15秒)、时间设置、紧急情况(按键模拟传感器)处理等功能。 关键词:AT89C51,交通规则 弓I 言:随着日新月异的电子变革,电子产品发生了突飞猛进的巨变,而在其中AT89C51扮演着一个重要的角色,AT89C51单片机具有广泛性、工具性、基础性的几个特点。单片机应成为中等技术人员的重要技术知识层面。近年来,我国工程技术队伍的梯队建设有了很大的进展。各类高职、高专如雨后春笋,涉电专业普遍开设单片机类课程。直观性表现在尽可能让我们在学习基本原理时能直观地看到相关实物及实物表演,使基本原理能实现形象化的表达;实践性表现在我们要通过许多实际操作来理解与掌握单片机的本质与技能;综合性表现在最终能使我们达到运用知识与技能来完成一个应用系统开发的全过程,有助于大学生动手能力的培养和提高,课程设计就是一门应用性很强的课程。如何让我们在学好基础知识的同时,迅速掌握设计应用技术,其中,实验与课程设计环节起着非常重要的作用。对我们学习和掌握单片机设计技术起到积极的作用。

一、方案比较、设计与论证

(1)电源提供方案 为使模块稳定工作,须有可靠电源。我们考虑了两种电源方案 方案一:采用独立的稳压电源。此方案的优点是稳定可靠,且有各种成熟电路可供选用;缺点是各模块都采用独立电源,会使系统线路变复杂,且可能影响系统各模块的电路电平。 方案二:采用干电池提供电源。该方案的优点是系统简明扼要,线路易于梳理,节约成本;缺点是输出功率不高。 综上所述,我们选择第二种方案。 (2)显示界面方案: 该系统要求完成数码管倒计时(15s)、状态灯发光二极管(红、黄、绿)的显示功能。基于上述原因,我们考虑了二种方案: 方案一:东西南北四个方向分别采用两位数码管显示倒计时。这种方案只显示有限的符号和数码字苻,并且制作PCB图时有许多的线相交,线路十分的复杂,不易制作原理图与PCB图,无法胜任题目要求。 方案二:东西南北四面各自采用红、黄、绿三个发光二极管显示,采用一个两位数码管显示倒计时,主要优点是易于调整元件在硬制板上摆放的位置,同时也易于PCB图的制作。 综上所述,我们选择方案二。 (3)输入方案: 题目要求系统能即时的处理外部紧急情况产生的中断,我们讨论了两种方案: 方案一:采用矩阵键盘。该方案的优点是: 可提供较多I/O 口,实现更多的外部中断。直接站单片机的接口少的特点,但操作起来稍显复杂,而且编程也趋于复杂。 方案二:直接在IO 口线上接上按键开关。因为设计时精简和优化了电路。 由于该系统对于交通灯等发光二极管的控制,只用单片机本身的I/O 口就可实现,只要一个开关来模拟一个外部的紧急中断,且本身的计数器及RAM E经够用,故选择方案二。 (4)系统方案: 本系统的硬件采用模块化设计,以单片机控制器为核心,与LED信号灯电路等组成单片机控制信号系统? 单 片 机

(完整)基于89C51单片机交通灯课程设计要点

(完整)基于89C51单片机交通灯课程设计要点 编辑整理: 尊敬的读者朋友们: 这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)基于89C51单片机交通灯课程设计要点)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。 本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)基于89C51单片机交通灯课程设计要点的全部内容。

华北水利水电学院 基于C51单片机 交通灯课程设计实验报告 姓名:田坤 班级:125 专业:电子信息科学与技术 指导老师:辛艳辉刘明堂 2013年1月16日 摘要 近年来,随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,正在不断的应用到实际生活中,并且根据具体硬件结构软硬件结合,加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊.那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MCS-51系列单片机STC89C51为中心器件来设计交通灯控制器,实现了通过信号灯对路面状况的智能控制。从一定程度上解决了交通路口堵塞、车辆停车等待时间不合理、急车强通等问题.系统具

有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 关键词:交通灯 单片机 数码管 一 。总体设计思路 1.1设计目的及思路 设计目的 了解交通灯管理的基本工作原理,熟练掌握STC89C51的工作原理和应用编程,熟悉STC89C51单片机并行接口的各种工作方式和应用,并了解计数器/定时器的工作方式和应用编程外部中断的方法,掌握多位LED 显示问题的解决。 设计思路 (1)分析目前交通路口的基本控制技术,提出自己的交通控制的初步方案。 (2)确定系统交通控制的总体设计,增加了倒计时显示提示。 (3)进行显示电路。 (4)进行软件系统的设计。 1。2 实际交通灯显示时序及状态转换的理论分析 图1所示为红绿灯转换的状态图。 图1 红绿灯状态转换图 表1 十字路口指示灯燃 亮方 S1 S4 S3 S2

基于51单片机的智能交通灯课程设计

简易智能交通灯设计 1、设计背景 自从1886两个德国人发明了第一辆汽车交通灯改变了交通路况,交通问题也渐渐被人们所重视。从英国伦敦街头的第一个以燃煤气为光源的红,蓝两色的机械扳手式信号灯,到现在以电为光源的红黄绿三色交通灯,不知不觉中交通信号灯在人们日常生活中占据了重要地位。随着人们社会活动日益增加,经济发展,汽车数量急剧增加,城市道路日渐拥挤,交通灯更加显示出了它的功能,使得交通得到有效管制,对于交通疏导,提高道路导通能力,减少交通事故有显著的效果。 近年来,随着科技的飞速发展,电子器件也随之广泛应用,其中单片机也不断深入人民的生活当中。本次课程设计以模拟交通灯系统利用单片机AT89C51作为核心元件,实现了通过信号灯对路面状况的智能控制。在一定程度上解决了交通路口堵塞、车辆停车,特殊情况的交通灯等待时间不合理、急车强通等问题。在该次的设计系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 本模拟系统由单片机软件系统,两位8段数码管和LED灯显示系统。和复位电路控制电路等组成,较好的模拟了对交通路面的控制。 1.1 设计思路 (1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。 (2)确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,在这里,本设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显示提示,并基于实际情况,又增加了紧急状况处理和通行时间可调这两项特特殊功能。 (3)进行倒计时显示电路,灯状态电路,特殊情况按键电路的设计和对各器件的选择及连接,大体分配各个器件及模块的基本功能要求。 (4)进行软件系统的设计和仿真中,程序在KEIL软件中用单片机c语言编写,电路的搭建和仿真实现是在proteus软件中实现的。在本次课程设计中通过对单片机内部结构和工作情况做了一定的研究,充分了解定时器,中断以及延时原理,为本次智能交通灯的设计提供了理论基础。

51单片机用C语言实现交通灯(红绿灯)源程序

51单片机用C语言实现交通灯(红绿灯)源程序 2009-10-29 23:00 交通灯,红黄绿灯交替亮,怎样实现呢?其实就是根据单片机定时器及倒计时的程序修改。 源程序如下: /* 1、程序目的:使用定时器学习倒计时红绿灯原理主要程序和倒计时一样 2、硬件要求:数码管、晶振12M */ #include bit red,green,yellow,turnred; //定义红、黄、绿及转红标志 code unsigned char tab[]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共阴数码管 0-9 unsigned char Dis_Shiwei;//定义十位 unsigned char Dis_Gewei; //定义个位 void delay(unsigned int cnt) //用于动态扫描数码管的延时程序{ while(--cnt); } main() { TMOD |=0x01;//定时器设置 10ms in 12M crystal定时器0,工作方式1,16位定时器 TH0=0xd8; //65535-10000=55535=D8F0(十六进制) TL0=0xf0; IE= 0x82; //中断控制,EA=1开总中断,ET0=1:定时器0中断允许 TR0=1; //开定时器0中断 P1=0xfc;//红灯亮,根据红黄绿接灯的顺序。 red =1; while(1) { P0=Dis_Shiwei;//显示十位,这里实现用8位数码管,即左1位 P2=0; delay(300);//短暂延时 P0=Dis_Gewei; //显示个位,左数,2位 P2=1;

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

基于单片机的交通灯控制系统 一、实验目的 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(); }

基于单片机的智能交通红绿灯控制系统设计

1选题背景 今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。 关键词: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道:

单片机8255交通灯程序

单片机8255交通灯程序

交通灯程序 /*********************************************************** 十字路口交通灯控制 C 程序 ***********************************************************/ #include #define uchar unsigned char #define uint unsigned int /*****定义控制位*******************************************/ sbit Time_Show_LED2=P2^5; //Time_Show_LED2(直行时间显示)控制位 sbit Time_Show_LED1=P2^4; //Time_Show_LED1(直行时间显示)控制位 sbit EW_LED2=P2^3; //EW_LED2控制位 sbit EW_LED1=P2^2; //EW_LED1控制位 sbit SN_LED2=P2^1; //SN_LED2控制位 sbit SN_LED1=P2^0; //SN_LED1控制位 sbit SN_Yellow=P1^6; //SN黄灯 sbit EW_Yellow=P1^2; //EW黄灯 sbit EW_ManGreen=P3^0; //EW人行道绿灯 sbit SN_ManGreen=P3^1; //SN人行道绿灯 sbit Special_LED=P2^6; //交通特殊指示灯 sbit Busy_LED=P2^7; //交通繁忙指示灯 sbit Nomor_Button=P3^5; //交通正常按键 sbit Busy_Btton=P3^6; //交通繁忙按键 sbit Special_Btton=P3^7; //交通特殊按键

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

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

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

基于51单片机的智能交通灯课程设计

目录 摘要 (1) 1 系统硬件设计 (2) 1.1 80C51单片机引脚图及引脚功能介绍 (2) 1.2 74LS245引脚图及功能 (4) 1.3 八段LED数码管 (5) 1.4 硬件系统总控制电路 (6) 1.5各模块控制电路 (8) 1.5.1 交通灯控制电路 (8) 1.5.2 倒计时显示电路 (9) 1.5.3 紧急通行电路 (12) 1.5.4 声音警示装置 (13) 2 系统程序设计 (14) 2.1 主程序流程图 (14) 2.2 显示子程序流程图 (15) 3 心得体会 (16) 参考文献 (17) 附录源程序 (18)

摘要 近年来随着科技的飞速发展,一个以微电子技术、计算机技术和通信技术为先导的信息革命正在蓬勃发展。计算机技术作为三者之一,怎样与实际应用更有效的结合并发挥其作用。单片机作为计算机技术的一个分支,正在不断的应用到实际生活中,同时带动传统控制检测的更新。在实时检测和自动控制的应用系统中,单片机往往是作为一个核心部件使用,针对具体应用对象的特点,配以其它器件来加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现交通的井然秩序呢?靠的是交通信号灯的自动指挥系统,来实现交通的井然有序。交通信号灯控制方式很多。本系统采用美国ATMEL公司生产的单片机AT80S51,以及其它芯片来设计交通灯控制。实现了通过AT89S51芯片的P1口设置红、绿灯点亮的功能,输出设置显示时间。交通灯的点亮采用发光二极管实现,时间的显示采用七段数码管实现。单片机系统采用的直流供电。 关键词:AT89S51单片机;智能交通灯控制系统;

基于单片机的红绿灯设计毕业设计

西安航空职业技术学院 毕业设计(论文)任务书 题目:基于单片机的红绿灯设计 任务与要求: 交通信号灯能够控制东西、南北两个方向的交通,红绿黄灯用对应颜色的发光二极管代替; 用四个2位数码管分别显示东、南、西、北方向的通行时间,东西或南北通行时间为30秒,红绿灯切换中间黄灯闪烁5秒时间:2013年9月1日至2013年11月1日共8周 所属系部:自动化工程系 学生姓名:学号: 11 专业:生产过程自动化 指导单位或教研室:计算机控制教研室 指导教师:职称:助教

毕业设计(论文)进度计划表

摘要 在日常生活中,交通灯作为管理交通、调协车辆的一个便捷的手段,起着很大的作用。各种交通工具、行人都要根据交通灯的变化来决定是否前行,通行的时间的规定协调了它们的步伐,极大的减少了由于交通混乱引起的各种事故的发生。因此,一个完善的交通系统中,交通灯是必不可少的设备,一个完善的交通灯程序会更有效的管理当前道路中出现的实际情况,使车辆、行人的行进变得更顺畅、更和谐。 随着我国国民经济的快速发展,我国机动车辆发展迅速,而城镇道路建设由于历史等各种原因相对滞后,交通拥挤和堵塞现象时常出现。如何利用当今计算机和自动控制技术,有效地疏导交通,提高城镇交通路口的通行能力,减少交通事故是很值得研究的一个课题。目前,国内的交通灯一般设在十字路口,在醒目位置用红、绿、黄三颜色的指示灯加上一个倒计时的显示器来控制行车。 关键字:交通灯;单片机;MSC-51;计时

Abstract In daily life , traffic lights as traffic management , co-ordination of the vehicle a convenient means , plays a big role . Various modes of transport , pedestrians should be based on the traffic lights change to decide whether to move forward, the passage of time coordinating their pace required , greatly reducing the traffic chaos caused by various accidents. Therefore, a comprehensive transportation system, traffic lights are essential equipment , a complete traffic lights would be more effective in the management of the current road situation occurs , the vehicle , a pedestrian road becomes smoother and more harmonious . With China's rapid economic development, China's rapid development of motor vehicles , while the urban road construction due to historical and other reasons is lagging behind, traffic congestion and jams often occur . How to take advantage of today's computers and automatic control technology, effective flow of traffic, improve urban traffic junction capacity and reduce traffic accidents is a topic worthy of study . At present , the domestic traffic lights generally located at the crossroads, prominently with red , green and yellow three color LED display with a countdown to control traffic. Key words:traffic light;SCM;MSC-51;timing

用单片机控制交通灯源程序代码及流程图

用单片机控制交通灯 传统的交通灯控制电路一般由数字电路构成,电路复杂、体积大、成本高。采用单片机控制交通灯不但可以解决上述问题,而且还具有时间显示功能,非常方便。下面介绍一种用单片机控制交通灯的方法。 一、硬件硬件电路如附图。AT89C2051的P1.7~P1.5和P1.3~P1.1直接驱动红、黄、绿灯,利用单片机的串口和二片74LS164串/并转换移位寄存器实现时间显示,七段数码管为共阴管,硬件电路极为简单。 二、软件交通灯有红、黄、绿三种。红灯亮,停止通行;绿灯亮,允许通行;黄灯亮,作过渡。红灯亮60秒,绿灯亮55秒,黄灯亮5秒。每组灯的亮暗状态以2分钟为周期循环,故程序采用主、子程序方式,循环结构。另外,为了简化电路,红、黄、绿灯采用低电平点亮。 源程序清单如下: ORG0000H START:MOVDRTR,#TAB MOVSCON,#00H MOVP1,#6CH;点亮红、绿灯 MOVR0,#0;R0清零 LEFT:INCR0 CJNER0,#55,LP0;R0<55,转LP0 MOVP1,#6AH;R0=55,点亮红、黄灯 LJMPLP1 LP0:CJNER0,#60,LP1;R0<60,转LP1 MOVP1,#0C6H;R0=60,点亮绿、红灯 LJMPRIGHT LP1:LCALLDBDB LCALLDISP LJMPLEFT;20H为1,转LEFT RIGHT:DECR0 CJNER0,#5,LP2;R0>0,转LP2 MOVP1,#0A6H;R0=5,点亮黄、红灯 LJMPLP3 LP2:CJNER0,#0,LP3 MOVP1,#6CH;R0=0,点亮红、绿灯 LJMPLEFT LP3:LCALLDBDB

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

课程设计报告 题目:基于单片机的(数显)交通灯控制系统设计 目录 摘要 (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单片机的交通灯(红绿灯)设计论文报告

通过单片机仿真交通灯

第一章概述 1.设计内容: 用AT89S52单片机控制一个交通信号灯系统,晶振采用12MHZ。 设A车道与B车道交叉组成十字路口,A是主道,B是支道。设计要求如下:用发光二极管模拟交通信号灯,用按键开关模拟车辆检测信号。正常情况下,A、B两车道轮流放行,A车道放行50s,其中5s用于警告;B车道放行30s,其中5s 用于警告。交通繁忙时,交通信号灯控制系统应有手控开关,可人为地改变信号灯的状态,以缓解交通拥挤状况。在B 车道放行期间,若A车道有车而B车道无车,按下开关K1 使 A车道放行15s;在 A车道放行期间,若B车道有车而A车道无车,按下开关K1 使B 车道放行15s。有紧急车辆通过时,按下K2开关使 A、B车道均为红灯,禁行20s。 2.设计目的: 1)进一步熟悉和掌握单片机的结构和工作原理。 2)掌握单片机的接口技术及相关外围芯片的外特性,控制方法。 3)通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术,了解有关电路参数的计算方法。 4)通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。 5)通过完成一个包括电路设计和程序开发的完整过程,为我们今后从事相应工作打下基础。 3.设计原理: 利用“自动控制”控制交通灯的方法。将事先编制好的程序输入单片机,利用单片机的定时、查询、中断功能;能够根据十字路口两个方向上车辆动态状况,采用查询的方式,根据具体情况,自动给予时间通行,其中利用中断方式来处理特殊情况。这样既方便驾驶员、路人,同时还可以紧急处理一些紧急实况。同样具有红、黄、绿灯的显示功能,为驾驶员、路人“照明”。 使用AT89C51单片机控制 4个方向的交通灯(红﹑黄﹑绿)并用数码管显示其时间。

相关文档
最新文档