你好,
当我将两个 SDK 示例“frdmimxrt1186_lwip_ipv4_ipv6_echo_freertos_cm33”和“frdmimxrt1186_flexspi_nor_polling_transfer_cm33”组合在一起时,执行函数“FLEXSPI_SoftwareReset(base);”后最终导致硬故障。我还注意到“基址”0x445E0000 发生了变化。我使用的是 FRDM-RT1186 EVA 套件。造成这种情况的原因可能是什么?
我使用的是 MCUXpressoIDE_25.6.136。
感谢您的反馈。
嗨,Pablo,
感谢您与我联系。
我使用的是 SDK 26.03.00 (928 2026-03 , 清单版本 3.15.0 )。
我以“frdmimxrt1186_lwip_ipv4_ipv6_echo_freertos_cm33”开始。
这种情况经常发生,没有特定条件。
我从示例“frdmimxrt1186_flexspi_nor_polling_transfer_cm33”中导入文件;
board/hardware_init_Flash.c
drivers/fsl_flexspi.c
drivers/fsl_flexspi.h
source/appFlash/flexspi_nor_flash_ops.c
source/appFlash/flexspi_nor_polling_transfer.c
board/app.h// 这包含 app.h
source/lwip_ipv4_ipv6_echo_freertos.c // 这包含两个函数调用:
int main(void)
{
BOARD_InitHardware();
BOARD_InitHardware_Flash();
main_Flash();
void BOARD_InitHardware_Flash(void)
{
BOARD_CommonSetting();
// BOARD_ConfigMPU(); // bord.c= identisch mit Lwip prj
// BOARD_InitBootPins(); // pin_mux.c""
BOARD_InitFLASHPins();
// BOARD_InitBootClocks(); // clock_config.c""
// BOARD_InitDebugConsole(); // board.c""
}
int main_Flash(void)
{
uint32_t i = 0;
status_t status;
uint8_t vendorID = 0;
// BOARD_InitHardware_Flash();
...
返回 1;
/*
当(1)
{
}
*/
}
我想就是这样了。
提前谢谢您。
格尔德
嗨@GerdMartin ,
请问您能否详细说明一下您是如何将这两个 SDK 示例结合起来的?
做了哪些改动?
你以哪个例子作为出发点?
您目前使用的是哪个SDK版本?
另外,您提到在执行 FLEXSPI_SoftwareReset(base) 后最终会发生硬故障。每次调用该函数时都会发生这种情况,还是只在特定条件下才会发生?
此致,
巴勃罗