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

本文介绍了一个基于单片机的十字路口交通灯控制系统的设计,通过编程实现了交通灯的定时显示和手动调整功能。系统使用了P2和P3口控制红绿黄灯的亮灭,并通过定时器和中断进行时间控制。用户可以通过按键系统进行时间调整。
摘要由CSDN通过智能技术生成

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]=
{0xc0,0xf9,0xa4,0xb0,0x99,
0x92,0x82,0xf8,0x80,0x90};
uint second;
uchar num0=0,num1=0,num2=0;
char x1=0,x2=0,x3=0,x4=0;
sbit zhu_red=P2^0;
sbit zhu_yellow=P2^1;
sbit zhu_green=P2^2;
sbit zhi_red=P2^3;
sbit zhi_yellow=P2^4;
sbit zhi_green=P2^5;
sbit zhu_swei=P3^0;
sbit zhu_gwei=P3^1;
sbit zhi_swei=P3^2;
sbit zhi_gwei=P3^3;
sbit key_system=P3^4;
sbit key_jia=P3^5;
sbit key_jian=P3^6;
void delay(uint z)
{uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);}

void zhu_display(uchar date)
{uchar i,j;
i=date/10;
j=date%10;
zhu_gwei=1;
P0=table[j];
delay(5);
zhu_gwei=0;
zhu_swei=1;
P0=table[i];

微机原理及接口技术课程设计交通灯 序言 十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。在交通灯的通行与禁止时间控制显示中,通常要么东西、南北两方向各50秒;要么根据交通规律,东西方向60秒,南北方向40秒,时间控制都是固定的。交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受认为因素的影响。采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。 目前,有一种使用“模糊控制”技术控制交通灯的方法。能够根据十字路口两个方向上车辆动态状况,自动判断红绿灯时间间隔,以保证最大车流量,减少道口的交通堵塞。但是却不像定时控制,能用数字显示器显示当前灯色剩余时间,以便于驾驶员随时掌握自己的驾驶动作,及
一、 功能分析 硬件的设计采用89ATC51单片机为核心器件。并辅助复位电路,驱动电路,数码管及晶体管显示部分。通过中断扩展实现交通系统特殊情况的转换。 软件设计部分分为一个主程序和两个中断子程序,一个用于有紧急车辆通过时,系统要能禁止普通车辆通行,实行中断可使A(东西道)、B(南北道)两道均亮红灯;另一个用于一道有车而另一道无车时,通过控制交通系统能立即让有车道放行,假如A道有车B道无车,长按K0可以控制交通系统能立即让东西道放行;假如南北道有车东西道无车,长按K1可以控制交通系统能立即南北道放行。 十字路口交通灯在工作时应具有如下特点:红灯表示该条道路禁止通行;黄灯表示该条道路上未过停车线的车辆禁止通行,已过停车线的车辆继续通行;绿灯亮表示该条道路允许通行。 本设计利用单片机控制可以实现以下功能: (1)A道和B道上均有车辆要求通过时,A,B道轮流放行。A道放行5分钟(调试时改为5秒钟),B道放行4分钟(调试时改为4秒钟)。 (2)一道有车而另一道无车(实验时用开关K0和K1控制),交通灯控制系统能立即让有车道放行。 (3)有紧急车辆要求通过时,系统要能禁止普通车辆通行,A,B道均为红灯,紧急车由K2开关模拟。 (4)绿灯转换为红灯时黄灯亮1秒钟
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值