前言

此前使用JCcom串口助手来进行调试,但是发现其接受解析功能在多通道情况下,有时不能正常解析,故对其进行了初步的研究排查,并找到了正确的配置方法。

问题描述

在使用JCom进行如下图的接受格式配置时,添加了帧头、帧尾,并在中间添加帧ID用于区别不同消息。

其中帧头设定为0x55,帧ID设置为0x01,后续有两个两字节的数据,最后时帧尾0xAA。使用单片机单独发送符合该格式的消息时,JCom可以正常解析。

在这里插入图片描述

将这样的接收解析配置多复制一个,设定为不同的帧ID,但是在其中多添加一个两字节的数据,此时若连续发送分别符合两个解析格式的数据,此时将只有一个协议在正常解析。

在这里插入图片描述

问题解决

后续发现JCom对于数据的解析,可能会要求相同帧头的消息有相同的长度,若长度不等,则不会进行识别处理。

此处可以将ch2的数据由3个两字节数据改为2个两字节数据,或将ch1的配置多添加一个两字节数据,并在程序发送时发送一个空的两字节数据,即可实现多个通道的正常解析。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