Mixly按键控制LED灯

本文介绍使用Mixly软件通过按键控制Arduino板上LED灯的实验。核心代码展示了如何读取按键状态并切换LED灯,实现两次点击切换的效果。实验不仅包括程序源码,还有效果展示图和视频。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

物联网实验二:Mixly按键控制LED灯

Mixly程序源码截图:
在这里插入图片描述

核心代码:

volatile boolean b1;
volatile boolean b2;
volatile int click;
volatile boolean lastState;
volatile boolean toggle;

void setup(){
  pinMode(13, OUTPUT);
  pinMode(8, INPUT);
  lastState = digitalRead(8);
  digitalWrite(13,HIGH);
  toggle = LOW;
  b2 = 0;
  click = 0;
  b1 = digitalRead(8);
}

void loop(){
  if (b1 != lastState) {
    delay(20);
    b2 = digitalRead(8);
    if (b2 == b1) {
      lastState = b1;
      click = click + 1;
    }
  }
  if (click == 2) {
    click = 0;
    toggle = !toggle;
    digitalWrite(13,toggle);
  }
}

实验效果图:
在这里插入图片描述

实验效果视频:

Mixly开关控制Arduino的LED灯

### 如何在Mixly中使用薄膜按键进行编程 #### 实验目的 通过此实验可以了解薄膜按键的工作原理以及其在Arduino中的应用方式。该实验旨在帮助理解如何读取外部输入信号并据此执行特定操作。 #### 所需材料 - Arduino开发板一块 - 薄膜按键若干 - 面包板及连接线 #### 编程环境配置 确保已安装好最新版本的Mixly软件,并正确设置了Arduino开发板型号及其对应的端口号[^1]。 #### 接线图说明 将薄膜按键的一侧引脚接入GND,另一侧依次接到数字接口D2-D5上。这样当按下某个键时会形成闭合电路从而改变相应管脚的状态,进而被程序检测到触发事件处理函数[^2]。 #### Mixly编程实例 以下是具体的图形化编程实现过程: 1. **初始化部分** 创建变量用于存储当前状态和上次状态以便对比判断是否有变化发生。 ```scratch set lastState to 0 set currentState to 0 ``` 2. **主循环逻辑** 不断轮询各个按键的状态,一旦发现有变动则更新`currentState`值;如果新旧两个数值不同,则表示发生了点击动作,此时可以根据实际需求编写响应措施。 ```scratch forever { set currentState to digitalRead(D2) if (lastState != currentState){ if(currentState == HIGH){ // Do something when button pressed. } wait(50ms) // Debounce delay set lastState to currentState } } ``` 上述代码片段展示了针对单一按键的操作流程,对于多按键情况只需复制相同结构并对涉及IO编号做适当调整即可满足需求。 3. **功能拓展建议** 考虑到用户体验优化方面的要求,在原有基础上还可以加入LED指示来直观显示工作模式切换状况;或者引入计数器统计累计按压次数等附加特性提升趣味性和实用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值