你好
我正在使用 TI MSP432开发与核安全相关的嵌入式应用。
我尝试使用此功能为闪存中的数据区域创建一个 CRC、然后在应用程序启动期间能够 验证此相同数据区域的目标应用计算出的 CRC 是否与链接器生成的 CRC 匹配。
我在链接器中尝试了几种不同的设置、如下所示、
.const : >0x00080200、crc_table (crc_table_for_const、algorithm= CRC32_PRIME)
.TI.crctab :>闪存
在加载到目标的应用程序中、我将为 CRC 使用 TI 运行时 API、如下所示。
PS… 我尝试过许多设置…。
// params.byteSwapInput = CRC_BYTESWAP_BYTESWAP_AND_HALF_WORD; //不起作用
// params.byteSwapInput = CRC_BYTESWAP_Changed; //不显示
// params.byteSwapInput = CRC_BYTESWAP_HALF_WORD; //不起作用
params.byteSwapInput = CRC_BYTESWAP_BYTESWAP_BYTES_IN_HALF_WORD; //不起作用
params.rectBehavior = crc_return_Behavie_blocking;
params.polynomial = crc_polynomial_crc_32_IEEE;
params.dataSize = crc_data_size_32bit;
params.seed = 0xFFFFFFFF;
status = crc_calculateFull (handle、src、srcSize、&result);
无论使用何种设置、都无法提供由链接器计算出的相同 CRC。
为了方便测试、已将数据区域设置为仅12字节数据。
如果能够在这里指明正确的方向、也许我需要有关链接器使用的计算的详细信息、我将不胜感激?
提前感谢您。