请教一下点灯科技程序代码上的一些疑问。-Arduino中文社区 - Powered by Discuz! Archiver

lyagp03 发表于 2020-12-7 14:24

请教一下点灯科技程序代码上的一些疑问。

Button1.attach(button1_callback);
我APP上设定了多个按键,以上函数是否需要声明多个?
比如Button1.attach(button1_callback);
      Button2.attach(button2_callback);

另外我编写多个按键的代号;是否可以以以下这样的方式来编写?
BlinkerButton Button1("btn-xdh");
BlinkerButton Button2("btn-ek5");
BlinkerButton Button3("btn-ctv");
BlinkerButton Button4("btn-cs6");

按键触发功能函数用下面这样的方式编写,是否可行?
void button1_callback(const String & state) {
    BLINKER_LOG("get button state: ", state);
    if (state=="on") {
       // digitalWrite(LED_BUILTIN, LOW);
      digitalWrite(RELAY1_BUILTIN, HIGH); // 继电器和LED由同个引脚控制
      // 反馈开关状态
      Button1.print("on");
      oState1 = true;
    } else if(state=="off"){
      //digitalWrite(LED_BUILTIN, HIGH);
      digitalWrite(RELAY1_BUILTIN, LOW); // 继电器和LED由同个引脚控制
      // 反馈开关状态
      Button1.print("off");
      oState1 = false;
    }
}

//APP上的KEY2按下会执行以下函数

void button2_callback(const String & state) {
    BLINKER_LOG("get button state: ", state);
    if (state=="on") {
       // digitalWrite(LED_BUILTIN, LOW);
      digitalWrite(RELAY2_BUILTIN, HIGH); // 继电器和LED由同个引脚控制
      // 反馈开关状态
      Button2.print("on");
      oState2 = true;
    } else if(state=="off"){
      //digitalWrite(LED_BUILTIN, HIGH);
      digitalWrite(RELAY2_BUILTIN, LOW); // 继电器和LED由同个引脚控制
      // 反馈开关状态
      Button2.print("off");
      oState2 = false;
    }
}

奈何col 发表于 2020-12-7 16:53

我APP上设定了多个按键,以上函数是否需要声明多个?
需要,另外这个不叫"声明"
另外我编写多个按键的代号;是否可以以以下这样的方式来编写?
就是这样写的,这个叫"实例化"
按键触发功能函数用下面这样的方式编写,是否可行?
自己测试

lyagp03 发表于 2020-12-7 19:08

奈何col 发表于 2020-12-7 16:53
我APP上设定了多个按键,以上函数是否需要声明多个?
需要,另外这个不叫"声明"
另外我编写多个按键的代号 ...

好的,非常感谢。

fkbdnhg 发表于 2022-7-27 14:18

奈何col 发表于 2020-12-7 16:53
我APP上设定了多个按键,以上函数是否需要声明多个?
需要,另外这个不叫"声明"
另外我编写多个按键的代号 ...

感谢您的解答!
页: [1]
查看完整版本: 请教一下点灯科技程序代码上的一些疑问。