交通灯控制系统设计(含全部程序)(6)

2019-09-01 19:44

天津**大学2014届本科生毕业设计论文

具体程序如下: u8 RGY_CutControl(void) {

//红绿灯切换 switch(StatusCUT) {

case 1:{

EnCarCounter = 1; //A_red and B_green if(!(T0Counter-GHBtime)) {

T0Counter = 0; StatusCUT++;

DISNumB = YHtime; }

}break; case 2:{

EnCarCounter = 1; //A_red and B_yellow if(!(T0Counter-YHtime)) {

EX0=0;

EX1=0; //关闭外部中断,防止伪计数

T0Counter = 0; StatusCUT++;

//-------------------------------------------------

if(Int0Counter <= 5)

GHAtime = 80;

else if(Int0Counter <= 10)

21

天津**大学2014届本科生毕业设计论文

GHAtime = 120;

else

GHAtime = 160;

Int1Counter = 0;

Int1Counter = 0;

//-------------------------------------------------

}

DISNumA = GHAtime; //A'green time DISNumB = GHAtime+YHtime; //b'red time EX0=1;

EX1=1; //关闭外部中断,防止伪计数

}break; case 3:{

EnCarCounter = 2; //A_green and B_red if(!(T0Counter-GHAtime)) { }

T0Counter = 0; StatusCUT++; DISNumA = YHtime;

}break; case 4:{

EnCarCounter = 2; //A_yellow and B_red if(!(T0Counter-YHtime)) {

EX0=0;

EX1=0; //关闭外部中断,防止伪计数

22

天津**大学2014届本科生毕业设计论文

T0Counter = 0; StatusCUT=1;

//-------------------------------------------------

if(Int1Counter <= 5)

GHBtime = 80;

else if(Int1Counter <= 10)

GHBtime = 120;

else

GHBtime = 160;

Int1Counter = 0;

Int1Counter = 0;

//------------------------------------------------- }

} return 0;

}

DISNumA = GHBtime+YHtime; DISNumB = GHBtime; EX0=1;

EX1=1; //关闭外部中断,防止伪计数

}break; default: ;

4.3车流量检测流程图

系统上电后,系统开始运行,起始A方向红灯亮,B方向绿灯亮,同时判断A方向的车流量,当A、B方向的车流量小于等于5是,A、B方向信号灯按照红灯50秒,绿灯40秒,黄灯10秒运行;当A、B方向的车流量大于5小于等于10时,

23

天津**大学2014届本科生毕业设计论文

A、B方向的信号灯按照红灯70秒,绿灯60秒,黄灯10秒运行;当A、B方向的车流量为其它数时,A、B方向的信号灯按照红灯90秒,绿灯80秒,黄灯10秒运行。按照该规律循环运行,车流量检测流程图如下所示:

开始开始系统初始化系统初始化是AA、、BB方向车流量方向车流量是否是否<=5<=5绿灯亮绿灯亮4040秒秒否绿灯亮绿灯亮6060秒秒AA、、BB方向车流量是方向车流量是否大于否大于55小于等于小于等于1010是否绿灯亮绿灯亮8080秒秒

车流量检测模块的具体程序在红绿黄灯相互转换流程图中所示。

24

天津**大学2014届本科生毕业设计论文

第五章 调试及性能分析

设计时按红绿交通灯控制程序、倒计时显示和车流量检测调整信号灯通行时间进行调试。

5.1红绿黄交通灯控制调试

红绿黄灯直接通过单片机的控制进行调试,观察其逻辑状态是否符合交通信号灯的显示要求。可多次、反复的进行调试,直至其逻辑关系正确。值得注意的是,南北方向(B方向)、东西方向(A方向)的指示灯要同时调试。使得符合绿灯时间和黄灯时间之和为红灯时间。

5.2车流量检测调试

当车辆通过时,阻挡了激光对管所发射出的信号,则计数一次,当计数超过5时下次该方向的绿灯时间可以进行调整,则说明可以接收到信号,电路正常。

STC89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的STC89C52单片机可为您提供许多较复杂系统控制应用场合。

5.3STC89C52调试及性能分析

AT89C51有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的 Flash存储器可有效地降低开发成本。

AT89S52是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准 MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。

AT89S52具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,256 bytes

25


交通灯控制系统设计(含全部程序)(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:阿荣旗

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: