跳转至

05|Arduino Uno:按钮小灯

按下按钮,LED灯亮起;松开按钮,LED灯熄灭。

本教程将使用Arduino Uno、LED灯模块和按钮模块,完成一个可以独立运行的按钮小灯。

按钮灯效果.webp

预计用时

10分钟


项目效果

  • 按下按钮模块,LED灯模块亮起;
  • 松开按钮模块,LED灯模块熄灭。
  • 程序上传成功后,Arduino可以脱离电脑运行。

准备材料

  • Arduino Uno;
  • Arduino Uno扩展板;
  • LED灯模块;
  • 按钮模块;
  • 2根模块连接线;
  • 支持数据传输的USB数据线;
  • 电脑;
  • 充电宝或USB电源(可选)

如果想让Arduino Uno脱离电脑运行,需要使用电池盒或其他方式为主板供电。

连接 Arduino Uno
Mind+ 主页(USB 连接设备)

进入上传模式

打开Mind+ V2,在“程序设计”中选择“上传模式”。

image.webp image.webp

添加Arduino Uno

进入编程界面后:

  1. 点击左下角的“扩展”;
  2. 找到“主控板”;
  3. 选择“Arduino Uno”;

如未下载过,点击后,请等待下载完成。

*本操作需要联网,只有第一次使用或版本更新时需下载。

  1. 点击添加。

添加成功后,积木区会出现Arduino Uno相关积木。

00.webp


连接模块

连接模块前,先断开Arduino Uno的USB数据线。

按照下表连接:

图片1.webp

连接时,注意连接线的方向,不要将接口接反。

确保黑线对准黑色引脚,红线对红色引脚,彩色对彩色(对照上面效果实拍)

连接完成后,检查:

  • 引脚3连接LED灯模块;
  • 引脚8连接按钮模块;
  • 两根连接线方向正确;
  • 接口没有松动。

连接Arduino Uno

使用USB数据线将Arduino Uno连接到电脑。

Arduino 准备材料

然后在Mind+中:

  1. 点击“连接设备”;
  2. 选择Arduino Uno对应的串口;
  3. 等待连接成功。

Windows电脑中的串口通常显示为“COM+数字”,例如COM3或COM5。

02.webp

没有找到串口

请依次检查:

  1. USB数据线是否支持数据传输;
  2. Arduino Uno是否已经通电;
  3. 重新插拔USB数据线;
  4. 更换电脑USB接口;
  5. 重新打开设备列表。
  6. 打开设备管理器更新主板串口驱动

编写程序

程序需要不断检测引脚8上的按钮模块,并控制引脚3上的LED灯模块。

按钮状态需要持续检测,因此判断程序要放在循环中。

添加条件判断

在“控制”中添加“如果...那么执行”积木。

image.webp

检测按钮是否按下

将按钮模块积木放入判断条件,并将引脚设置为8:

如果引脚8上的按钮模块被按下,读取数字引脚8=1 如果松开按钮,则引脚8读取到的数值=0

04.webp

控制LED灯

在“引脚操作”中添加“设置数字引脚2输出为高电平”,把引脚2改为引脚3:

设置引脚3输出为“高电平”(亮灯)

设置引脚3输出为“低电平”(关灯)

05.webp

完整程序逻辑如下:

  • 按下引脚8的按钮,打开引脚3的LED灯;
  • 松开引脚8的按钮,关闭引脚3的LED灯。

image.webp


编译并上传

确认Arduino Uno已经连接,并选择了正确的串口。

点击“上传”。

Mind+会自动编译程序,并将程序上传到Arduino Uno。

06.webp

看到上传成功的提示后,就可以测试程序了。

如修改了程序,则需重新点击上传,并等待上传成功后,才能再次测试。


测试按钮小灯

按下按钮模块,观察LED灯模块:

  • 按下按钮,LED灯亮起;
  • 松开按钮,LED灯熄灭。

连续测试几次,确认按钮和灯光响应正常。

按钮灯效果.webp

Arduino Uno独立运行测试(选做)

程序上传成功后,已经保存在Arduino Uno中。

断开电脑,将Arduino Uno连接到充电宝或USB电源。通电后,按钮小灯仍然可以正常运行。

这就是上传模式的特点:

程序上传到主控板后,硬件可以脱离电脑独立运行。


保存项目

点击菜单中的“保存”,输入项目名称:

按钮小灯

选择保存位置并完成保存。

07.webp


常见问题

找不到Arduino Uno

打开“扩展”,确认已经在上传模式中添加Arduino Uno。

如无法下载扩展:· 无法下载扩展库怎么办?断网情况下如何安装扩展库?如何一次性安装所有库? - Mind+ 官方文档

找不到串口

  • 确认使用的是支持数据传输的USB数据线,然后重新插拔数据线或更换USB接口。
  • 如果是首次使用,可尝试打开设备管理器更新主板串口驱动

程序上传失败

依次尝试:

  1. 确认已经添加Arduino Uno;
  2. 重新选择串口;
  3. 关闭其他正在使用串口的软件;
  4. 重新插拔USB数据线;
  5. 再次编译并上传。

按下按钮后LED灯没有亮

检查:

  • LED灯模块是否连接引脚3;
  • 按钮模块是否连接引脚8;
  • 模块连接线方向是否正确;
  • 程序中的引脚编号是否为3和8;
  • 程序是否已经成功上传。

完成检查

现在,你应该已经完成:

  • 添加Arduino Uno;
  • 连接LED灯模块和按钮模块;
  • 选择串口并连接Arduino Uno;
  • 检测按钮模块状态;
  • 控制LED灯模块;
  • 编译并上传程序;
  • 测试和保存项目;
  • 让Arduino Uno独立运行。

下一步

接下来,我们将使用行空板K10读取环境亮度,并根据亮度切换屏幕中的东方明珠图案:

06|行空板K10:点亮东方明珠


想继续学习本项目所使用的编程模式或主控板的更多项目:

12|进阶学习-更多系列教程