首页 > 解决方案 > 编译 Arduino 代码(NodeMCU)时出错

问题描述

我一直在使用 NodeMCU 1 周,但昨天突然,在再次编译 NodeMCU 时,像往常一样,它在编译期间显示错误并且没有上传代码。请帮我摆脱它。

这是即将到来的错误

Arduino: 1.8.12 (Windows 8.1), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"

In file included from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkApiArduino.h:14:0,

                 from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkSimpleEsp8266.h:24,

                 from C:\Users\Govind\Desktop\Stepper_Motor_Joystick_2.21\Stepper_Motor_Joystick_2.21.ino:3:

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkApi.h: In instantiation of 'void BlynkApi<Proto>::syncVirtual(Args ...) [with Args = {}; Proto = BlynkProtocol<BlynkArduinoClientGen<Client> >]':

C:\Users\Govind\Desktop\Stepper_Motor_Joystick_2.21\Stepper_Motor_Joystick_2.21.ino:69:25:   required from here

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkApi.h:143:9: error: no matching function for call to 'BlynkParam::add_multi()'

         cmd.add_multi(pins...);

         ^

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkApi.h:143:9: note: candidates are:

In file included from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkApi.h:16:0,

                 from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkApiArduino.h:14,

                 from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkSimpleEsp8266.h:24,

                 from C:\Users\Govind\Desktop\Stepper_Motor_Joystick_2.21\Stepper_Motor_Joystick_2.21.ino:3:

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkParam.h:111:10: note: template<class T, class ... Args> void BlynkParam::add_multi(T)

     void add_multi(T last) {

          ^

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkParam.h:111:10: note:   template argument deduction/substitution failed:

In file included from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkApiArduino.h:14:0,

                 from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkSimpleEsp8266.h:24,

                 from C:\Users\Govind\Desktop\Stepper_Motor_Joystick_2.21\Stepper_Motor_Joystick_2.21.ino:3:

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkApi.h:143:9: note:   candidate expects 1 argument, 0 provided

         cmd.add_multi(pins...);

         ^

In file included from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkApi.h:16:0,

                 from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkApiArduino.h:14,

                 from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkSimpleEsp8266.h:24,

                 from C:\Users\Govind\Desktop\Stepper_Motor_Joystick_2.21\Stepper_Motor_Joystick_2.21.ino:3:

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkParam.h:116:10: note: template<class T, class ... Args> void BlynkParam::add_multi(T, Args ...)

     void add_multi(T head, Args... tail) {

          ^

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkParam.h:116:10: note:   template argument deduction/substitution failed:

In file included from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkApiArduino.h:14:0,

                 from C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/BlynkSimpleEsp8266.h:24,

                 from C:\Users\Govind\Desktop\Stepper_Motor_Joystick_2.21\Stepper_Motor_Joystick_2.21.ino:3:

C:\Users\Govind\Documents\Arduino\libraries\arduino_238892\src/Blynk/BlynkApi.h:143:9: note:   candidate expects 2 arguments, 0 provided

         cmd.add_multi(pins...);

         ^

exit status 1
Error compiling for board NodeMCU 1.0 (ESP-12E Module).

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

我目前正在尝试使用AccelStepper库和Blynk库运行步进电机,还包括用于连接的Esp8266库。我无法理解问题

标签: c++compiler-errorsarduinoarduino-esp8266

解决方案


看起来您在没有任何参数的情况下调用了 Blynk.syncVirtual()。您需要至少包含一个虚拟引脚,如下所示:

  Blynk.syncVirtual(V4);

推荐阅读