请问下
(SL_CRC_Calculate(((uint64 *)(uint32*)0xFFF82000), 48) == crcAtInit_VIMRAM)
这个CRC 算什么的
他能识别出什么错误
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
该功能的源代码如下所示。它使用MCU上的CRC模块来计算CRC。输入数据必须为64位。
uint64 SL_CRC_Calculate (uint64 * startAddr, uint32 count64) { uint32 count = 0u; CRC_CTRL0 |= 0x00000001U; /* Reset the CRC Module */ CRC_CTRL0 &= 0xFFFFFFFEU; CRC_CTRL2 |= 0x00000003U; /* Configure to Full CPU Mode */ for (count=0u; count < count64; count++) { /*SAFETYMCUSW 45 D MR:21.1 <APPROVED> Comment_2*/ CRC_SIGREG = *startAddr; /*SAFETYMCUSW 45 D MR:21.1 <APPROVED> Comment_2*/ startAddr++; } return(CRC_SIGREG); }
该函数是SafeTI Hercules Diagnostic Library内的,具体您可以在安装路径下的
SafeTI™ Diagnostic Library Software Safety Manual for Hercules™ Processors User's Guide
文档内搜索SL_CRC_Calculate