mpegcrc32.c

来自「DVB软件,基于CT216软件的开发源程序.」· C语言 代码 · 共 55 行

C
55
字号

#include "mpegcrc32.h"

static u32 u32MPEGCRC;

/************************************************************************************************/

void CRC_MPEG32_Start(void)
{
	
	u32MPEGCRC = 0xFFFFFFFF;
	
}

/************************************************************************************************/

void CRC_MPEG32_AddData(u8 *pData, u32 u32Len)
{
	
   while (u32Len--)
   {
      u32MPEGCRC = au32Table_MPEG32[((u32MPEGCRC >> 24) ^ (*pData++)) & 0xFF] ^ (u32MPEGCRC << 8);
   }
   
}

/************************************************************************************************/

u32 CRC_MPEG32_GetCRC(void)
{
	
	return (u32MPEGCRC);
	
}

/************************************************************************************************/

u32 CRC_MPEG32(u8 *pData, u32 u32Len)
{
	
   u32 crc;

   crc = 0xFFFFFFFF;

   while (u32Len--)
   {
      crc = au32Table_MPEG32[((crc >> 24) ^ (*pData++)) & 0xFF] ^ (crc << 8);
   }
   
   return (crc);
   
}

/************************************************************************************************/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?