|
Prusa MINI Firmware overview
|
croutine. h
crSTART( CoRoutineHandle_t xHandle );
This macro MUST always be called at the start of a co-routine function.
Example usage:
// Co-routine to be created.
void vACoRoutine( CoRoutineHandle_t xHandle, UBaseType_t uxIndex )
{
// Variables in co-routines must be declared static if they must maintain value across a blocking call.
static int32_t ulAVariable;// Must start every co-routine with a call to crSTART(); crSTART( xHandle );
for( ;; )
{
// Co-routine functionality goes here.
}// Must end every co-routine with a call to crEND(); crEND(); }
croutine. h
crEND();
This macro MUST always be called at the end of a co-routine function.
Example usage:
// Co-routine to be created.
void vACoRoutine( CoRoutineHandle_t xHandle, UBaseType_t uxIndex )
{
// Variables in co-routines must be declared static if they must maintain value across a blocking call.
static int32_t ulAVariable;// Must start every co-routine with a call to crSTART(); crSTART( xHandle );
for( ;; )
{
// Co-routine functionality goes here.
}// Must end every co-routine with a call to crEND(); crEND(); }