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.

AWRL6432BOOST: Added a new task and it works abnormally!

Part Number: AWRL6432BOOST

Tool/software:

Added a new task and it works abnormally!

I referred to the sample code (radar_toolbox_2_00_00_06-Kick_to_Open) and modified Predefined Symbols => SOC_XWRL64XX.

Modify the following parts in mmw_cli.c

===========================

TaskHandle_t gDpcTask1;
StaticTask_t gDpcTaskObj1;
StackType_t gDpcTaskStack1[128] __attribute__((aligned(32)));

void mmwDemo_dpcTask1();

#define CLI_BYPASS 1

void mmwDemo_dpcTask1()
{
DebugP_log("mmwDemo_dpcTask1 ...\r\n");

while (true)
{
vTaskDelay(500 / portTICK_PERIOD_MS); // Block for 500ms.
}
}

int32_t CLI_MMWStart(void)

{

gDpcTask = xTaskCreateStatic(mmwDemo_dpcTask, /* Pointer to the function that implements the task. */
"dpc_task", /* Text name for the task. This is to facilitate debugging only. */
DPC_TASK_STACK_SIZE, /* Stack depth in units of StackType_t typically uint32_t on 32b CPUs */
NULL, /* We are not using the task parameter. */
DPC_TASK_PRI, /* task priority, 0 is lowest priority, configMAX_PRIORITIES-1 is highest */
gDpcTaskStack, /* pointer to stack base */
&gDpcTaskObj); /* pointer to statically allocated task object memory */
configASSERT(gDpcTask != NULL);


gTlvTask = xTaskCreateStatic(mmwDemo_TransmitProcessedOutputTask, /* Pointer to the function that implements the task. */
"tlv_task", /* Text name for the task. This is to facilitate debugging only. */
TLV_TASK_STACK_SIZE, /* Stack depth in units of StackType_t typically uint32_t on 32b CPUs */
NULL, /* We are not using the task parameter. */
TLV_TASK_PRI, /* task priority, 0 is lowest priority, configMAX_PRIORITIES-1 is highest */
gTlvTaskStack, /* pointer to stack base */
&gTlvTaskObj); /* pointer to statically allocated task object memory */
configASSERT(gTlvTask != NULL);

gDpcTask1 = xTaskCreateStatic(mmwDemo_dpcTask1, /* Pointer to the function that implements the task. */
"dpc_task1", /* Text name for the task. This is to facilitate debugging only. */
128, /* Stack depth in units of StackType_t typically uint32_t on 32b CPUs */
NULL, /* We are not using the task parameter. */
0, /* task priority, 0 is lowest priority, configMAX_PRIORITIES-1 is highest */
gDpcTaskStack1, /* pointer to stack base */
&gDpcTaskObj1); /* pointer to statically allocated task object memory */
configASSERT(gDpcTask1 != NULL);

}

=======================================================



mmwave has stopped? Adding a task should be a basic function! What's wrong?

  • Hey Johnny,

    Make sure to change all libraries to xwrL64xx instead of xwrL14xx by right clicking the project, selecting Show Build Settings -> Build -> Arm Linker -> File Search Path and changing the relevant library files. Check the Build -> Arm Compiler -> Include Options as well for any other device references that need to be changed. You may also need to increase the priority of the new task to a non-zero value. Additionally, I would recommend using the CCS debugger to check where the program could potentially be hanging up and letting us know what the call stack is if its crashing or stalling.

    Regards,

    Kristien