请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:IWR6843AOPEVM 大家好、
毫米波雷达根据 out_of_box 工程配置、调用 MMWave_init 函数时、直接退出、并显示以下错误( 发生错误时直接退出、根本不打印 system_printf):
xdc.runtime.Error.raise:正在终止执行
uint8_t i=0;
int32_t errCode;
MMWave_ErrorLevel errorLevel;
int16_t mmWaveErrorCode;
int16_t subsysErrorCode;
MMWave_InitCfg initCfg;
MMWave_OpenCfg openCfg;
MMWave_CtrlCfg ctrlCfg;
Task_Params taskParams; //任务参数
memset ((void*)&initCfg, 0 , sizeof(MMWave_InitCfg));
memset ((void*)&initCfg, 0 , sizeof(MMWave_OpenCfg));
memset ((void*)&ctrlCfg, 0 , sizeof(MMWave_CtrlCfg));
initCfg.domain = MMWave_Domain_MSS;
initCfg.socHandle = MMWave_Global_Params.handle.socHandle;
initCfg.eventFxn = MMWave_eventFxnCallback; //事件回调
initCfg.linkCRCCfg.useCRCDriver = 1U; //1开启CRC 0关闭CRC
initCfg.linkCRCCfg.crcChannel = CRC_Channel_CH1; //CRC通道1
initCfg.cfgMode = MMWave_ConfigurationMode_FULL; //全部模式 也可以设置成最小全部模式
initCfg.executionMode = MMWave_ExecutionMode_ISOLATION; //MSS和DSS不通讯 如果需要 则换个模式
//以下全是回调
/*
initCfg.cooperativeModeCfg.cfgFxn = MMWave_cfgFxnCallback;
initCfg.cooperativeModeCfg.closeFxn = MMWave_closeFxnCallback;
initCfg.cooperativeModeCfg.openFxn = MMWave_openFxnCallback;
initCfg.cooperativeModeCfg.startFxn = MMWave_startFxnCallback;
initCfg.cooperativeModeCfg.stopFxn = MMWave_stopFxnCallback;
*/
/* Initialize and setup the MMWave Control module */
MMWave_Global_Params.handle.MMWave_handle = MMWave_init (&initCfg, &errCode);
if (MMWave_Global_Params.handle.MMWave_handle == NULL)
{
/* Error: Unable to initialize the MMWave control module */
MMWave_decodeError (errCode, &errorLevel, &mmWaveErrorCode, &subsysErrorCode);
System_printf ("Error: MMWave Control Initialization failed [Error Level: %d Error code: %d Subsystem: %d]\n",errorLevel,mmWaveErrorCode, subsysErrorCode);
return;
}
System_printf ("Debug: MMWave Control Initialization was successful\n");

如果使用 memset 直接清除该结构、则其将输出"错误级别:2错误代码:-3101子系统:0"、但是如果该结构不为0、调试此步骤将直接报告错误。
正在使用的调试器为 XDS110、串行端口初始化、SOC 初始化等、所有这些都正常、没有错误。
您能帮助检查这个问题吗? 谢谢。
此致、
切里