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.

[参考译文] RTOS/AWR1642:关于 MmwDemo_mssDataPathConfig 错误。

Guru**** 2611705 points
Other Parts Discussed in Thread: AWR1642

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/672017/rtos-awr1642-about-the-error-of-mmwdemo_mssdatapathconfig

器件型号:AWR1642

工具/软件:TI-RTOS

请参阅以下内容
e2e.ti.com/.../669254
e2e.ti.com/.../653296

如果我发送 cmd (StartCommandLine)、它将 对配置(预设)进行硬编码。

这 是首次成功。

但它 将第二次失败。

我看到错误来自 MmwDemo_mssDataPathConfig。

---cli_getMMWaveExtensionOpenConfig (.gMmwMssMCB.cfg.openCfg);
--cli_getMMWaveExtensionOpenConfig (&openCfg);

当它们不同时、将会出现错误。

如果我想使用 CLI。

如何 避免该错误?


此致、

Jui Yang

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    如果我理解正确、您是否正在尝试定义新的 CLI 命令?

    是这样吗?

    我建议您查看 Resource Explorer 中提供的驱动程序生命体征实验。 它包括一些添加到原始毫米波 SDK 演示(1.1版)中的 CLI 命令

    dev.ti.com/.../

    谢谢你
    Cesar
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    是的、我定义了一个新的 CLI 命令。
    新的 CLI 命令可以加载我在硬件中设置的雷达配置。
    第一次还可以。 AWR1642将使用该命令。
    但它在第二次失败。
    比较 openCfg 将在 MMS_main.c 中失败(行:1297;SDK:1.1.0.2)
    在 MSS_main.c (行:1311)中配置毫米波模块也会失败
    在下面、这是我的新 CLI 命令。
    ----------------------------------------------------
    #define MAX_RADAR 22.
    uint8_t* radarCmdString[MAX_RADAR _CMD]=

    {"sensorStop \n"}、
    {"flushCfg \n"}、
    {"dfeDataOutputMode 1 \n"}、
    {"通道配置15 3 0 \n"}、
    {"adcCfg 2 1 \n"}、
    {"adcbufCfg -1 0 1 0 \n"}、
    {"profileCfg 0 77 287 7 200 0 20 1 384 2000 0 30 \n"}、
    {"啁 啾 Cfg 0 0 0 0 0 0 0 0 1 \n"\}、
    {"啁 啾 Cfg 1 0 0 0 0 0 2 \n"}、
    {"frameCfg 0 1 16 0 150 1 0 \n"}、
    {"lowPower 0 \n\r\n"}、
    {"guiMonitor -1 1 1 0 1 \n"}、
    {"cfarCfg -1 0 8 4 0 5120 \n"}、
    {"cfarCfg -1 1 0 4 2 3 0 5120 \n"\}、
    {"peakGrouping -1 1 1 1 511 \n"}、
    {"multiObjBeamForming -1 0 0.5 \n"}、
    {"离合器拆卸-1 0 \n"}、
    {"calibDcRangeSig -1 0 -5 8 256 \n"}、
    {"extendedMaxVelocity -1 0 \n"}、
    {"compRangeBiasAndRxChanPhase 0.0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 \n"}、
    {"measureRangeBiasAndRxChanPhase 0 1.5 0.2 \n"}、
    {"sensorStart \n"}、
    };
    静态 int32_t MmwDemo_CLIByPassApi (int32_t argc、char* argv[])

    /*完整性检查:最小参数检查*/
    if (argc!= 2)

    cli_write ("Error: invalid usage of the CLI command\n");
    返回-1;

    /*初始化配置:*/
    CLI_Cfg* ptrCLICfg;
    ptrCLICfg =客户端配置(&C);

    char* tokenizedArgs[cli_MAX_args];
    char* ptrCLICommand;
    字符定界符[]="\r\n";
    uint32_t argIndex;
    cli_CmdTableEntry* ptrCLICommandEntry;
    int32_t clipStatus;
    uint32_t index、idx;
    uint16_t numCLI 命令= 0U;

    /*健全性检查:验证参数*/
    if (ptrCLICfg = NULL)
    返回-1;
    /*循环执行并确定支持的 CLI 命令的数量:*/
    对于(索引= 0;索引< CLI_MAX_CMD;索引++)

    /*我们是否有有效的条目? *
    if (ptrCLICfg->tableEntry[index].cmd =NULL)

    /*否:这是最后一个条目*/
    中断;

    其他

    /*是:增加 CLI 命令的数量*/
    numCLICommands = numCLICommands + 1;


    /*演示提示符:*/
    cli_write (ptrCLICfg->clipPrompt);
    /*执行所有雷达命令*/
    对于(idx = 0;idx < MAX_RADAR;idx++)

    /*重置所有标记化参数:*/
    memset ((void *)&tokenizedArgs、0、sizeof (tokenizedArgs));
    argIndex = 0;
    ptrCLICommand =(char*) radarCmdString[idx];
    /*设置 CLI 状态:*/
    客户端状态=-1;
    /*已输入命令,我们现在将命令消息标记为*/
    while (1)

    /*标记参数:*/
    tokenizedArgs[argIndex]= strtok (ptrCLICommand、定界符);
    if (tokenizedArgs[argIndex]=NULL)
    中断;
    /*递增参数索引:*/
    argIndex++;
    if (argIndex >= cli_MAX_args)
    中断;
    /*重置命令字符串*/
    ptrCLICommand =空;

    /*我们是否能够标记 CLI 命令? *
    如果(argIndex =0)
    继续;
    /*循环执行所有注册的 CLI 命令:*/
    对于(索引= 0;索引< numCLICommands;index++)

    ptrCLICommandEntry =&ptrCLICfg->tableEntry[index];
    /*我们是否有匹配? *
    if (strcmp (ptrCLICommandEntry->cmd、tokenizedArgs[0])=0)

    /*是:将其传递给 CLI 注册函数*/
    clientStatus = ptrCLICommandEntry->cmdHandlerFxn (argIndex、tokenizedArgs);
    if (clipStatus =0)

    cli_write ("done");

    其他

    cli_write ("Error %d\n"、clipStatus);

    中断;


    /*我们是否获得了匹配的 CLI 命令? *
    if (index == numCLICommands)

    /*未找到匹配命令。 是否启用了毫米波扩展? *
    if (ptrCLICfg->enableMMWaveExtension == 1U)

    /*是:将其传递给毫米波扩展处理程序*/
    clientStatus = cli_MMWaveExtensionHandler (argIndex、tokenizedArgs);


    /*是否找到 CLI 命令? *
    if (clipStatus ==-1)

    /*否:仍找不到命令*/
    cli_write ("'%s'未被识别为 CLI 命令\n"、tokenizedArgs[0]);



    System_printf ("调试:ByPassApi 成功\n");
    返回0;

    ----------------------------------------------------------------
    此致、

    Jui Yang
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您不会提到它是如何失败的。  如果由于存储器分配错误或毫米波错误而失败、则您尚未完全撤消第一个配置执行的操作。  如果由于配置错误而失败,则应在第一次和第二次尝试后比较 gMmwMssMCB 的内容。