紧急!!希望原子哥能帮忙解决:XCOM 进行IAP协议传输的时候,如果串口线有五六米时,XCOM解析出问题,会导致一直重发

2019-07-20 08:25发布

本帖最后由 wuboaini23 于 2018-4-27 09:50 编辑

下位机输出的调试信息 下位机输出的调试信息 XCOM串口数据 XCOM串口数据 紧急希望原子哥能查查。通过XCOM2.0 进行IAP 串口烧录时,如果串口线如果很长 ,自己的串口线大概有五六米的时候。就会出现XCOM在发到帧26时,固定会出现问题,总是报,帧格式错误。所以总是会引起重发,会重发很多次,还经常重发20次都解析不成功。调试时下位机其实已经准确接收到了26帧,也回发了26帧的协议数据,但是XCOM总是报 帧格式错误。所以一直重发。但是经常重发几次后就会成功,其实数据都是一样的。
说明:before SequenceValue 的值为static类型 为保存上次成功解析的协议的序列

error 6 SequenceValue 为全局的解析成功的 协议的序列号
error 6 SequenceTemp 为本次收到的帧的 序列号

normal 6 SequenceTemp 为本次解析成功的协议的序列号
normal 6 SequenceValue 为保存本次解析成功的协议的序列号


checknum 为回传数据的校验值
1 1 26 1 0 227 为回复上位机也就是PC xcom的协议
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
HXYDJ
1楼-- · 2019-07-20 13:51
 精彩回答 2  元偷偷看……
小温
2楼-- · 2019-07-20 17:10
 精彩回答 2  元偷偷看……
正点原子
3楼-- · 2019-07-20 17:53
这不是XCOM问题哦
wuboaini23
4楼-- · 2019-07-20 23:45
HXYDJ 发表于 2018-4-27 10:18
串口线长了就要把波特率降低。串口是根据电压高低来判断0和1的,串口线太长,压降太大,传输数据很容易出错 ...

波特率降下来,确实出错率低很多。但是有个疑问就是为啥每次都第26帧数据就会出问题,还有PC发给下位机不出问题PC发的下位机都能解析成功,但是下位机回PC就会出问题。
wuboaini23
5楼-- · 2019-07-21 03:58
 精彩回答 2  元偷偷看……
HXYDJ
6楼-- · 2019-07-21 04:19
 精彩回答 2  元偷偷看……

一周热门 更多>