【发布时间】:2018-10-06 18:35:07
【问题描述】:
我正在尝试将 Firebase 实时数据库中的整数值读入 Arduino。但是当我阅读它时,它总是读取“0”而不是存储到数据库中的整数。我还在 firebase 中公开了数据库规则。下面是我在 Arduino 中的代码。我正在使用 NodeMCU。
#include<ESP8266WiFi.h>
#include<FirebaseArduino.h>
#define FIREBASE_HOST "##########"
#define FIREBASE_AUTH "##########"
#define WIFI_SSID "##########"
#define WIFI_PASSWORD "##########"
int pin1 = 12;
int pin2 = 14;
int pin3 = 4;
int pin4 = 5;
void setup() {
Serial.begin(115200);
pinMode(pin1, OUTPUT);
pinMode(pin2, OUTPUT);
pinMode(pin3, OUTPUT);
pinMode(pin4, OUTPUT);
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());
delay(700);
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
}
void loop() {
int sw1 = Firebase.getInt("switch1");
int sw2 = Firebase.getInt("switch2");
int sw3 = Firebase.getInt("switch3");
int sw4 = Firebase.getInt("switch4");
Serial.println(sw1);
Serial.println(sw2);
Serial.println(sw3);
Serial.println(sw4);
Serial.println("Test");
if (Firebase.failed()) {
Serial.print("setting /number failed:");
Serial.println(Firebase.error());
return;
}
}
在下面的代码中,即使我试图解决 firebase 的错误,它也不会打印任何内容。我在串行监视器中得到以下输出。
connecting:....
connected: 192.168.1.7
0
0
0
0
Test
setting /number failed:
0
0
0
0
Test
setting /number failed:
【问题讨论】:
-
嗨,你能找到解决方案吗?我面临同样的问题,其中 Firebase.setInt 工作正常,但 Firebase.getInt 只返回 1。