Other Parts Discussed in Thread: IWRL1432
Hello, I have a problem with the Level_Sensing laboratory using awr6843, the maximum number of FFT points supported by the routine of the original Level_Sensing laboratory is 512 points, I expanded the L2 memory to support FFT of 2048 points, after adjusting as follows:
#define SOC_XWR16XX_DSS_L2_BUFF_SIZE 0x11000U
#define SOC_XWR16XX_DSS_L2_SCRATCH_SIZE 0x8000U
The configuration parameters I used are as follows:
dfeDataOutputMode 1
channelCfg 1 1 0
adcCfg 2 2
adcbufCfg 0 1 1 1
profileCfg 0 77 400 7 114.4 0 0 33.71 1 2048 25000 0 0 52
chirpCfg 0 0 0 0 0 0 0 1
frameCfg 0 0 255 0 1000 1 0
lowPower 0 0
guiMonitor 1 1 0 0 0 1
RangeLimitCfg 2 1 1.0 3.0
sensorStart
The following error message is returned in debug mode:
{module#8}: "../dss/dss_main.c", line 200: error {id:0x10000, args:[0x816ea4, 0x816ea4]}
xdc.runtime.Error.raise: terminating execution
[Cortex_R4_0] xdc.runtime.Main: "../mss/mss_main.c", line 990: assertion failure
xdc.runtime.Error.raise: terminating execution
The error message on line 200 of DSS points to the following code:
/* Check if previous chirp processing has completed*/
DebugP_assert(gMmwDssMCB.dataPathObj.interFrameProcToken == 0);
gMmwDssMCB.dataPathObj.interFrameProcToken++;
The error message on line 990of MSS points to the following code:
* BSS event:: CPU fault
if(event & MMWDEMO_BSS_CPUFAULT_EVT)
{
DebugP_assert(0);
break;
}
But the processing time I provided should be completely enough for the last chirp to complete the processing, what is the problem?
If I want to break the limit that numChirpsPerFrame can only be set to a maximum of 255, how should I do it?
By the way, the configuration parameters work normally when the FFT number is 1024 points.