如何在使用串口向 ESP8266 发送 AT 命令的 Arduino 上使用 MQTT

物联网 MQTT ESP8266
2021-06-15 01:09:26

我刚开始研究 MQTT 协议。

情况

在我的大学项目中,目前,我使用 Arduino 作为主要的 MCU,并在其中完成所有工作并使用串行通信。向 esp8266 发送 AT 命令(用于 HTTP 请求,在服务器上运行脚本等)。我基本上需要在网页(由本地服务器托管)上推送一些数据(来自 Arduino)。我搜索并发现了MQTT协议,它可以在客户端上发布和订阅数据(正是我想要的)。但是我发现的大多数教程要么完全基于 Arduino(带 wifi 屏蔽),要么完全基于 esp8266。

我想知道的是,有没有一种方法可以像我当前的配置一样使用 MQTT?也就是说,使用 Arduino 完成所有工作并使用其串行通信。仅通过 MQTT 上的 AT 命令发布数据。

此处提到了有关我的项目的其他信息:对在智能家居系统中使用哪种技术感到困惑

1个回答

我终于找到了 Sony Arouje 的教程事实证明,我不得不完全放弃手动发送 esp 命令,而不得不使用库 (WiFiEsp.h)。提示...更好!

虽然最初它不适用于我的 esp8266,因为它有较旧的固件并报告错误“不支持固件”。我不得不刷新一个更新的固件(在我的情况下使用 1.54 版)。任何在刷新固件时遇到问题的人都可以找到一些帮助来参考这个主题:无法刷新 ESP8266 最新固件,说“快速闪烁错误”和“数据包头无效('')”

此外,我已经保存了所有下载工具和教程页面本身的副本,因此如果将来该帖子被删除或者如果有人找不到要刷机的工具。在评论或其他内容中找到我(不在这里发布,因为我不知道发布其他人的内容是否可以)