基于单片机8255交通灯.docx

上传人:b****2 文档编号:2198203 上传时间:2022-10-27 格式:DOCX 页数:14 大小:25.45KB
下载 相关 举报
基于单片机8255交通灯.docx_第1页
第1页 / 共14页
基于单片机8255交通灯.docx_第2页
第2页 / 共14页
基于单片机8255交通灯.docx_第3页
第3页 / 共14页
基于单片机8255交通灯.docx_第4页
第4页 / 共14页
基于单片机8255交通灯.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

基于单片机8255交通灯.docx

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

基于单片机8255交通灯.docx

基于单片机8255交通灯

8255控制交通灯

 

一、实验目的

了解8255芯片的结构及编程方法,学习模拟交通灯控制的实现方法。

二、实验内容

        用8255做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。

三、实验说明

  1.因为本实验是交通灯控制实验,所以要先了解实际交通灯的变化情况和规律。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯,南北红灯。

然后转状态1东西绿灯通车,南北红灯。

过一段时间转状态2,东西绿灯灭,黄灯闪烁几次,南北仍然红灯。

再转状态3,南北绿灯通车,东西红灯。

过一段时间转状态4,南北绿灯灭,闪几次黄灯,延时几秒,东西仍然红灯。

最后循环至状态1。

四、实验程序框图

 

 

五、实验接线图

 

六、实验步骤

①8255PA0—PA7、PB0—PB3依次接发光二极管L1—L12。

②以连续方式从0BB0H开始执行程序,初始态为四个路口的红灯全亮之后,东西路口的绿灯亮南北路口的红灯亮,东西路口方向通车。

延时一段时间后东西路口的绿灯熄灭,黄灯开始闪耀。

闪耀若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车,延时一段时间后,南北路口的绿灯熄灭,黄灯开始闪耀。

闪耀若干次后,再切换到东西路口方向,之后重复以上过程。

一摘要:

本系统采用单片机、键盘、LED显示、交通灯演示系统组成。

设计一个用于十字路口的车辆及行人的交通管理,系统包括左拐、右拐、及行基本的交通灯的功能,计时牌显示路口通行转换剩余时间,在出现紧急情况时可由交通手动实现全路口车辆禁行而行人通行状态。

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

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

采用数码管与点阵LED相结合的显示方法,既要求倒计时数字输出,又要求有状态灯输出等。

关键字:

单片机系统

参考文献:

《单片机课程设计指导》北京航天航空大学出版社

《基于MCS-51系列的单片机原理的应用设计》国防工业出版社

《单片机实训教程》北京大学出版社

《单片机系统原理及应用》

《微机原理及应用》

二、方案设计与论证

1电源提供方案:

采用独立的稳压电源,此方案稳定可靠,且有各种成熟电路可供选用

2显示界面方案

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

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

3输入方案

直接在IO口上接按键开关。

因为设计时精简和优化了电路,所以剩余口的资源还比较多。

4主控制方案

采用AT89C51单片机作为控制器,控制8255实行通行倒计时及左拐、右拐、直行、行人通行指示采用单块LCD液晶点阵显示器。

这种方案设计占用单片机的端口最少,硬件也少。

耗电也最小;

系统框图

正文

一、功能描述

本系统由单片机系统、键盘、发光二极管、交通灯演示系统组成,单片机作为主控制器用于十字路口的车辆及行人的交通管理,每个方向具有左拐、右拐、直行及行人4种通行指示灯,计时牌显示路口通行转换剩余时间。

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

并有手动控制分时段84s与60s通行管理转换等功能。

二、系统硬件电路的设计

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

1、主控制系统

单片机的P0口用于控制8255。

8255的PA口和PB口用于控制南北及东西的通行灯,。

PC口及P3.0~P3.2口用于4组2位LED计时器的控制,特种车通过时使用外中断1口

选择8255的工作方式0,在这种情况下三个端口都可以由程序设置为输入和输出。

2、通行灯输出控制

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

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

图7.4所示为指示灯电路图。

3、时间显示模块

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

因为时间显示每个道口相同,4组需192mA,因此设计中采用中功率三极管9012.因为单片机每个断码输出口需吸收24mA电流,因此在电路设计中也使用了驱动集成块74HC244。

其显示驱动电路如图示。

4、特种车辆自动控制模块

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

设计中采用红外线发生器作为特种车的发生器,使用实时中断来影响特种车的通行要求。

红外线接收器一般采用电视机上用的一体化红外接收器,具有很高的灵敏度和较强的抗干扰能力.

5、电源电路

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

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

三、系统主要程序的设计

道口交通控制系统程序主要分为以下几个模块:

初始化程序、主程序、定时中断程序和特种车实时响应程序等。

1、初始化程序

