Other Parts Discussed in Thread: CC1310, SYSBIOS
Hi. I have a problem. I crated empty console task while(1) {}; with priority 1 using Task_construct running at CC1310 chip. Anoter tasks has higher priority than it.
But sometimes the console task blocks another tasks with higher priority. What may cause this problem? Thanks.
Here my init code:
Task_Params taskParams;
consoleUartHandle = uartHandle;
consoleLedPinHandle = ledPinHandle;
#ifdef UARTCONSOLE_TXCALLBACK
Semaphore_Params semParams;
// Create Binary Semaphore
Semaphore_Params_init(&semParams);
semParams.mode = Semaphore_Mode_BINARY;
consoleUartTxSem = Semaphore_create(1, &semParams, NULL);
#endif
// Configure task
Task_Params_init(&taskParams);
taskParams.stack = uartConsoleTaskStack;
taskParams.stackSize = UARTCONSOLETASK_STACKSIZE;
taskParams.priority = UARTCONSOLETASK_PRIORITY;
Task_construct(&uartConsoleTask, uartConsoleFxn, &taskParams, NULL);
and task handler code:
Void uartConsoleFxn(UArg arg0, UArg arg1)
{
uint32_t lenTx;
consoleAUXinit();
uartOutputStr(BS_uartConsole_GreetingStr);
enteredRxBytes = 0;
uartConsoleShell_start();
// Start an (already constructed) clock.
Util_startClock(&consolePeriodicClock);
// Start initial read (first call), with dfined size
wantedRxBytes = 1;
/* Loop forever receiving commands */
while (1) {};
}