交通信号灯设计

       图1是一个十字路口示意图。分别用1、2、3、4表明四个流向的主车道,用A、B、C、P分别表示各主车道的左行车道、直行车道、右行车道以及人行道。用a、b、c、p分别表示左转、直行、右转和人行道的交通信号灯,如图2所示。

交通灯闪亮的过程:

路口1的车直行时的所有指示灯情况为:

3a3b2p绿3c红+4a4b4c 3p全红+1c 绿1a1b4p红+2c绿2a2b1p红

路口2的车直行时的所有指示灯情况为:

4a4b3p绿4c红+ 1a1b1c 4p全红+ 2c绿2a2b1p红+3c绿3a3b2p红

故路口3的车直行时的所有指示灯情况为:

1a1b4p绿1c红+ 2a2b2c 1p全红+3c绿 3a3b2p红+4c 绿4a4b3p红

故路口4的车直行时的所有指示灯情况为:

2a2b1p绿2c红+3c3a3b2p全红+4c绿4a4b3p红+1c绿1a1b4p红

图1:十字路口交通示意图

图2:十字路口通行顺序示意图

图3:十字路口交通指示灯示意图

图4:交通灯控制系统硬件框图

3、硬件设计

本系统硬件上采用AT89C52单片机和可编程并行接口芯片8155,分别控制图2所示的四个组合。AT89C52单片机具有MCS-51内核,片内有8KB Flash、256字节RAM、6个中断源、1个串行口、最高工作频率可达24MHz,完全可以满足本系统的需要 ;与其他控制方法相比,所用器件可以说是比较简单经济的。硬件框图如下:

电路原理图 [PDF]

4、软件流程图

图5:交通灯控制系统流程图

5、交通灯控制系统软件

ORG 0000H

LJMP MAIN

ORG 0100H

MAIN:

MOV SP,#60H

; LCALL DIR ;调用日期、时间显示子程序

LOOP:

MOV P1,#0FFH

LJMP TEST

LCALL ROAD1 ;路口1的车直行时各路口灯亮情况

LCALL DLY30s ;延时30秒

MOV P1,#0FFH ;恢复P1口高电平

LCALL RESET ;恢复8155各口为高电平

LCALL YELLOW1 ;路口1的车直行-->路口2的车直行黄灯亮情况

LCALL DLY5s ;延时5秒

LCALL RESET ;恢复8155各口为高电平

MOV P1,#0FFH ;恢复P1口

LCALL ROAD2 ;路口2的车直行时各路口灯亮情况

LCALL DLY30s ;延时30秒

LCALL RESET ;恢复8155A 、B口为高电?

MOV P1,#0FFH ;恢复P1口高电平

LCALL YELLOW2 ;路口2的车直行-->路口3的车直行黄灯亮情况

LCALL DLY5s ;延时5秒

LCALL RESET ;恢复8155A 、B口为高电?

MOV P1,#0FFH ;恢复P1口高电平

LCALL ROAD3 ;路口3的车直行时各路口灯亮情况

LCALL DLY30s ;延时30秒

LCALL RESET ;恢复8155A 、B口为高电?

MOV P1,#0FFH ;恢复P1口高电平

LCALL YELLOW3 ;路口3的车直行-->路口4的车直行黄灯亮情况

LCALL DLY5s ;延时5秒

LCALL RESET ;恢复8155各口为高电平

MOV P1,#0FFH ;恢复P1口高电平

LJMP TEST

LCALL ROAD4 ;路口4的车直行时各路口灯亮情况

LCALL DLY30s ;延时30秒

SETB P1.5 ;恢复P1.5高电平

SETB P1.4 ;恢复P1.4高电平

MOV DPTR,#0FFFFH ;恢复8155各口为高电平

LCALL YELLOW4 ;路口4的车直行-->路口1的车直行黄灯亮情况

LCALL DLY5s ;延时5秒

SETB P1.6 ;恢复P1.6高电平

SETB P1.3 ;恢复P1.3高电平

MOV DPTR,#0FFFFH ;恢复8155各口为高电平

LJMP LOOP

;路口1的车直行时各路口灯亮情况3a3b2p绿3c红+4a4b4c3p全红+1c绿1a1b4p红+2c绿2a2b1p红

ROAD1:

MOV DPTR,#7F00H ;置8155命令口地址;无关位为1)

MOV A,#03H ;A口、B口输出,A口、B口为基本输入输出方式

MOVX @DPTR,A ;写入工作方式控制字

INC DPTR ;指向A口

MOV A,#79H ;1a1b4p红1c绿2a2b1p红

MOVX @DPTR,A

INC DPTR ;指向B口

MOV A,#0E6H ;3a3b2p绿3c红4a4b3p红

MOVX @DPTR,A

MOV P1,#0DEH ;4c红2c绿

RET

6、结语

       本系统结构简单,操作方便;可现自动控制,具有一定的智能性;对优化城市交通具有一定的意义。

       本设计将各任务进行细分包装,使各任务保持相对独立;能有效改善程序结构,便于模块化处理,使程序的可读性、可维护性和可移植性都得到进一步的提高。

粽子糖果 发表于04-17 15:20 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

粽子糖果
粽子糖果(总统)
金币:41631个|学分:51991个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号