CH32F208以太网&蓝牙转CAN总线/RS485控制板 - 设备连接MQTT服务器

发布时间 2024-01-02 10:22:47作者: 广源时代

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/product/CH32F208_DTU/index.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

 

说明

这节测试一下使用控制板连接MQTT服务器进行通信测试.

 

1,打开这节的程序

修改为自己的MQTT服务器信息;

下面测试地址是这边远程服务器的, 设备测试的时候需要连接一个可以上网的路由器或者交换机; 

用户如果把MQTT软件安装到了自己的电脑上,测试时把下面的地址修改为本地电脑的IP地址;然后保证和本地电脑在一个局域网内就可以;

 

 

2,编译程序并下载到控制板

控制板日志将会打印连接MQTT服务器成功和订阅主题成功

提示: 控制板订阅的主题为  user/MAC地址

控制板发布的主题为  device/MAC地址

 

 

3,使用MQTT调试助手也连接MQTT服务器

根据自己的MQTT服务器填写,然后点击连接

 

4,MQTT调试助手上订阅和发布的主题, 根据控制板打印的日志进行修改, 然后点击订阅

 

5,使用MQTT调试助手发送消息

 

 

6.设备串口日志上将会打印

 

 程序上设置了接收到什么就返回什么

 

 

程序说明

1,MQTT服务器本身就是TCP服务器,所以连接TCP服务器

 

 

 

2,注册MQTT回调函数

  

3,连接TCP成功以后发送MQTT连接协议

 

 

 

4,处理MQTT服务器返回连接数据

 

 

5,在MQTT连接回调函数里面组合订阅主题,并执行订阅主题,  还有组合发布的主题

提示:只要是成功连接了MQTT服务器,可以在任意地方执行订阅主题函数,多个主题可以多次调用订阅函数

 

6,接收和发送MQTT消息

  

8,执行上面的订阅主题函数和发送数据函数实际上只是把MQTT格式的数据存储到了数据队列里面

实际发送数据是下面的函数

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 .