#include "xl_crc.h"
|
#include "Hal_crc.h"
|
#include "xl_sim.h"
|
|
#define SELECT_16or32 1
|
|
extern void Hal_CrcInit(void)
|
{
|
SIM_SCGC_Cmd(SIM_SCGC_CRC, ENABLE);
|
#if (0 == SELECT_16or32)
|
CRC_InitTypeDef CRC_InitStructure;
|
CRC_InitStructure.CRC_DataOutInvert = CRC_DATAOUT_NoInvert; // no invert
|
CRC_InitStructure.CRC_DataWidth = CRC_Width16Bits;
|
CRC_InitStructure.CRC_PolyData = 0x8005;
|
CRC_InitStructure.CRC_Transpose16Only = CRC16_TRANSPOSE_IN16;
|
CRC_InitStructure.CRC_WriteTranspose = CRC_NoTranspose;
|
CRC_Init(&CRC_InitStructure);
|
#else
|
CRC_InitTypeDef CRC_InitStructure;
|
CRC_InitStructure.CRC_DataOutInvert = CRC_DATAOUT_Invert; // no invert
|
CRC_InitStructure.CRC_DataWidth = CRC_Width32Bits;
|
CRC_InitStructure.CRC_PolyData = 0x04c11db7;
|
CRC_InitStructure.CRC_Transpose16Only = CRC16_TRANSPOSE_IN32;
|
CRC_InitStructure.CRC_WriteTranspose = CRC_TransposeBoth;
|
CRC_Init(&CRC_InitStructure);
|
#endif
|
}
|