找不到 Firebase.getFloat 返回错误值的原因
Can't find why Firebase.getFloat returning wrong value
#include <FirebaseArduino.h>
#include <ESP8266WiFi.h>
#define FIREBASE_HOST "myproject07.firebaseio.com"
#define FIREBASE_AUTH "Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxvfig"
#define WIFI_SSID "xyz"
#define WIFI_PASSWORD "12xxxxxx"
float mv;
String fireStatus = "";
void setup() {
Serial.begin(9600);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to ");
Serial.print(WIFI_SSID);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".\n");
delay(500);}
Serial.println();
Serial.print("Connected to ");
Serial.println(WIFI_SSID);
Serial.print("IP Address is : ");
Serial.println(WiFi.localIP());
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.pushFloat("/Num/number", 42.0);
// handle error
if (Firebase.failed()) {
Serial.print("setting /number failed:");
Serial.println(Firebase.error());
return;
}
Serial.print("number: ");
Serial.println(Firebase.getFloat("/Num/number"));
delay(1000);
}
void loop() {
}
我找不到这段代码有什么问题。我使用 setFloat
设置值并使用 getFloat
获取值。它更新我的数据库。意思是它正在创建一个 Num 节点并将数字值设置为 42,但是当我使用 getFloat 时它显示 0.0。我不知道如何解决这个问题。
据我所知,似乎是这个问题Firebase.getFloat returning 0.0
检查您是否可以检索字符串形式的值。如果是这样,那就是错误,如果不是,请更新您的问题。
一个例子:
// You did your push then
Serial.print("number: ");
float f = Firebase.getFloat("/Num/number");
char err[] = Firebase.error();
Serial.println(f);
Serial.println(err);
delay(1000);
#include <FirebaseArduino.h>
#include <ESP8266WiFi.h>
#define FIREBASE_HOST "myproject07.firebaseio.com"
#define FIREBASE_AUTH "Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxvfig"
#define WIFI_SSID "xyz"
#define WIFI_PASSWORD "12xxxxxx"
float mv;
String fireStatus = "";
void setup() {
Serial.begin(9600);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to ");
Serial.print(WIFI_SSID);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".\n");
delay(500);}
Serial.println();
Serial.print("Connected to ");
Serial.println(WIFI_SSID);
Serial.print("IP Address is : ");
Serial.println(WiFi.localIP());
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.pushFloat("/Num/number", 42.0);
// handle error
if (Firebase.failed()) {
Serial.print("setting /number failed:");
Serial.println(Firebase.error());
return;
}
Serial.print("number: ");
Serial.println(Firebase.getFloat("/Num/number"));
delay(1000);
}
void loop() {
}
我找不到这段代码有什么问题。我使用 setFloat
设置值并使用 getFloat
获取值。它更新我的数据库。意思是它正在创建一个 Num 节点并将数字值设置为 42,但是当我使用 getFloat 时它显示 0.0。我不知道如何解决这个问题。
据我所知,似乎是这个问题Firebase.getFloat returning 0.0
检查您是否可以检索字符串形式的值。如果是这样,那就是错误,如果不是,请更新您的问题。
一个例子:
// You did your push then
Serial.print("number: ");
float f = Firebase.getFloat("/Num/number");
char err[] = Firebase.error();
Serial.println(f);
Serial.println(err);
delay(1000);