请问这个些数字代表的参数是多少呢?能帮我解析一下吗?
你好,
不好意思,没有注意到你看的是people counting例程。
这一块。需要你直接看代码了。两个地方,参考如下
MSS中的CLI.C
C:\ti\mmwave_industrial_toolbox_3_1_0\labs\lab0011-pplcount\lab0011_pplcount_pjt\radarDemo\chains\RadarReceiverPeopleCounting\mmw_PCDemo\mss\cli.c
static int32_t MmwDemo_CLICfarCfg (int32_t argc, char* argv[])
{
mmwDemoCfarConfig cfarCfg;
MmwDemo_message message;
/* Sanity Check: Minimum argument check */
if (argc != 13)
{
CLI_write ("Error: Invalid usage of the CLI command\n");
return -1;
}
/* Initialize the ADC Output configuration: */
memset ((void *)&cfarCfg, 0, sizeof(mmwDemoCfarConfig));
//System_printf("CFAR config\n");
//cliCfg.tableEntry[4].helpString = "<detMode> <discardLeft> <discardRight> <refWinSize1> <refWinSize2> <guardWinSize1> <guardWinSize2> <thre>";
/* Populate configuration: */
cfarCfg.cfarMethod = (uint16_t) atoi (argv[1]);
cfarCfg.cfarDiscardRangeLeft = (uint16_t) atoi (argv[2]);
cfarCfg.cfarDiscardRangeRight = (uint16_t) atoi (argv[3]);
cfarCfg.cfarDiscardAngleLeft = (uint16_t) atoi (argv[4]);
cfarCfg.cfarDiscardAngleRight = (uint16_t) atoi (argv[5]);
cfarCfg.refWinSize[0] = (uint16_t) atoi (argv[6]);
cfarCfg.refWinSize[1] = (uint16_t) atoi (argv[7]);
cfarCfg.guardWinSize[0] = (uint16_t) atoi (argv[8]);
cfarCfg.guardWinSize[1] = (uint16_t) atoi (argv[9]);
cfarCfg.rangeThre = (float) atoi (argv[10]) * 0.1f;
cfarCfg.azimuthThre = (float) atoi (argv[11]) * 0.1f;
cfarCfg.log2MagFlag = (uint16_t) atoi (argv[12]);
//System_printf("CFAR config:method = %d\n", cfarCfg.cfarMethod);
/* Save Configuration to use later */
memcpy((void *)&gMmwMssMCB.cfg.cfarCfg, (void *)&cfarCfg, sizeof(mmwDemoCfarConfig));
/* Send configuration to DSS */
memset((void *)&message, 0, sizeof(MmwDemo_message));
message.type = MMWDEMO_MSS2DSS_CFAR_CFG;
memcpy((void *)&message.body.cfar, (void *)&cfarCfg, sizeof(mmwDemoCfarConfig));
if (MmwDemo_mboxWrite(&message) == 0)
return 0;
else
return -1;
}
DSS中的DATAPATH.C
interframe processing 内的内容,你可以找到CFAR的处理。
谢谢