ESP8266烧录固件与MQTT通信实战:从AT指令到STM32物联网应用
一、ESP8266
1. 烧写固件
打开 ESP8266 烧录工具:


1.1 烧写 AT 固件
烧写默认的 AT 固件,选择:Ai-Thinker_ESP8266_DOUT_8Mbit_v1.5.4.1-a_20171130.bin
烧录:

烧写成功:

1.2 烧写机智云固件
除了烧写默认的 AT 固件,也可以烧写其它固件,比如机智云固件。
烧录机智云固件,选择:GAgent_00ESP826_04020034_8MbitUser1_combine_201806091441.bin

2. 测试 AT 指令
烧写完 AT 固件后,可以打开串口调试助手测试是否成功,默认波特率 115200 :

只要发送 AT 可以收到 OK,一般这个模块就没问题了。
二、MQTT
1. MQTT 简介
MQTT协议全称是Message Queuing Telemetry Transport,翻译过来就是消息队列遥测传输协议,它是物联网常用的应用层协议,运行在TCP/IP中的应用层中,依赖TCP协议,因此它具有非常高的可靠性,同时它是基于TCP协议的 <客户端-服务器> 模型发布/订阅主题消息的轻量级协议,也是我们常说的发送与接收数据。
2. MQTT通信模型
MQTT 协议提供一对多的消息发布,可以降低应用程序的耦合性,用户只需要编写极少量的应用代码就能完成一对多的消息发布与订阅,该协议是基于<客户端-服务器>模型,在协议中主要有三种身份:发布者(Publisher)、服务器(Broker)以及订阅者(Subscriber)。其中,MQTT消息的发布者和订阅者都是客户端,服务器只是作为一个中转的存在,将发布者发布的消息进行转发给所有订阅该主题的订阅者;发布者可以发布在其权限之内的所有主题,并且消息发布者可以同时是订阅者,实现了生产者与消费者的脱耦,发布的消息可以同时被多个订阅者订阅。

3. MQTT 服务器
我们在使用MQTT协议时可以使用别人搭建好的服务器,也可以自己搭建服务器。
MQTT 常见服务器(Broker)分三大类:
一、开源/本地部署
Eclipse Mosquitto:最轻量、树莓派可跑,支持 MQTT 3.1.1/5.0。
EMQX:国产开源,分布式集群,百万级并发,支持 MQTT 5.0。
HiveMQ CE:企业版功能强,社区版免费。
VerneMQ:高并发、插件化,支持 MQTT 5.0。
NanoMQ:EMQ 推出的边缘版,超低功耗,适合网关。
二、公有云托管服务
AWS IoT Core
阿里云 IoT / 物联网平台
中国移动 OneNet
华为云 IoTDA
腾讯云 IoT Hub
天翼云 CTWing
Google Cloud IoT Core
IBM Watson IoT Platform
三、商业私有化方案
HiveMQ Enterprise、EMQX Enterprise、RabbitMQ-MQTT 插件等,可内网部署,带 Web 管理、监控、鉴权、集群功能。
在这里我使用 Mosquitto 在本地快速搭建服务器。
首先下载 mosquitto,然后修改配置文件 mosquitto.conf ,添加:
更多推荐
所有评论(0)