这是我的代码:
//
// Copyright 2015 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// FirebaseDemo_ESP8266 is a sample that demo the different functions
// of the FirebaseArduino API.
#include <ESP8266WiFi.h>
#include <FirebaseArduino.h>
// Set these to run example.
#define FIREBASE_HOST "EXAMPLE-12345.firebaseio.com"
#define FIREBASE_AUTH "secret"
#define WIFI_SSID "SSID"
#define WIFI_PASSWORD "PWD"
void setup() {
Serial.begin(9600);
// connect to wifi.
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("connecting");
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(500);
}
Serial.println();
Serial.print("connected: ");
Serial.println(WiFi.localIP());
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
}
int n = 0;
void loop() {
// set value
Firebase.setFloat("number", 42.0);
// handle error
if (Firebase.failed()) {
Serial.print("setting /number failed:");
Serial.println(Firebase.error());
return;
}
delay(1000);
// update value
Firebase.setFloat("number", 43.0);
// handle error
if (Firebase.failed()) {
Serial.print("setting /number failed:");
Serial.println(Firebase.error());
return;
}
delay(1000);
// get value
Serial.print("number: ");
Serial.println(Firebase.getFloat("number"));
delay(1000);
// remove value
Firebase.remove("number");
delay(1000);
// set string value
Firebase.setString("message", "hello world");
// handle error
if (Firebase.failed()) {
Serial.print("setting /message failed:");
Serial.println(Firebase.error());
return;
}
delay(1000);
// set bool value
Firebase.setBool("truth", false);
// handle error
if (Firebase.failed()) {
Serial.print("setting /truth failed:");
Serial.println(Firebase.error());
return;
}
delay(1000);
// append a new value to /logs
String name = Firebase.pushInt("logs", n++);
// handle error
if (Firebase.failed()) {
Serial.print("pushing /logs failed:");
Serial.println(Firebase.error());
return;
}
Serial.print("pushed: /logs/");
Serial.println(name);
delay(1000);
}
这是我的错误:
** Arduino:1.8.5(Windows 10),主板:“ NodeMCU 1.0(ESP-12E模块),80 MHz,115200,4M(3M SPIFFS)”
构建选项已更改,全部重建
在C:\ Users \ ASUS \ Documents \ Arduino \ libraries \ FirebaseArduino \ src / Firebase.h:30:0中包含的文件中, 从C:\ Users \ ASUS \ Documents \ Arduino \ libraries \ FirebaseArduino \ src / FirebaseArduino.h:22, 从C:\ Users \ ASUS \ Documents \ Arduino \ libraries \ firebase-arduino-master \ examples \ FirebaseDemo_ESP8266 \ FirebaseDemo_ESP8266.ino:21: C:\ Users \ ASUS \ Documents \ Arduino \ libraries \ FirebaseArduino \ src / FirebaseObject.h:109:11:错误:StaticJsonBuffer是ArduinoJson 5的类。请参阅arduinojson.org/upgrade了解如何将程序升级到ArduinoJson版本6 std :: shared_ptr> buffer_; ^
在C:\ Users \ ASUS \ Documents \ Arduino \ libraries \ FirebaseArduino \ src / FirebaseArduino.h:22:0中包含的文件中, 从C:\ Users \ ASUS \ Documents \ Arduino \ libraries \ firebase-arduino-master \ examples \ FirebaseDemo_ESP8266 \ FirebaseDemo_ESP8266.ino:21: C:\ Users \ ASUS \ Documents \ Arduino \ libraries \ FirebaseArduino \ src / Firebase.h:86:11:错误:StaticJsonBuffer是ArduinoJson 5的类。请参阅arduinojson.org/upgrade了解如何将程序升级到ArduinoJson版本6 std :: shared_ptr> buffer_; ^
退出状态1 板NodeMCU 1.0(ESP-12E模块)编译时出错。**
请帮助我! 谢谢!
答案 0 :(得分:0)
我有同样的问题。您必须降级ArduinoJson。
为此; 1)草图->包含库->管理库 2)在此窗口中,将“ json”写入搜索框。您应该看到“ Benoit Blanchon的ArduinoJson”。将其版本降级到5.13.2 3)关闭Arduino,再次打开。 4)将代码发送到您的NodeMCU 5)享受。