欢迎光临散文网 会员登陆 & 注册

GE IS215UCVEH2AE VMIVME-017614-132 350-017614-132D RTU设备首先传输

2023-04-17 09:52 作者:文武双全何15859219118  | 我要投稿

GE IS215UCVEH2AE 用于计算CRC-16的伪代码如下所示。

要发送的数据的预设字节数。

GE IS215UCVEH2AE 将16位余数(CRC)寄存器初始化为全1。

将第一个8位数据字节与16位CRC寄存器的高位字节进行异或。这个

结果是当前的CRC。

INIT SHIFT:将移位计数器初始化为0。

SHIFT:将当前CRC寄存器向右移动1位。

增加班次计数。

向右移位的位(标志)是1还是0?

如果是1,则将生成多项式与当前CRC进行异或。

如果是0,请继续。

移位计数器等于8吗?

如果否,返回SHIFT。

如果是,则增加字节计数。

字节计数是否大于数据长度?

如果否,将下一个8位数据字节与当前CRC进行异或,然后转到INIT SHIFT。

如果是,将当前CRC添加到数据消息的末尾,以便传输和退出。

当发送消息时,接收器对所有数据位执行相同的CRC操作

以及发送的CRC。如果信息接收正确,则得到的余数(接收器

CRC)为0。

CRC-16计算示例

GE IS215UCVEH2AE RTU设备首先传输(寄存器或离散数据的)最右边的字节。的第一位

发送的CRC-16是最高有效位。因此,在该示例中,CRC多项式的MSB为

极右翼。X16项被丢弃,因为它只影响商(被丢弃),并且

而不是剩余部分(CRC字符)。因此生成多项式为1010 0000 0000

0001.余数被初始化为所有的1。

查询:

▪ 不允许0的地址,因为这不能是广播请求。

▪ 功能代码为01。

▪ 起始点号长度为两个字节,可以是小于最高值的任何值

连接的CPU中可用的输出点数。起点编号等于1

小于在对此请求的正常响应中返回的第一个输出点的数量。

▪ 点数值的长度为两个字节。它指定输出点数

在正常响应中返回。起点值与点数之和

值必须小于或等于附件中可用的最高输出点号

CPU。起点编号和点数字段的高位字节作为

第一个字节。低位字节是每个字段中的第二个字节。

回应:

▪ 字节计数是从1到256(0=256)的二进制数。它是正常情况下的字节数

在字节计数之后和错误检查之前的响应。

▪ 正常响应的数据字段是打包的输出状态数据。每个字节包含八个

输出点值。第一个字节的最低有效位(LSB)包含输出的值

其数量等于起点数量加一的点。输出的值

点按数字排序,从数据字段第一个字节的LSB开始,到结束

具有数据字段的最后一个字节的最高有效位(MSB)。如果点数不是

8的倍数,最后一个数据字节在其最高阶比特的一到七个中包含零。


GE IS215UCVEH2AE VMIVME-017614-132 350-017614-132D RTU设备首先传输的评论 (共 条)

分享到微博请遵守国家法律