有些情况下,我们需要查看即时数据,比如当前的加热温度。对于这种情况,可以使用 blinker 的“实时数据”功能。启用方法非常简单:在控件界面上选中“实时数据”即可。

下面是一个测试代码,每隔2秒生成一组温度湿度数据,显示在串口上同时发送到 Blinker 的服务器上。之后打开 Blinker 的APP 即可看到实时数值。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | #define BLINKER_WIFI #include <Blinker.h> char auth[] = "你的Key" ; char ssid[] = "你家WIFI名" ; char pswd[] = "你家WIFI密码" ; BlinkerNumber HUMI( "humi" ); BlinkerNumber TEMP( "temp" ); uint32_t read_time = 0 ; float Humidity = 0 , Temperature = 0 ; void rtData() { Blinker.sendRtData( "temp" , Humidity); Blinker.sendRtData( "humi" , Temperature); Blinker.printRtData(); } void setup () { Serial.begin ( 115200 ); BLINKER_DEBUG.stream(Serial); BLINKER_DEBUG.debugAll(); pinMode (LED_BUILTIN, OUTPUT ); digitalWrite (LED_BUILTIN, LOW ); Blinker.begin(auth, ssid, pswd); Blinker.attachRTData(rtData); } void loop () { Blinker.run(); if (read_time = = 0 | | ( millis () - read_time) > = 2000 ) { read_time = millis (); BLINKER_LOG( "Humidity: " , Humidity, " %" ); BLINKER_LOG( "Temperature: " , Temperature, " *C" ); if (Temperature> 50.0 ) {Temperature = 0 ;} else {Temperature = Temperature + 0.4 ;} if (Humidity> 50.0 ) {Humidity = 0 ;} else {Humidity = Humidity + 0.9 ;} } } |
运行之后可以在 Blinker 上看到温湿度的实时变化:
