升级APP
升级Bootloader
CRC32源码计算
注: CRC-32使用MPEG_2多项式:0x04C11DB7
uint32_t uiCRC32_MPEG2(uint32_t *puiInitCRC, uint8_t *pucDataBuff, uint32_t uiLength)
{
uint32_t uiPolynomial = 0x04C11DB7, uiInputCRC = 0xFFFFFFFF, i = 0;
uint8_t ucMask = 0;
if(puiInitCRC != NULL)
uiInputCRC = *puiInitCRC;
for(i = 0; i < uiLength; ++i)
{
uiInputCRC ^= (uint32_t)(*pucDataBuff++) << 24;
for(ucMask = 1; ucMask; ucMask <<= 1)
{
if(uiInputCRC & 0x80000000)
uiInputCRC = (uiInputCRC << 1) ^ uiPolynomial;
else
uiInputCRC <<= 1;
}
}
return uiInputCRC;
}