求大佬帮忙看看报错-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 504|回复: 1

[未解决] 求大佬帮忙看看报错

[复制链接]
发表于 2022-7-15 10:44 | 显示全部楼层 |阅读模式
  1. /* *****************************************************************
  2. *
  3. * Download latest Blinker library here:
  4. * https://github.com/blinker-iot/blinker-library/archive/master.zip
  5. *
  6. *
  7. * Blinker is a cross-hardware, cross-platform solution for the IoT.
  8. * It provides APP, device and server support,
  9. * and uses public cloud services for data transmission and storage.
  10. * It can be used in smart home, data monitoring and other fields
  11. * to help users build Internet of Things projects better and faster.
  12. *
  13. * Make sure installed 2.7.4 or later ESP8266/Arduino package,
  14. * if use ESP8266 with Blinker.
  15. * https://github.com/esp8266/Arduino/releases
  16. *
  17. * Make sure installed 1.0.5 or later ESP32/Arduino package,
  18. * if use ESP32 with Blinker.
  19. * https://github.com/espressif/arduino-esp32/releases
  20. *
  21. * Docs: https://diandeng.tech/doc
  22. *      
  23. *
  24. * *****************************************************************
  25. *
  26. * Blinker 库下载地址:
  27. * https://github.com/blinker-iot/blinker-library/archive/master.zip
  28. *
  29. * Blinker 是一套跨硬件、跨平台的物联网解决方案,提供APP端、设备端、
  30. * 服务器端支持,使用公有云服务进行数据传输存储。可用于智能家居、
  31. * 数据监测等领域,可以帮助用户更好更快地搭建物联网项目。
  32. *
  33. * 如果使用 ESP8266 接入 Blinker,
  34. * 请确保安装了 2.7.4 或更新的 ESP8266/Arduino 支持包。
  35. * https://github.com/esp8266/Arduino/releases
  36. *
  37. * 如果使用 ESP32 接入 Blinker,
  38. * 请确保安装了 1.0.5 或更新的 ESP32/Arduino 支持包。
  39. * https://github.com/espressif/arduino-esp32/releases
  40. *
  41. * 文档: https://diandeng.tech/doc
  42. *      
  43. *
  44. * *****************************************************************/

  45. #define BLINKER_WIFI

  46. #include <Blinker.h>

  47. char auth[] = "c7317040da90";
  48. char ssid[] = "Tenda_918F10";
  49. char pswd[] = "156756DMC";

  50. // 新建组件对象
  51. BlinkerSlider Slider1("ran-1fu");
  52. BlinkerButton Button1("btn-abc");
  53. BlinkerNumber Number1("num-abc");

  54. int counter = 0;
  55. void button1_callback(const String & state) {
  56.     BLINKER_LOG("get button state: ", state);
  57.     digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
  58. }

  59. // 按下按键即会执行该函数
  60. void slider1_callback(const String & state)
  61. {
  62.     BLINKER_LOG("get button state: ", state);
  63.     digitalWrite(3, !digitalRead(LED_BUILTIN));
  64. }

  65. // 如果未绑定的组件被触发,则会执行其中内容
  66. void dataRead(const String & data)
  67. {
  68.     BLINKER_LOG("Blinker readString: ", data);
  69.     counter++;
  70.     Number1.print(counter);
  71. }

  72. void setup()
  73. {
  74.     // 初始化串口
  75.     Serial.begin(115200);
  76.     BLINKER_DEBUG.stream(Serial);
  77.     BLINKER_DEBUG.debugAll();
  78.    
  79.     // 初始化有LED的IO
  80.     pinMode(LED_BUILTIN, OUTPUT);
  81.     digitalWrite(LED_BUILTIN, HIGH);
  82.     // 初始化blinker
  83.     Blinker.begin(auth, ssid, pswd);
  84.     Blinker.attachData(dataRead);

  85.     Button1.attach(button1_callback);
  86.     Slider1.attach(slider1_callback);
  87. }

  88. void loop() {
  89.     Blinker.run();
  90. }
复制代码
代码如上 编译不了
  1. C:\Users\25768\AppData\Local\Temp\arduino_modified_sketch_918595\Hello_WiFi.ino: In function 'void setup()':
  2. Hello_WiFi:95:20: error: invalid conversion from 'void (*)(const String&)' to 'blinker_callback_with_int32_arg_t' {aka 'void (*)(int)'} [-fpermissive]
  3.    95 |     Slider1.attach(slider1_callback);
  4.       |                    ^~~~~~~~~~~~~~~~
  5.       |                    |
  6.       |                    void (*)(const String&)
  7. In file included from C:\Users\25768\Documents\Arduino\libraries\blinker-library-0.3.9\src/BlinkerWidgets.h:16,
  8.                  from C:\Users\25768\Documents\Arduino\libraries\blinker-library-0.3.9\src/Blinker.h:266,
  9.                  from C:\Users\25768\AppData\Local\Temp\arduino_modified_sketch_918595\Hello_WiFi.ino:48:
  10. C:\Users\25768\Documents\Arduino\libraries\blinker-library-0.3.9\src/Functions/BlinkerSlider.h:16:55: note:   initializing argument 1 of 'void BlinkerSlider::attach(blinker_callback_with_int32_arg_t)'
  11.    16 |         void attach(blinker_callback_with_int32_arg_t _func)
  12.       |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
  13. exit status 1
  14. invalid conversion from 'void (*)(const String&)' to 'blinker_callback_with_int32_arg_t' {aka 'void (*)(int)'} [-fpermissive]
复制代码


发表于 2022-7-15 16:24 | 显示全部楼层
这纯粹不看示例乱写回调函数
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-1 01:20 , Processed in 0.143866 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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