STM32内置CRC模块的使用

[复制链接]
67944|86
txcy 发表于 2010-1-5 10:52 | 显示全部楼层
luowei2651 发表于 2010-2-26 11:20 | 显示全部楼层
好东西
PXJ_520 发表于 2010-6-21 16:39 | 显示全部楼层
txcy 发表于 2010-6-21 17:11 | 显示全部楼层
是可以结贴了
zuoyi001 发表于 2010-6-21 20:19 | 显示全部楼层
支持!好**!希望楼主继续更新!
Cjy_JDxy 发表于 2013-4-30 22:54 | 显示全部楼层
我也试过了,是一致的。
开发者_test 发表于 2013-5-1 08:27 | 显示全部楼层
MARK 一下,正要使用这个,有DES加密类的么?
xiaolubear 发表于 2013-6-8 16:06 | 显示全部楼层
xu_ 发表于 2013-8-3 11:57 | 显示全部楼层
有一点想不明白,
CRC32 计算结果是 32位
CRC8  计算结果是8位
为什么有人说,这两个结果是一样的呢?只是计算次数不同。
费解呀。
lyzbluesky 发表于 2013-10-9 16:42 | 显示全部楼层
楼主的代码与stm32的crc32结果一致。但是代码看了感觉还是有点迷糊,也可能是习惯不同吧,在楼主代码基础上修改如下,不知道是不是更好理解些,欢迎大家指正!

uint32_t CalCrc32(uint32_t *ptr, uint16_t len)
{
    uint16_t    bits;
    uint32_t    data;
    uint32_t    CRC ;
    uint32_t    标志寄存器;

    CRC = 0xFFFFFFFF;
    while (len--)
    {
        data = *ptr++;
        for (bits = 0; bits < 32; bits++)
        {
            标志寄存器 =  ((data ^ CRC) & 0x80000000);

            CRC <<= 1;
            if (标志寄存器 != 0)
            {
                CRC ^= dwPolynomial;
            }

            data <<= 1;
        }
    }

    return CRC;
}



另外还有个问题: 生成多项式与权值的对应关系是什么?如何根据多项式得出权值?
trumpxp 发表于 2013-10-9 16:46 | 显示全部楼层
很不错的学习帖子  楼主  谢谢你   这一块   总体感觉很不错  抽空要好好看看  谢谢了  楼主   顶一个   
trumpxp 发表于 2013-10-9 16:46 | 显示全部楼层
STM32 芯片   一直没有怎么用过  用的比较多的还是430单片机   以后有机会  想好好做一做   楼主   谢谢了
litin 发表于 2014-2-5 16:58 | 显示全部楼层
谢谢老师们的分享,学到很多!
香水橙 发表于 2014-2-7 10:06 | 显示全部楼层
哈哈,俺那个“城”兄弟真能较真儿!
1398117027 发表于 2014-8-30 18:50 | 显示全部楼层
听各位大侠过招
east森林 发表于 2014-8-30 19:53 | 显示全部楼层
值得好好学习
east森林 发表于 2014-8-30 19:53 | 显示全部楼层
east森林 发表于 2014-8-30 19:54 | 显示全部楼层
很实用
STM32初学者 发表于 2014-8-30 20:30 | 显示全部楼层
east森林 发表于 2014-8-30 20:41 | 显示全部楼层
内置模块的原理讲的很清楚
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部