...
os.h/os_cpu_c.c and os_app_hooks.c
Prototype
Code Block |
---|
void OSIdleTaskHook (void) |
Arguments
None
Returned Value
...
This feature is very useful when there is a processor that can enter low-power mode. When µC/OS-III has no other task to run, the processor can be put to sleep waiting for an interrupt to wake it up.
Code Block | ||
---|---|---|
| ||
void App_OS_IdleTaskHook (void) /* See os_app_hooks.c */ { /* Your code goes here! */ /* Put the CPU in low power mode (optional) */ } void App_OS_SetAllHooks (void) /* os_app_hooks.c */ { CPU_SR_ALLOC(); CPU_CRITICAL_ENTER(); : OS_AppIdleTaskHookPtr = App_OS_IdleTaskHook; : CPU_CRITICAL_EXIT(); } void OSIdleTaskHook (void) /* See os_cpu_c.c */ { #if OS_CFG_APP_HOOKS_EN > 0u if (OS_AppIdleTaskHookPtr != (OS_APP_HOOK_VOID)0) { /* Call application hook */ (*OS_AppIdleTaskHookPtr)(); } #endif } |