JavaScript实现crc校验(少走弯路)

一、安装

$ npm i @ratriches/crc
or,
$ npm i https://github.com/ratriches/crc

文档地址:@ratriches/crc - npm

二、CRC预定义模型

CRC8 预定义模型

  • CRC8, CRC8_SAE_J1850, CRC8_SAE_J1850_ZERO, CRC8_8H2F, CRC8_CDMA2000, CRC8_DARC, CRC8_DVB_S2, CRC8_EBU, CRC8_ICODE, CRC8_ITU, CRC8_MAXIM, CRC8_ROHC, CRC8_WCDMA

CRC16 预定义模型

  • CRC16_CCIT_ZERO, CRC16_ARC, CRC16_AUG_CCITT, CRC16_BUYPASS, CRC16_CCITT_FALSE, CRC16_CDMA2000, CRC16_DDS_110, CRC16_DECT_R, CRC16_DECT_X, CRC16_DNP, CRC16_EN_13757, CRC16_GENIBUS, CRC16_MAXIM, CRC16_MCRF4XX, CRC16_RIELLO, CRC16_T10_DIF, CRC16_TELEDISK, CRC16_TMS37157, CRC16_USB, CRC16_A, CRC16_KERMIT, CRC16_MODBUS, CRC16_X_25, CRC16_XMODEM,

CRC32 预定义模型

  • CRC32, CRC32_BZIP2, CRC32_C, CRC32_D, CRC32_MPEG2, CRC32_POSIX, CRC32_Q, CRC32_JAMCRC, CRC32_XFER,

二、使用

const { Crc, modelFind } = require('@ratriches/crc');

// predefined model
const m = modelFind('CRC16_KERMIT');
const c1 = new Crc(m);
console.log('tests 1');
console.log('1234567890', c1.compute('1234567890')); // 286B

// user defined model
const c2 = new Crc(16, 0x8005, 0x0102, 0xf00f, false, true);
console.log('tests 2');
console.log('1234567890', c2.compute('1234567890')); // 3E6F
### 回答1: S32DS是一种开发工具,可以对微控制器进行编程和调试。在使用S32DS时,生成CRC校验可以用于检验数据传输或存储过程中的数据完整性,以防止数据被损坏或篡改。生成CRC校验的过程大致如下: 1. 选择“工程属性”菜单,打开“设备配置器”。 2. 在“设备配置器”中,选择CRC模块,并设置CRC模式和CRC多项式。 3. 在代码中调用CRC API函数,将需要计算CRC值的数据(如数据包、文件等)以字节形式送入CRC模块。 4. 程序会自动进行CRC计算,并返回CRC值。 生成的CRC值可以与接收方计算的CRC值进行比对,以确保数据传输的完整性和准确性。需要注意的是,CRC校验并不能保证数据的安全性,只能检验数据是否被篡改。在传输或存储敏感数据时,还需采取其他保护措施,如加密、防篡改等。 ### 回答2: S32DS是一种嵌入式系统开发工具,支持多种微处理器和微控制器。在S32DS中生成CRC校验码的方法是通过使用软件库中的CRC模块。首先需要引入CRC模块的头文件,并调用初始化函数以确定所需的CRC位宽、多项式和校验初始值。然后可以使用CRC_calc函数来计算给定数据的CRC校验码。 CRC(循环冗余校验)是一种广泛应用于通信和存储介质中的数据校验方式。通过使用CRC校验,可以检测数据是否因误码或干扰导致错误。生成CRC校验码的过程是将数据块经过一个固定的算法运算,生成一个唯一的校验码。在接收端,使用相同的算法进行计算,如果校验码一致,则说明数据没有被损坏。 S32DS工具可以方便地生成CRC校验码,对于嵌入式系统开发而言是非常实用的功能。在使用S32DS生成CRC校验码时,需要注意选择正确的CRC位宽和多项式,确保校验码的准确性。同时,还需保证所选用的CRC算法和接收端的算法保持一致,以确保数据的正确性。 ### 回答3: S32设计工具提供了支持循环冗余校验(CRC)的功能。CRC是一种用于数据校验的技术,通常在数据传输和存储过程中使用,用于检测数据是否发生了错误或损坏。 在S32设计工具中,生成CRC校验需要进行以下步骤: 1. 选择需要进行CRC校验的数据。这通常通过指定数据的起始和结束地址或通过选择一个数据段来实现。 2. 设置CRC配置选项。用户可以选择CRC算法、初始值、多项式、输入和输出反转等选项。 3. 生成CRC校验代码。S32设计工具将自动生成针对选定数据的CRC校验代码,可以将代码直接嵌入应用程序中。 使用S32设计工具生成CRC校验代码能够大大减少开发人员的工作量,并提供高质量、可靠的校验功能,可确保数据在传输和存储过程中的准确性和完整性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值