一、前言
该篇介绍安信可BW16通过AT指令接入EMQ服务器,实现MQTT的订阅和发布。
二:准备材料
1.BW16模组/开发板
2.杜邦线
3.软件调试助手
三、操作步骤
下载EMQX软件
软件获取链接:https://www.emqx.cn/downloads#broker,这里以windows版本为例
将下载好的EMQX软件压缩包解压到自定义路径中,如本机路径为:D:\EMQX\emqx,打开Windows PowerShell,指定到EMQX软件的路径,输入“./bin/emqx start”命令,若无报错,即服务器开启成功
打开浏览器,输入“本地IP:18083”,如本机的IP地址为192.168.2.158,或者输入“localhost:18083”域名,点击enter访问,输入账号“admin”,密码“public”,点击login。
进入Dashboard界面,点击Tools,选择Websocket,点击“Connect”;
四:烧录和串口通信硬件连接
BW-16 | USB转TTL |
---|---|
VCC | 3.3V |
GND | GND |
烧录串口接线(1) | |
LO_RX | TX |
LO_TX | RX |
通信串口接线(2) | |
PB1/AT_TX | TX |
PB2/AT_RX | RX |
应用电路如图:
烧录:USB转TTL的RXD和TXD分别接BW16的TX_LOG和RX_LOG的,且需短接TX_LOG跟GND上电进入下载模式,还原后使用烧录软件擦除且烧录。
通信:USB转TTL的RXD和TXD分别接BW16的AT_TX和AT_RX的,上电后即可通信。
五:AT指令测试
AT+WMODE=STA //设置STA模式
OK
AT+WSSSID=temp //设置连接路由的SSID
OK
AT+WSKEY=123456789 //设置连接路由的SSID
OK
AT+SOCKA=MQTT,CLIENT,1883,111.230.203.185 //连接MQTT服务器
OK
AT+MQTTLOGIN=admin,publish //设置MQTT服务用户名和密码
OK
AT+MQTTID=6666 //设置MQTT ID
OK
AT+MQTTCFG=0,0,BW16_STATUS,BW16_DISCONNECT,0,0 //配置MQTT参数
OK
AT+RST //重启生效
OK
WIFI CONNECT
MQTT CONNECTED
AT+MQTTSUB=pubtopic,1,0 //订阅
OK
+MQTTDATA:pubtopic{ "msg": "Hello, World!" },{ "msg": "Hello, World!" }
AT+MQTTPUB=subtopic,1,0 //发布
OK
+MQTTDATA:subtopic,0msg": "Hello, World!" }
AT+MQTTPUB=subtopic,1,hello
OK
+MQTTDATA:subtopic,hello: "Hello, World!" }
六:MQTT实现发布&订阅消息
进入Dashboard界面,点击Tools,选择Websocket,点击“Connect”;
MQTT连接成功之后,在Subscribe对话框中,Topic内容填写“subtopic”,Qos选择0,点击Subscribe;在Message对话框中,Topic内容填写“pubtopic”,Message内容填写“{ “msg”: “Hello, World!” }”,Qos选择0