点灯科技(blinker)六路智能开关(ESP8266 ch340)-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3754|回复: 10

点灯科技(blinker)六路智能开关(ESP8266 ch340)

[复制链接]
发表于 2021-8-7 17:23 | 显示全部楼层 |阅读模式
本帖最后由 yuanxi 于 2021-8-14 14:35 编辑

所需材料:ESP8266 ch340 6路继电器 实现用点灯科技(blinker)APP远程开关
  1. #define BLINKER_WIFI
  2. #include <Blinker.h>
  3. char auth[] = "e93f"; // 点灯科技秘钥
  4. char ssid[] = "wifi"; // WiFi名称
  5. char pswd[] = "123456"; // WiFi密码
  6. #define bt1 5
  7. #define bt2 4
  8. #define bt3 0
  9. #define bt4 2
  10. // 新建组件对象
  11. BlinkerButton Button1("btn1-abc");
  12. BlinkerButton Button2("btn2-abc");
  13. BlinkerButton Button3("btn3-abc");
  14. BlinkerButton Button4("btn4-abc");
  15. // 按下按键即会执行该函数
  16. void button1_callback(const String & state) {
  17.   BLINKER_LOG("get button state: ", state);
  18.   if (state == "on") {
  19.     digitalWrite(bt1, LOW);
  20.     // 反馈开关状态
  21.     Button1.print("on");
  22.   } else if (state == "off") {
  23.     digitalWrite(bt1, HIGH);
  24.     // 反馈开关状态
  25.     Button1.print("off");
  26.   }
  27. }
  28. // 按下按键即会执行该函数
  29. void button2_callback(const String & state) {
  30.   BLINKER_LOG("get button state: ", state);
  31.   if (state == "on") {
  32.     digitalWrite(bt2, LOW);
  33.     // 反馈开关状态
  34.     Button2.print("on");
  35.   } else if (state == "off") {
  36.     digitalWrite(bt2, HIGH);
  37.     // 反馈开关状态
  38.     Button2.print("off");
  39.   }
  40. }
  41. // 按下按键即会执行该函数
  42. void button3_callback(const String & state) {
  43.   BLINKER_LOG("get button state: ", state);
  44.   if (state == "on") {
  45.     digitalWrite(bt3, LOW);
  46.     // 反馈开关状态
  47.     Button3.print("on");
  48.   } else if (state == "off") {
  49.     digitalWrite(bt3, HIGH);
  50.     // 反馈开关状态
  51.     Button3.print("off");
  52.   }
  53. }
  54. // 按下按键即会执行该函数
  55. void button4_callback(const String & state) {
  56.   BLINKER_LOG("get button state: ", state);
  57.   if (state == "on") {
  58.     digitalWrite(bt4, LOW);
  59.     // 反馈开关状态
  60.     Button4.print("on");
  61.   } else if (state == "off") {
  62.     digitalWrite(bt4, HIGH);
  63.     // 反馈开关状态
  64.     Button4.print("off");
  65.   }
  66. }
  67. void setup() {
  68.   // 初始化串口
  69.   Serial.begin(115200);
  70.   // 初始化有LED的IO
  71.   pinMode(bt1, OUTPUT);
  72.   digitalWrite(bt1, HIGH);
  73.   pinMode(bt2, OUTPUT);
  74.   digitalWrite(bt2, HIGH);
  75.   pinMode(bt3, OUTPUT);
  76.   digitalWrite(bt3, HIGH);
  77.   pinMode(bt4, OUTPUT);
  78.   digitalWrite(bt4, HIGH);
  79.   // 初始化blinker
  80.   Blinker.begin(auth, ssid, pswd);
  81.   Button1.attach(button1_callback);
  82.   Button2.attach(button2_callback);
  83.   Button3.attach(button3_callback);
  84.   Button4.attach(button4_callback);
  85. }
  86. void loop() {
  87.   Blinker.run();
  88. }
  89. ————————————————
  90. 感谢群友 尨行 帮忙完善
复制代码


QQ图片20210807171156.jpg
发表于 2021-8-13 22:41 | 显示全部楼层
非常好,改成6路了,效果很好
发表于 2021-8-11 13:06 | 显示全部楼层
是不是少了这个#define BLINKER_PRINT Serial,没有这个找不到设备老是离线
发表于 2021-10-10 01:35 | 显示全部楼层
比如说要控制二极管发光,是不是一端接D2,一端接8266板子的gnd就行了?
发表于 2021-10-10 11:50 | 显示全部楼层
不抖的IO不用 偏偏用上电抖动的IO
发表于 2021-10-15 11:48 | 显示全部楼层
您好楼主,问下,我第一次家里上电联网了,然后再拿到公司公司的网络配网,这就是发现不了网络哦!配不上,这怎么解决,
发表于 2021-10-15 12:05 | 显示全部楼层
XlinliY.Zhang 发表于 2021-10-10 11:50
不抖的IO不用 偏偏用上电抖动的IO

上电会抖动的话,麻烦您,在光耦的第三脚加100uF电解电容,已经测试过,就不知道您用的有没有光耦的,
发表于 2021-10-18 23:49 | 显示全部楼层
liuhuayuan 发表于 2021-10-15 11:48
您好楼主,问下,我第一次家里上电联网了,然后再拿到公司公司的网络配网,这就是发现不了网络哦!配不上, ...

你确定你公司里也是用和家里一样的wifi名称和密码?如果不是就很正常了,因为网络参数是写死了的,见04、05行,如果需要家里、公司来回用,应该用web配网方式,自己搜索一下就明白了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 10:41 , Processed in 0.227169 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表