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

2019-09-01 19:44

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

3.6车流量检测控制模块

本系统通过单片机p3.2、p3.3口控制激光对管实现对十字路口的车流量检测,通过系统上电后,交通灯系统按照正常模式运行,红灯禁行时间为50秒,绿灯通行时间为40秒,黄灯缓冲为红灯和绿灯转换时间为10秒。当车流量超过5小于等于10时红灯禁行时间为70秒,绿灯通行时间60秒,黄灯时间为10秒。当车流量为其他数时红灯禁行时间为90秒,绿灯通行时间为80秒,黄灯时间为10秒,东西方向和南北方向过程是相同的。具体的电路如下图所示:

16

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

第四章 软件设计

4.1主程序流程图

系统的主程序开始运行时,系统初始化,检测红绿黄灯的状态字是否改变,如果改变切换红绿黄灯的状态,若没有改变看红黄绿黄灯的持续时间控制字是否改变,如果改变则改变红绿黄灯的持续时间,然后继续循环检测,若没有改变则直接循环到初始状态。主程序流程图如下所示:

开始系统初始化是RGY状态控制字是否改变否RGY持续时间控制字是否改变是改变RGY灯的持续时间

否切换RGY灯的状态具体程序如下: void main(void) {

DISNumA = GHBtime+YHtime; //A'red time DISNumB = GHBtime; //b'green time Init_Timer0();

//初始化外部定时器0中断

ExternItrptInit(); //初始化外部中断 allInterruptEna; //总中断使能 while(true) {

17

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

}

if(FLAG_GetDisNum) { } EX0 = 1; EX1 = 1;

switch(StatusCUT) //红绿灯执行 { }

delay(); //避免数码管显示重影 ScanDigitalLed();

case 1:{

Status1();

FLAG_GetDisNum = 0; RGY_CutControl();

TableNum[3] = (DISNumA >> 1)0/10; TableNum[2] = (DISNumA >> 1); TableNum[1] = (DISNumB >> 1)0/10; TableNum[0] = (DISNumB >> 1);

}break; case 2:{

Status2();

}break; case 3:{

Status3();

}break; case 4:{

Status4();

}break; default : ;

18

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

}

//定时器0负责切换红绿灯

void Timer0_isr(void) interrupt 1 using 1 { TH0=0x13; //重新赋值

TL0=0x88; T0Counter++; DISNumA--; DISNumB--;

FLAG_GetDisNum = 1;

}

//外部中断0中断服务函数 void Int0_isr(void) interrupt 0 using 1 { if(!(EnCarCounter-1)) { //Int1Counter=0; Int0Counter++;

}

}

//外部中断1中断服务函数 void Int1_isr(void) interrupt 2 using 1 { if(!(EnCarCounter-2))

{

19

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

}

}

//Int0Counter=0; Int1Counter++;

4.2红绿黄灯相互转换流程图

当系统上电完成后,系统程序开始运行,起始A方向红灯亮,B方向绿灯亮,与此同时在A方向红灯亮的情况下判断车流量不同时,对A方向下次绿灯亮的时间进行调整。然后B方向红灯亮,A方向绿灯亮,同时在B方向红灯亮的情况下对B方向车流量进行判断以便于对下次B方向绿灯亮的时间进行调整。最后整个系统按照各个状态依次循环运行。

开始A方向红灯,B方向的绿灯时间A方向红灯,判断车流量不同时A方向下次绿灯时间B方向红灯,A方向的绿灯时间B方向红灯,判断车流量不同时,A方向下次绿灯时间结束

20


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

下一篇:阿荣旗

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

马上注册会员

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