物联网的调试
一,板子的调试
打开串口监视器(串口监视器是嵌入式开发者的“眼睛”)
工具 → 串口监视器
波特率设置为 115200
应该看到连接过程和数据发布日志
如果看不到日志怎么办?
如果您打开了串口监视器却什么也看不到,或者显示乱码,请按以下步骤排查:
- 检查波特率:这是最常见的问题。务必确保串口监视器的波特率与代码中设置的波特率一致(在 Serial.begin(115200); 这行代码里设置)。不匹配会导致乱码或无显示。
- 检查端口选择:在 工具 → 端口 菜单中,确保选择了正确的串行端口(您的板子对应的那个)。
- 检查代码是否已上传:确认您已经成功将程序编译并上传到了板子上。
- 重启板子:有时板子需要重启一下才能开始正常输出日志。
二,测试 MQTT 通信
使用 MQTT 客户端工具验证数据是否正常发送:
在线 MQTT 客户端测试:
- 访问:http://www.emqx.io/online-mqtt-client
- 连接相同的 Broker: broker.emqx.io
- 订阅主题:esp32/sensor/data
- 应该能看到 ESP32 发送的数据
当测试成功后,修改代码连接到你的中间层:
cpp
// 修改 MQTT 配置部分
const char* mqtt_broker = “你的服务器IP”; // 你的中间层服务器IP
const int mqtt_port = 1883;
const char* mqtt_username = “你的用户名”; // 如果有认证
const char* mqtt_password = “你的密码”; // 如果有认证
const char* topic = “sensor/data”; // 与中间层约定的主题
三,常见失败的总结
1. WiFi 连接失败
* 检查 WiFi 名称和密码
* 确保 ESP32 在 WiFi 信号范围内
2. MQTT 连接失败
* 检查 Broker 地址和端口
* 检查防火墙设置
* 验证用户名密码
3. 数据发送失败
* 检查主题名称是否正确
* 确认网络连接稳定
4. 传感器读取异常
* 检查接线是否正确
* 确认传感器型号匹配
* 检查供电是否稳定