1 #ifndef __SWM320_CRC_H__ 2 #define __SWM320_CRC_H__ 3 4 5 #define CRC32_IN32 0 //CRC32算法,输入数据32位 6 #define CRC32_IN16 2 //CRC32算法,输入数据16位 7 #define CRC32_IN8 4 //CRC32算法,输入数据 8位 8 #define CRC16_IN16 3 //CRC16算法,输入数据16位 9 #define CRC16_IN8 5 //CRC16算法,输入数据 8位 10 11 12 void CRC_Init(CRC_TypeDef * CRCx, uint32_t mode, uint32_t out_not, uint32_t out_rev, uint32_t ini_val); 13 14 15 /****************************************************************************************************************************************** 16 * 函数名称: CRC_Write() 17 * 功能说明: CRC写入数据 18 * 输 入: uint32_t data 要写入的数据 19 * 输 出: 无 20 * 注意事项: 无 21 ******************************************************************************************************************************************/ CRC_Write(uint32_t data)22static __INLINE void CRC_Write(uint32_t data) 23 { 24 CRC->DATAIN = data; 25 } 26 27 /****************************************************************************************************************************************** 28 * 函数名称: CRC_Result() 29 * 功能说明: 获取CRC计算结果 30 * 输 入: 无 31 * 输 出: uint32_t CRC 计算结果 32 * 注意事项: 无 33 ******************************************************************************************************************************************/ CRC_Result(void)34static __INLINE uint32_t CRC_Result(void) 35 { 36 return CRC->RESULT; 37 } 38 39 #endif //__SWM320_CRC_H__ 40