ESP-12F模组连接到MQTT消息服务器

电子说

1.2w人已加入

描述

1 硬件准备

ESP-12F 是由安信可科技开发的 Wi-Fi 模块, 该模块核心处理器 ESP8266 在较小尺寸封装中集成了业界领先的 Tensilica L106 超低功耗 32 位微型 MCU, 带有 16 位精简模式, 主频支持 80 MHz 和 160 MHz, 支持 RTOS, 集成 Wi-Fi MAC/ BB/RF/PA/LNA。

ESP-12F Wi-Fi 模块支持标准的 IEEE802.11 b/g/n 协议, 完整的 TCP/IP 协议栈。用户可以使用该模块为现有的设备添加联网功能, 也可以构建独立的网络控制器。ESP8266 是高性能无线 SoC, 以最低成本提供最大实用性, 为 Wi-Fi 功能嵌入其他系统提供无限可能,具体的一些模组参数与相关技术指标参考官方文档。

本次测试接线方式:5V(串口)——>Vin(ESP12F);GND(串口)——>GND(ESP12F);TXD(串口)——>RX0(ESP12F); RXD(串口)——>TX0(ESP12F)。

核心处理器

安信可ESP12F模组

2

固件烧写

本次使用安信可提供的MQTT-AT固件,固件版本为1112(固件名称:ESP8266-AT-4M.bin),在安信可官方找到固件烧录工具(flash_download_tool_3.9.2_0)。

核心处理器

ESP系列芯片烧录工具

这里打开烧录软件,在这里可以选择ESP8266、ESP32、ESP32-C3等系列芯片烧录,在workMode选项卡中可以选择烧录模式为开发模式与工厂模式,开发模式烧录为单片烧录,工厂模式烧录为批量烧录。

核心处理器

烧录工具选型配置界面

在选型配置里,chipType配置为ESP8266,workMode配置为开发模式,loadMode配置为uart,选型配置结束后,就进入烧写配置界面。在这个页面,首先要选择需要烧录的固件,SPI SPEED配置为40MHz,SPI MODE配置为DIO,串口我这里为COM14,BAUD配置为115200,然后点击“START”。然后等待烧录结束。

核心处理器

烧录工具烧录配置

3

配置MQTT服务

这里的配置过程可以参考安信可官方文档(https://docs.espressif.com/projects/esp-at/zh_CN/release-v2.2.0.0_esp8266/AT_Command_Set/MQTT_AT_Commands.html),我们打开安信可提供的串口助手工具进行配置。连接好硬件电路,选择对应串口,波特率设置为115200,发送“AT+RST”复位模组,此时,在返回的数据中可以看到ESP12F模组的一些基本信息,包括名称、固件信息、MAC地址等,发送“AT”,ESP12F模组返回OK,此时可以确定模组基本工作正常,可以进行下一步配置。

核心处理器

串口助手工具使用界面

ESP12F模组工作正常以后,接下来就是配置MQTT服务的相关参数,在配置ESP12F模组之前还有一项工作需要做,那就是在EMQX Dashboard中给本次使用到的ESP12F模组分配认证信息。我们进入到 EMQX Dashboard配置界面,可以看到当前的一些连接信息。

核心处理器

EMQX Dashboard界面

接下来,在访问控制中找到“认证”,在已创建的认证方式里添加用户。

核心处理器

EMQX Dashboard认证界面

这里将用户名设置为ESP12FTest01,密码设置为public,这里自行配置。

核心处理器

EMQX Dashboard添加用户

用户添加完成以后,可以在认证界面找到我们配置好的用户。

核心处理器

EMQX Dashboard完成添加用户

接下来开始配置ESP12F模组,具体配置参数如下所示:

AT+CWMODE=1            #设置模组进入STA模式;
AT+CWJAP="你的wifi名称","密码"      #连接wifi;
AT+MQTTUSERCFG=0,1,"ESP12FTest01","ESP12FTest01","public",0,0," "AT+MQTTCONN=0,"***.***.***.***"(你的云服务器IP),1883,1

串口助手工具配置完成

配置完成以后,我们在EMQX Dashboard,可以看到ESP12F模组已经上线了。

核心处理器

核心处理器

EMQX Dashboard ESP12F模组上线

4

订阅与发布测试

在前面的工作中,我们已经完成了ESP12F模组的硬件连接、ESP12F模组固件烧写、EMQX Dashboard用户认证、ESP12F模组MQTT服务参数配置,接下来就是测试ESP12F模组模组与MQTT消息服务器通讯是否正常。

这里我们使用EMQX Dashboard 自带的WebSocket客户端与ESP12F模组进行测试,具体配置如下:

WebSocket 客户端订阅主题:ESP12F/PUB
WebSocket 客户端发布主题:WebSocket/PUB
ESP12F模组订阅主题:WebSocket/PUB
ESP12F模组发布主题:ESP12F/PUB

核心处理器

WebSocket订阅与发布测试

我们通过串口助手配置订阅主题与发布主题。

AT+MQTTSUB=0,”WebSocket/PUB”,0    //订阅主题
AT+MQTTPUB=0,”ESP12F/PUB”,”\\”{\\”timestamp\\”:\\”20221228\\”}\\””,0,0 //发布主题

核心处理器

WebSocket订阅与发布测试

通过测试可以看到,ESP12F模组与WebSocket 客户端通讯正常,测试完毕。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分