【发布时间】:2015-08-03 07:14:36
【问题描述】:
我正在实现简单的协议,我需要从以下结构计算 CRC:
type (1 byte, unsigned)
address (1 byte, unsigned)
dataID (4 bytes, unsigned, little-endian)
data (4 bytes, unsigned, little-endian)
data (4 bytes, unsigned, little-endian)
data (4 bytes, unsigned, little-endian)
data (4 bytes, unsigned, little-endian)
data (4 bytes, unsigned, little-endian)
-----------------
= (26 bytes)
你可以把它想象成一个简单的 JavaScript 对象:
var message = {
type: 0x11,
address: 0x01,
dataID: 0xFFFFFFFF,
data: [
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF
]
}
我需要从这个对象计算 CRC。不幸的是,手册中只有CRC calculation includes Message type, Slave Address Data-ID's and data values. CRC calculation is performed over 26 bytes.,所以我不知道该怎么办。
CRC 是使用 CRC16-CCIT 函数计算的。所以我从 NPM 下载了crc package,它已经实现了这个功能。
如果你把代码发给我就好了,因为我不知道该怎么做(你可以使用未声明的crc 函数,它相当于this)。
【问题讨论】:
标签: javascript node.js crc