初始化程序主要完成内存划,定时器的工作模式、中断方式等的设定。

因为子程序调用较多,因此初始化时堆栈指针设于80H处。

定时器T0、T1设为16位定时器模式,定时时间位50ms,为秒计时用,T1为通行结束闪烁用。

2、主程序

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

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

主程序流程图如下图示。

3、外中断1中断服务程序

经过时,车中发射红外线信号,其信号被道口控制板上的接收器接收,并输出一个低电平处外中断1.中断处理程序流程图如下页图所示。

4、定时服务中断程序

序主要用于行车与行人的通行指示,按照交通规则,红绿灯控制转换逻辑表如7.1表所列。

南北方向端口控制功能120~110s110~70s70~60s60~10s10~0s

P*.7左拐红00011

P*.6左拐绿11100/1

P*.5直行红11100

P*.4直行绿000/111

P*.3右拐红01111

P*.2右拐绿10000/1

P*.1行人红11100

P*.0行人绿000/111

道口控制字66H6AH6AH/7BH99H99H/DDH

东西方向P*.7左拐红00000

P*.6左拐绿11111

P*.5直行红00000

P*.4直行绿11111

P*.3右拐红01111

P*.2右拐绿10000/1

P*.1行人绿00000

P*.0行人红11111

道口控制字55H59H59H59H59H/5DH

通行规则如下:

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

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

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

通行时间为1min。

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

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

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

通行时间为1min。

表中通行规则,是以给控制红绿灯端口送控制码的方式实现的。

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

其指示灯功能通过T0定时中断服务程序实现。

定时器T0定时益出中断周期为10ms,中断累计20次<即1s)时对120s倒计时单元减1操作。

设计中将4种通行规则分成集中不同的亮灯方式,通过查询秒倒计时单元的数据,实现在不同的时间段给控制端口送不同的控制数据码。

控制码分为5个时间段:

84—74s、74—58s、58—48s、48—10s、10—0s。

交通管理定时功能程序流程图如下页图所示。

5、调试及性能分析

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

1、红绿交通灯控制程序

时器T0,直接按照表7.1中算好的数据码送出来控制灯,观察其逻辑状态是否符合要求。

可多次、反复地进行调试,直至逻辑关系正确。

值得注意的是,南北方向、东西方向的指示灯要同时调试。

2、特殊车辆通行时红外线检测电路的调试

在模拟小车中放一块红外发射模块,将示波器输入端接在交通控制灯的红外接收模块的输出引脚上,当小车通过路口时,检测红外线是否被接收。

若该脚输出为低电平,则说明可以收到信号,电路正常。

本系统以AT89C51单片机为核心,开发程序调试阶段采用W78E516B进行在线编程及修改,可大大加快调试进度。

设计的交通灯可用于十字路口的车辆及行人的交通管理,显示采用2位7段数码管,可以很直观的显示红绿灯的开放和关闭的时间;设计中应用了两种倒计时显示方式,84S倒计时适用于车流量较大的城市,60s倒计时可用于中小型城市;功能完整,不仅有普通交通灯的指示功能,还增加了特种车辆自动通行功能。

其控制功能和效果与真实道口管理红绿灯完全一致。

ORG0630H

HA4S:

MOVSP,#60H

MOVDPTR,#0FF2BH

MOVA,#80H

MOVX@DPTR,A

MOVDPTR,#0FF29H

MOVA,#49H

MOVX@DPTR,A

INCDPTR

MOVA,#49H

MOVX@DPTR,A

MOVR2,#25H

LCALLDELAY

HA4S3:

MOVDPTR,#0FF29H

MOVA,#08H

MOVX@DPTR,A

INCDPTR

MOVA,#61H

MOVX@DPTR,A

MOVR2,#55H

LCALLDELAY

MOVR7,#05H

HA4S1:

MOVDPTR,#0FF29H

MOVA,#04H

MOVX@DPTR,A

INCDPTR

MOVA,#51H

MOVX@DPTR,A

MOVR2,#20H

LCALLDELAY

MOVDPTR,#0FF29H

MOVA,#00H

MOVX@DPTR,A

INCDPTR

MOVA,#41H

MOVX@DPTR,A

MOVR2,#20H

LCALLDELAY

DJNZR7,HA4S1

MOVDPTR,#0FF29H

MOVA,#03H

MOVX@DPTR,A

INCDPTR

MOVA,#0cH

MOVX@DPTR,A

MOVR2,#55H

LCALLDELAY

MOVR7,#05H

HA4S2:

MOVDPTR,#0FF29H

MOVA,#02H

MOVX@DPTR,A

INCDPTR

MOVA,#8aH

MOVX@DPTR,A

MOVR2,#20H

LCALLDELAY

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

当前位置:首页 > 人文社科 > 法律资料

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

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