Public QK-nano interface. More...
Go to the source code of this file.
Data Structures | |
struct | QK_PrivAttr |
Macros | |
#define | QK_SCHEDULE_() |
Typedefs | |
typedef uint_fast16_t | QSchedStatus |
Functions | |
uint_fast8_t | QK_sched_ (void) |
void | QK_activate_ (void) |
void | QK_onContextSw (uint_fast8_t prev, uint_fast8_t next) |
void | QK_onIdle (void) |
QSchedStatus | QK_schedLock (uint_fast8_t ceiling) |
void | QK_schedUnlock (QSchedStatus stat) |
Variables | |
QK_PrivAttr | QK_attr_ |
struct QK_PrivAttr |
#define QK_SCHEDULE_ | ( | ) |
typedef uint_fast16_t QSchedStatus |
uint_fast8_t QK_sched_ | ( | void | ) |
QK-nano scheduler finds the highest-priority thread ready to run
void QK_activate_ | ( | void | ) |
QK activator activates the next active object. The activated AO preempts the currently executing AOs.
void QK_onContextSw | ( | uint_fast8_t | prev, |
uint_fast8_t | next | ||
) |
QK-nano context switch callback (customized in BSPs for QK-nano)
[in] | prev | priority of the previous thread (active object) (prev==0 means that prev was the QK idle loop) |
[in] | next | priority of the next thread (active object) (next==0) means that next is the QK idle loop) |
void QK_onIdle | ( | void | ) |
QK idle callback (customized in BSPs for QK)
QK_onIdle() is called continuously by the QK-nano idle loop. This callback gives the application an opportunity to enter a power-saving CPU mode, or perform some other idle processing.
QSchedStatus QK_schedLock | ( | uint_fast8_t | ceiling | ) |
QK Scheduler lock
[in] | ceiling | priority ceiling to which the QK scheduler needs to be locked |
void QK_schedUnlock | ( | QSchedStatus | stat | ) |
QK Scheduler unlock
[in] | stat | previous QK Scheduler lock status returned from QK_schedLock() |
|
extern |