Arduino 连接Blinker上传温湿度数据的代码
时间: 2024-04-29 19:27:04 浏览: 186
非常感谢您的提问。以下是Arduino连接Blinker上传温湿度数据的代码:
```
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
#include <Blinker.h>
#define BLINKER_WIFI
#define BLINKER_DEBUG_ALL
char auth[] = "YourAuth";
char ssid[] = "YourSSID";
char pswd[] = "YourPSWD";
Adafruit_BME280 bme;
BlinkerButton btn1("btn-abc");
void setup() {
Serial.begin(9600);
Blinker.begin(auth, ssid, pswd);
if (!bme.begin(0x76)) {
Serial.println("Could not find a valid BME280 sensor, check wiring!");
while (1);
}
btn1.attach(BLINKER_CALLBACK(onButton));
Blinker.attachData(dataRead);
}
void loop() {
Blinker.run();
}
void dataRead(const String & data) {
BLINKER_LOG(BLINKER_F("Blinker readString: "), data);
float t = bme.readTemperature();
float h = bme.readHumidity();
char tempStr[10], humiStr[10];
dtostrf(t, 3, 2, tempStr);
dtostrf(h, 3, 2, humiStr);
char state[128] = ("{\"temp\":");
strcat(state, tempStr);
strcat(state, ",\"humi\":");
strcat(state, humiStr);
strcat(state, "}");
Blinker.print(state);
}
void onButton(const String & state) {
BLINKER_LOG(BLINKER_F("get button state: "), state);
}
```
需要注明的是,您需要替换以下内容:
1. “YourAuth”替换为您自己的设备Auth Key。
2. “YourSSID”和“YourPSWD”替换为您的Wi-Fi名称和密码。
此代码使用Blinker库和Adafruit_BME280库,需要在Arduino IDE中安装这些库才能正常工作。如果您需要更多的帮助,请不要犹豫与我联系。
阅读全文