打印

(已解决)帮分析一下这个232串口通讯数据格式,晕了。。。

[复制链接]
4194|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ocon|  楼主 | 2009-8-20 05:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 ocon 于 2009-8-21 00:42 编辑

这是个老设备上的RS232串口,**到下列数据,不清楚的是它末尾的校验字节的生成方法:
0FFC10000C0
1FFC10100C1
2FFC10200C2
3FFC10300C3
4FFC10400C4
9FFC10900C9
10FFC10A00D1
11FFC10B00D2
255FFC1FF00EC
256FFC10001C1

1234FFC1D204DA

前面是要传送的16位数据,空格后面是实际**到的数据,每帧数据用0x2做头,接着是指令FFC1和数据的低8位和高8位,再接上校验字节,0x3做结束标志,这里显示不出0x2和0x3,其他都是ASCII码。

哪位出手帮分析一下它的校验字是按什么规则生成的,我试过用XOR,结果跟听到的数据对不上号。

相关帖子

沙发
mohanwei| | 2009-8-20 08:54 | 只看该作者
我以前发贴说过的请两个人一个5K一天另一个4k一天,干的就是类似这样的活了

这个要么对行业背景了解(正规的肯定要采用xx国标规约),要么把几乎所有数据帧抓出来,有一个模拟器会更快。

从0-9可以看到就是简单的转换为十六进制后的8位累加和。例如0:
0xff,0xc1,0x00,0x00累加等于0xc0
但是后面的又不符合了

使用特权

评论回复
板凳
一只小蜗牛| | 2009-8-20 16:45 | 只看该作者
很难逆推出那个编码的多项表达式,难啊。。。

使用特权

评论回复
地板
clizhi| | 2009-8-20 17:12 | 只看该作者
不知道具体是什么设备,如果有PC端软件就可以反汇编去找,没有的话就多找些示例找规律,一般都不会很复杂的

使用特权

评论回复
5
ocon|  楼主 | 2009-8-20 18:19 | 只看该作者
问题已解决,就是累加和,不过是用ASCII码表示的,昨晚太累了脑子短路想不出来。

使用特权

评论回复
6
ocon|  楼主 | 2009-8-20 18:54 | 只看该作者
忘了说:多谢2楼启发。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

143

主题

4921

帖子

14

粉丝