工具/软件:
您好:
我正在对器件实施 driverlib 5.04.00.00中的 SDL、并面临一些实现问题。
1.
STL_CPU_REG_checkCPURegisters ():执行 loopCPUReg2Test 汇编函数时程序崩溃。 (我仅使用 CPU1)。 目前、我已从汇编代码中取消了该函数的注释。 这是一个正确的解决方案、还是您建议使用更好的解决方案?
2.
STL_CPU_REG_checkVCRCRegisters ():我从您的示例中获取了一个代码片段- f28p65x_test_application_cpu1、您将从以下数组中计算 CRC。
float32_t faUser_crcData[STA_USER_CRC_DATA_SIZE] =
{0.00006104, 0.00164795, 0.00762939, 0.02093506,
0.04449463, 0.08123779, 0.13409424, 0.20599365,
0.29962158, 0.41204834, 0.53472900, 0.65887451,
0.77569580, 0.87640381, 0.95220947, 0.99432373};
该字符串存储在存储器中、包含以下字符串:
029A 3880 0007 3AD8 FFF6 3BF9 8001 3CAB 4000 3D36 6000 3DA6 5000
3E09 F000 3E52 6800 3E99 F800 3ED2 E400 3F08 AC00 3F28 9400 3F46
5C00 3F60 C400 3F73 8C00 3F7E
问题是 STL_CRC_checkCRC ()内 的 CRC 计算结果不会与我从在线 CRC 计算器(如 crccalc.com/)获得的任何结果发生冲突(实际上,无论我使用的是什么字符串,结果都是不同的)。 您能否说明如何处理特定字节、或者如何在其他计算器中将数据组织给机器? 
3.
STL_CAN_RAM_checkErrorStatus (Cana_base): 偶尔在应用第一个测试模式后返回 STL_CAN_RAM_ERROR。 问题可能是什么?
我按以下方式使用它
#define CANMSGRAM_END 0x4C7FFUL
...
uint16_t uiTestResult;
STL_CAN_RAM_testRAM(CANA_BASE, STL_MARCH_PATTERN_ONE, CANA_MSG_RAM_BASE, CANMSGRAM_END, STL_CAN_RAM_NO_COPY);
uiTestResult = STL_CAN_RAM_checkErrorStatus(CANA_BASE);
STL_CAN_RAM_testRAM(CANA_BASE, STL_MARCH_PATTERN_TWO, CANA_MSG_RAM_BASE, CANMSGRAM_END, STL_CAN_RAM_NO_COPY);
uiTestResult |= STL_CAN_RAM_checkErrorStatus(CANA_BASE);
STL_CAN_RAM_testRAM(CANA_BASE, STL_MARCH_PATTERN_THREE, CANA_MSG_RAM_BASE, CANMSGRAM_END, STL_CAN_RAM_NO_COPY);
uiTestResult |= STL_CAN_RAM_checkErrorStatus(CANA_BASE);
STL_CAN_RAM_testRAM(CANA_BASE, STL_MARCH_PATTERN_FOUR, CANA_MSG_RAM_BASE, CANMSGRAM_END, STL_CAN_RAM_NO_COPY);
uiTestResult |= STL_CAN_RAM_checkErrorStatus(CANA_BASE);
4.
STL_HWBIST_runFull (STL_HWBIST_NO_ERROR):调试时、代码在 stl_hwbist_s.asm 中的第388行崩溃、并调用错误消息"Can't Single Step Target Program"/ Cannot Run Target CPU" 


