[原创] NUCLEO_G431RB测评-CRC计算

bigbat   2019-9-20 09:02 楼主

感谢EEWORLD和ST公司提供开发板,板子资料地址

由于我使用的是Keil 5.18a的开发工具,遇到一个问题:就是板子上的这个ST-LINK V3版本不能下载程序,只好使用ST-LINK工具下载Hex文件到板子上进行实验。但好歹可以进行实验了。于是点了一下LED和同时进行串口的实验,都很顺利。串口用的LPUART1,引脚是PA2/PA3。
芯片上有内置的CRC计算和RNG发生器,首先进行CRC计算的实验。发现计算速度真是很快!

如果想使用CRC计算加速器,需要初始化和参数设置。这个操作在STM32CUBE中是很方便的。

B1.jpg STM32CUBE默认的是32-bit的CRC,一般常用的是16-bit的。下面介绍一下设置项目:

Default Polynomial State                 是否使用定制的算法和校验式
CRC Length                                     CRC校验的长度,默认32-bit
CRC Generating Polynomial            指定'校验式'
Default Init Value State                  指定首字节,默认为'FF'              
Input Data Inversion Mode            输入数据的计算方向
Output Data Inversion Mode         输出数据的计算方向  
Input Data Format                        输入数据的位宽,默认为'字节'
设置好初始化参数后就可以使用HAL_CRC_Calculate(&hcrc, (uint32_t *)txData, sizeof(txData));函数了。函数的返回值就是CRC的计算结果了。

B2.jpg 通过串口调试助手显示CRC结果
此内容由EEWORLD论坛网友bigbat原创,如需转载或用于商业用途需征得作者同意并注明出处
 

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复