文章首发于同名微信公众号:DigCore
欢迎关注同名微信公众号:DigCore,及时获取最新技术博文。
原文链接:https://mp.weixin.qq.com/s/FCBF6EACwkA1uv5UWNrlnA
(说明:此处的文章从微信公众号拷贝而来,图片或者排版上可能存在一定的瑕疵,欢迎点击原文链接阅读)
- 基本介绍
在上篇文章《快速开发MQTT(一)电子工程师眼中的MQTT》中,对比了串口连接和TCP连接,我们知道实现了连接和数据收发之后,接下来就是要考虑数据的封装、组包的事了。
比如UART传输过程中,数据被从A设备发送到B设备时,一般的都做这样的协议简单封装数据:“包头0xAA+两字节包长度LEN+1字节的LRC+数据内容”,此时B设备收到数据包就进行解析。

这一过程就是应用层面的协议。
类似的,MQTT也有报文格式,应用程序将数据填入报文包中,后通过TCP进行发送。
为了查看其报文格式,可以利用MQTT客户端工具MQTT.fx,尝试向TCP服务器发起一个连接请求。
TCP服务器继续使用上篇文章《快速开发MQTT(一)电子工程师眼中的MQTT》中提到的SSCOM工具进行模拟。
