36 #if defined(CRC_COUNT) && (CRC_COUNT > 0)
81 void CRC_Init(CRC_Init_TypeDef
const *init)
84 EFM_ASSERT(init->bitsPerWord < 16U);
88 CRC->CTRL = (uint32_t)init->crcWidth
89 | (uint32_t)init->byteReverse
90 | (uint32_t)init->inputBitOrder
91 | (uint32_t)init->bitReverse
92 | ((uint32_t)init->bitsPerWord >> _CRC_CTRL_BITSPERWORD_SHIFT)
93 | ((uint32_t)init->inputPadding >> _CRC_CTRL_PADCRCINPUT_SHIFT)
94 | ((uint32_t)init->invInput >> _CRC_CTRL_INPUTINV_SHIFT)
95 | ((uint32_t)init->invOutput >> _CRC_CTRL_OUTPUTINV_SHIFT);
98 CRC->POLY = init->crcPoly;
102 CRC->INIT = init->initValue;
113 CRC->CTRL = _CRC_CTRL_RESETVALUE;
114 CRC->POLY = _CRC_POLY_RESETVALUE;
115 CRC->INIT = _CRC_INIT_RESETVALUE;
Emlib peripheral API "assert" implementation.
Cyclic Redundancy Check (CRC) API.