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.

CC1350: Impact of adding functions to Idle Task on wakeups

Part Number: CC1350

HI, I am using a function in the idle task of TI-RTOS to flush text from a buffer to the UART. This is from an example that showed how to use this to handle System_printf. Here are the relevant lines from the configuration file:

System.SupportProxy = SysCallback;
SysCallback.putchFxn = "&uartPrintf_putch";
...
Idle.addFunc('&uartPrintf_flush');

This works fine but I am worried that it might cause too many wakeups and would influence power consumption.

My application wakes up periodically (I use an interrupt from the sensor controller to wake it up), transmits and does other things, and goes back to sleep. It's okay and good for the flush function to be called once when the burst of activity ends, but I worry that the power manager might wake it up periodically to give it an opportunity to do something.

Are functions in the idle task invoked only when something else wakes up the processor, or periodically?

The configuration of the power manager is the default from the empty project:

const PowerCC26XX_Config PowerCC26XX_config = {
.policyInitFxn = NULL,
.policyFxn = &PowerCC26XX_standbyPolicy,
.calibrateFxn = &PowerCC26XX_calibrate,
.enablePolicy = true,
.calibrateRCOSC_LF = true,
.calibrateRCOSC_HF = true,
};

Thanks, Sivan Toledo

  • This should not be a problem. With the default standby policy, the device will enter standby as long as there are no other tasks running. Once you got an interrupt, you will wake up, do whatever you have set up your application to do, and then run the IDLE task. In the IDLE task you will do the uartPrintf_flush and then enter standby. You will not exit standby because of the flushing, so the next time uartPrintf_flush is performed will be the next time you wake up from interrupt or because another task wants to run.

    BR

    Siri

  • Thanks a lot. This makes sense.