河南led灯批发联盟

【创客空间】Arduino实验四 交通灯设计实验

启帆创客 2021-11-23 10:17:14

点击上方蓝字启帆创客可加关注,和我一起成长吧!

知识最有趣,开心学编程


交通灯设计实验

上面我们已经完成了单个小灯的控制实验,接下来我们就来做一个稍微复杂一点的交通灯实验,其实聪明的朋友们可以看出来这个实验就是将上面单个小灯的实验扩展成3 个颜色的小灯,就可以实现我们模拟交通灯的实验了。我们完成这个实验所需的元件除了Arduino 控制器和下载线还需要的硬件如下:

红色M5 直插LED*1

黄色M5 直插LED*1

绿色M5 直插LED*1

220Ω电阻*3

面包板*1

面包板跳线*1 扎

准备好上述元件我们就可以开工了,我们可以按照上面小灯闪烁的实验举一反三,下面是我们提供参考的原理图,我们使用的分别是数字1074、接口.

既然是交通灯模拟实验,红黄绿三色小灯闪烁时间就要模拟真实的交通灯,我们使用Arduino delay()函数来控制延时时间,相对于C 语言就要简单许多了。

下面是一段参考程序:

int redled =10; //定义数字8 接口

int yellowled =7; //定义数字7 接口

int greenled =4; //定义数字4 接口

void setup()

{

pinMode(redled, OUTPUT);//定义红色小灯接口为输出接口

pinMode(yellowled, OUTPUT); //定义黄色小灯接口为输出接口

pinMode(greenled, OUTPUT); //定义绿色小灯接口为输出接口

}

void loop()

{

digitalWrite(greenled, HIGH);////点亮 绿灯

delay(5000);//延时5秒

digitalWrite(greenled, LOW); //熄灭 绿灯

for(int i=0;i<3;i++)//闪烁交替三次,黄灯闪烁效果

{

delay(500);//延时0.5 秒

digitalWrite(yellowled, HIGH);//点亮  黄灯

delay(500);//延时0.5 秒

digitalWrite(yellowled, LOW);//熄灭  黄灯

}

delay(500);//延时0.5 秒

digitalWrite(redled, HIGH);//点亮 红灯

delay(5000);//延时5 秒

digitalWrite(redled, LOW);//熄灭 红灯

}

 

 

下载程序完成后就可以看到我们自己设计控制的交通灯了。

注意:此设计电路跟流水灯的极为相似,就不上图片拉。

      实验效果:绿灯亮5秒,绿灯熄灭,黄灯循环闪烁3次,红灯亮5秒,依次循环。





启帆创客

和全国爱科学的小朋友一起学习,共同成长