实验四:交通灯

上面我们已经完成了单个小灯的控制实验,接下来我们就来做一个稍微复杂一点的交通灯实验,其实聪明的朋友们可以看出来这个实验就是将上面单个小灯的实验扩展成3 个颜色的小灯,就可以实现我们模拟交通灯的实验了。

实验器材清单

我们完成这个实验所需的元件除了Arduino 控制器和下载线还需要的硬件如下:

  1. 红色M5直插LED 1个
  2. 黄色M5直插LED 1个
  3. 绿色M5直插LED 1个
  4. 220欧姆电阻 3个
  5. 面包板 1个
  6. 面包板跳线 1扎

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

实验连接原理图

实验连接实物图


既然是交通灯模拟实验,红黄绿三色小灯闪烁时间就要模拟真实的交通灯,我们使用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 秒,依次循环。
实验结束,谢谢。

程序代码

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);//熄灭 红灯
}

Ardino基础教程 4_交通灯相关推荐

  1. Ardino基础教程 3_流水灯

    实验三:流水灯 在生活中我们经常会看到一些由各种颜色的LED灯组成的广告牌,广告牌上各个位置的LED灯不断的变化,形成各种效果.本节实验就是利用LED灯编程模拟广告灯效果. 实验器材清单 LED灯 6 ...

  2. Arduino初初教程3 ——交通灯

    2019独角兽企业重金招聘Python工程师标准>>> 通过前面两次I/O输出的介绍,这次我们就来实现一个交通灯的例子 实物连接效果如图所示: 数码管的控制引脚不变,3个led灯连接 ...

  3. Ardino基础教程 14_倾斜开关

    实验十四:倾斜开关 倾斜开关控制led灯的亮灭 实验器材清单 滚珠开关 1个 LED灯 1个 220欧姆直插电阻 1个 面包板 1个 面包板跳线 1扎 实验接线图 按照Arduino教程将控制板.扩展 ...

  4. Ardino基础教程 2_LED闪烁实验

    实验二:LED 闪烁实验 LED 小灯实验是比较基础的实验之一,上一个" Hello World!"实 验里已经利用到了Arduino 自带的LED,这次我们利用其他I/O 口和 ...

  5. Ardino基础教程 24_RGB全彩LED

    实验二十四:RGB全彩LED 使用三色全彩LED 制造 显示原理,其实原理是在一棵LED 灯里,有三种颜色的灯,红,绿,蓝.每种颜色的灯上的驱动电压不一样,亮度就不一样,它们组合在一起,就形成了各种颜 ...

  6. Ardino基础教程 20_红外遥控

    实验二十:红外遥控 库文件下载链接:ArduinoCode20-红外遥控库代码.zip 注意:把 IRremote 文件夹放到 编译器安装目录下的\Arduino\libraries里.不然编译不过. ...

  7. Ardino基础教程 19_舵机控制

    实验十九:舵机控制 舵机控制实验Servo库版本的代码参考如下链接:ArduinoCode19-舵机控制Servo库版本代码.ino 舵机是一种位置伺服的驱动器,主要是由外壳.电路板.无核心马达.齿轮 ...

  8. Ardino基础教程 18_驱动74HC595

    实验十八:驱动74HC595 概述: 74HC595 是一款漏极开路输出的CMOS 移位寄存器,输出端口为可控的三态输出端,亦能串行输出控制下一级级联芯片. 特点: 管脚图: 管脚说明: 74HC59 ...

  9. Ardino基础教程 15_火焰报警器

    实验十五:火焰报警器 认识火焰传感器 火焰传感器(即红外接收三极管)是机器人专门用来搜寻火源的传感器,本传感器对火焰特别灵敏.实物如图: 火焰传感器利用红外线对火焰非常敏感的特点,使用特制的红外线接收 ...

最新文章

  1. 【c语言】蓝桥杯算法提高 Quadratic Equation
  2. 看样子还是:JSP和JAVA
  3. CodeForces - 620E New Year Tree(线段树+dfs序+状态压缩)
  4. mysql 是否为空字符串_MySql判断是否为null或空字符串
  5. 算法基础--基本排序算法总结·
  6. 第四届福建省大学生程序设计竞赛
  7. JQuery高效制作网页特效第六章jQuery选择器课后作业
  8. webstorm破解
  9. 3、TM4之GPIO的输入输出
  10. PPT画图保存时自动压缩图片问题
  11. Android肝帝战纪之ObjectBox移动数据库框架探究与实现
  12. 分布电容和杂散电容_寄生电容与分布电容的区别
  13. 2013华为工作之电信客服行
  14. Multi-way PCA——多维主成分分析
  15. srgan要训练多久_核心训练需要做多久?学会这些动作,5分钟完成核心训练
  16. 从圆心向外流光的魔法阵shader
  17. 《Unity Shader入门精要》笔记01 前言
  18. 实现一个函数输入123456789,输出123,456,789”
  19. JavaScript 模块化介绍
  20. android解析解析数据格式文件,android 解析nmea原始数据

热门文章

  1. Jquery获取参数(解决参数中文乱码问题)
  2. 第四百一十四节,python常用算法学习
  3. RT-Thread内核之线程调度(5)
  4. CentOS6.6上进程挂起的诡异问题和处理
  5. Linux下mount FreeBSD分区
  6. 无需Get更多技能,快速打造一个可持久化的任务调度
  7. InfoPath开发
  8. UA MATH563 概率论的数学基础 中心极限定理12 强大数定律 版本2:Etemadi定理
  9. ArcEngine Hittest学习总结
  10. 学习笔记101— word 如何给某一页后面所有页增加行号