Blinker for ESP01S+AHT10 with SmartConfig

#define BLINKER_WIFI #include #include #include

int count=0;
bool WIFI_Status = true;

char auth[] = "xxxxxxxxxxxx"; //你的设备key

BlinkerNumber HUMI("humi");
BlinkerNumber TEMP("temp");

AHT10Class AHT10; //定义AHT10

float humi_read = 0, temp_read = 0;

void heartbeat()
{
HUMI.print(humi_read);
TEMP.print(temp_read);
}
void smartConfig()
{
WiFi.mode(WIFI_STA);
Serial.println("\r\nWait for Smartconfig...");
WiFi.beginSmartConfig();
while (1)
{
Serial.print(".");
delay(1000);
if (WiFi.smartConfigDone())
{
Serial.println("SmartConfig Success");
Serial.printf("SSID:%s\r\n", WiFi.SSID().c_str());
Serial.printf("PSW:%s\r\n", WiFi.psk().c_str());
break;
}
}
}
void WIFI_Init()
{
Serial.println("\r\n正在连接");
while(WiFi.status()!=WL_CONNECTED)
{
if(WIFI_Status)
{
Serial.print(".");
delay(1000);
count++;
if(count>=5)
{
WIFI_Status = false;
Serial.println("WiFi连接失败,请用手机进行配网");
}
}
else
{
smartConfig();
}
}
Serial.println("连接成功");
Serial.print("IP:");
Serial.println(WiFi.localIP());
}

void setup()
{
Serial.begin(115200);
BLINKER_DEBUG.stream(Serial);
BLINKER_DEBUG.debugAll();
WIFI_Init();
Blinker.begin(auth, WiFi.SSID().c_str(), WiFi.psk().c_str());
Wire.begin(0,2);//初始化ATH10传感器
AHT10.begin(eAHT10Address_Low);
Blinker.attachHeartbeat(heartbeat);
}

void loop()
{
Blinker.run();
float h = AHT10.GetHumidity();
float t = AHT10.GetTemperature();
if (isnan(h) || isnan(t))
{
BLINKER_LOG("Failed to read from AHT10 sensor!");
}
else
{
BLINKER_LOG("Humidity: ", h, " %");
BLINKER_LOG("Temperature: ", t, " *C");
humi_read = h;
temp_read = t;
}
Blinker.delay(2000);
}

posted @ 2020-12-07 15:42  dennisliaotw  阅读(452)  评论(0)    收藏  举报