8266作为emqx客户端如何同时做到接收数据和获取传感器数据并发送给emqx?

问题描述

完成了emqx控制LED的实验,接下来想做用8266发送温湿度数据到emqx。
有个问题:
<PubSubClient.h> 这个库的publish的pyload参数是const char* 怎么把传感器数据转为这种类型呢?

好家伙,我直接自问自答
解决了
1.直接在loop()里获取传感器数据,不过这样似乎会影响8266接收emqx的速度(大约是两秒左右,可能是因为delay了3秒),但对我的项目来说影响不大,没有再往下测试。
2.const char*这个类型可以直接用字符数组往里传,arduino中可以使用dtostrf()函数将浮点数转为字符数组。
image

1赞

温湿度数据上报参阅 通过 NodeMCU (ESP8266) 将传感器数据上传至 MQTT 云服务 | EMQ