基于51单片机的交通信号灯(Proteus仿真图自取+程序源码)

Proteus仿真图文章末尾自取!!!

一、 系统方案

模拟交通灯控制系统就是使用单片机来控制一些LED灯和数码管,模拟真实交通灯的功能。南北主干道通车时绿灯亮,而东西次干道红灯亮;当主干道通车7s时间过了之后,绿灯熄灭,黄灯亮,黄灯闪烁3s,之后由主干道切换到次干道通车。此时主干道黄灯熄灭,红灯亮,而次干道红灯熄灭,绿灯亮,次干道开始通车;7s通车时间到后,次干道绿灯熄灭,黄灯亮,黄灯亮3s后由次干道切换到主干道;而主干道红灯熄灭,绿灯亮,如此循环。红、黄、绿交替闪亮,利用数码管倒计时,用于管理十字路口的车辆及行人交通。

二、硬件设计

1. 振荡电路

片内的高增益反向放大器通过XTAL1、XTAL2端外接作为反馈元件的片外晶体振荡器与电容组成的并联谐振回路构成一个自激振荡器,向内部时钟电路提供振荡时钟。本实验采用12MHz的晶振频率,电容C1,C2的值为30pF,电容的大小对振荡频率有微小的作用,可起频率微调作用。

2. 复位电路

单片机在运行中由于本身或外界干扰的原因会导致出错,此时可以使用按键复位,使单片机恢复初始状态。
在这里插入图片描述

3. P0口驱动电路

用P0口控制两位的八段数码管。由于P0口输出为漏极开路式,因此需要外接上拉电阻,阻值一般为5~10kΩ,本实验采用阻值为10kΩ的上拉电阻。
在这里插入图片描述

4. 数码管显示电路

在P1口外接六个红绿灯,南北各三个红绿灯,因为南北红绿灯变化一样,东西红绿灯变化一样,因此用P1.1、P1.2、P1.3端口控制东西方向的红绿灯,P1.5、P1.6、P1.7端口控制南北方向的红绿灯。
在这里插入图片描述

5. 总电路原理图

在这里插入图片描述

三、 软件设计(流程图)

1. 交通灯显示流程图

在这里插入图片描述

四、 仿真结果

1. 南北绿灯,东西红灯。

在这里插入图片描述

2.南北倒计时剩余三秒 ,黄灯开始闪烁。

在这里插入图片描述

3. 东西倒计时剩余3s,黄灯开始闪烁

在这里插入图片描述

4. 按下复位按键,回到初始状态。

在这里插入图片描述

五、C语言实现

#define	uchar	unsigned char
#define	uint	unsigned int
#include	<reg52.h>
/*****定义控制位**********************/
sbit	EW_LED2=P2^3;	//EW_LED2控制位
sbit	EW_LED1=P2^2;	//EW_LED1控制位
sbit	SN_LED2=P2^1;	//SN_LED2控制位
sbit	SN_LED1=P2^0;	//SN_LED1控制位
sbit    SN_Yellow=P1^6; <
  • 137
    点赞
  • 632
    收藏
    觉得还不错? 一键收藏
  • 67
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 67
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值