打印
[综合信息]

华芯MCU的CRC 校验功能

[复制链接]
464|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
1 概述 SWM341 系列所有型号 CRC 模块操作均相同,主要应用于核实数据传输或者数据存储的正确性和完整性,使用前需使能 CRC 模块时钟。
CRC 模块分为 CRC-32 和 CRC-16 两个算法。
使用 CRC-32 多项式进行计算时,输入数据有效位宽可选择为 32Bit、16Bit、8Bit,使用 CRC-16 多项式进行计算时,输入数据有效位宽可选择 16Bit、8Bit。
2 特性
⚫ 支持 CRC-32 码多项式
◼ 生成多项式:X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X+1
⚫ 支持 CRC-16 码多项式
◼ 生成多项式:X16+X12+X5+1
⚫ 多项式 x^8+x^2+x+1
⚫ 多项式 x^16+x^15+x^2+1
⚫ 支持输出结果设置,包括翻转、取反
⚫ 支持初始值自定义
⚫ 支持输入可选择取反

3模块结构框图
CRC 循环冗余检验结构框图如图所示:


4功能描述
计算步骤
⚫ 根据需求,通过 CR 寄存器选择 CRC 算法、输入数据有效位宽、输出结果
⚫ 根据需求,通过 INIVAL 寄存器设置 CRC 初始值
⚫ 通过 CR 寄存器使能 CRC 计算
⚫ 通过 DATAIN 寄存器向 CRC 计算单元输入要计算的数据
⚫ 通过 RESULT 寄存器读取计算结果

使用特权

评论回复

相关帖子

沙发
everyrobin| | 2023-5-7 10:44 | 只看该作者
待校验的数据以及CRC生成多项式输入怎么实现的

使用特权

评论回复
板凳
maudlu| | 2023-5-7 15:06 | 只看该作者
求用华芯MCU编写一段crc8校验码的程序

使用特权

评论回复
地板
sdCAD| | 2023-5-7 15:57 | 只看该作者
单片机CRC校验是通过将数据按照预先设定的生成多项式进行计算,得到一个校验码,并将该校验码添加到原始数据中进行传输。

使用特权

评论回复
5
belindagraham| | 2023-5-7 16:32 | 只看该作者
单片机通常内置了硬件CRC模块,实现起来非常简单。

使用特权

评论回复
6
backlugin| | 2023-5-7 17:29 | 只看该作者
CRC校验可以检测出多位比特的错误,并且被广泛应用于数字通信、存储系统和网络传输等领域。

使用特权

评论回复
7
qiufengsd| | 2023-5-7 18:04 | 只看该作者
crc算法在单片机上的实现              

使用特权

评论回复
8
dspmana| | 2023-5-7 18:21 | 只看该作者
单片机CRC校验是通过对数据进行循环冗余校验来验证其完整性和准确性的一种方式。

使用特权

评论回复
9
usysm| | 2023-5-7 18:36 | 只看该作者
在实际应用中,通常需要根据不同的数据类型和应用场景选择适当的生成多项式,并在数据传输前进行CRC校验,以保证数据的完整性和正确性。

使用特权

评论回复
10
jimmhu| | 2023-5-7 19:04 | 只看该作者
CRC校验的码表里的值从哪里得来的?

使用特权

评论回复
11
pentruman| | 2023-5-7 19:22 | 只看该作者
实现CRC校验码代码吗              

使用特权

评论回复
12
caigang13| | 2023-5-9 08:03 | 只看该作者
现在MCU都自带硬件校验

使用特权

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

本版积分规则

240

主题

1800

帖子

3

粉丝