Webserver+3d print

Dependents:   Nucleo

Embed: (wiki syntax)

« Back to documentation index

os_port_freertos.c File Reference

os_port_freertos.c File Reference

RTOS abstraction layer (FreeRTOS) More...

Go to the source code of this file.

Functions

void osInitKernel (void)
 Kernel initialization.
void osStartKernel (void)
 Start kernel.
OsTaskosCreateTask (const char_t *name, OsTaskCode taskCode, void *params, size_t stackSize, int_t priority)
 Create a new task.
void osDeleteTask (OsTask *task)
 Delete a task.
void osDelayTask (systime_t delay)
 Delay routine.
void osSwitchTask (void)
 Yield control to the next task.
void osSuspendAllTasks (void)
 Suspend scheduler activity.
void osResumeAllTasks (void)
 Resume scheduler activity.
bool_t osCreateEvent (OsEvent *event)
 Create an event object.
void osDeleteEvent (OsEvent *event)
 Delete an event object.
void osSetEvent (OsEvent *event)
 Set the specified event object to the signaled state.
void osResetEvent (OsEvent *event)
 Set the specified event object to the nonsignaled state.
bool_t osWaitForEvent (OsEvent *event, systime_t timeout)
 Wait until the specified event is in the signaled state.
bool_t osSetEventFromIsr (OsEvent *event)
 Set an event object to the signaled state from an interrupt service routine.
bool_t osCreateSemaphore (OsSemaphore *semaphore, uint_t count)
 Create a semaphore object.
void osDeleteSemaphore (OsSemaphore *semaphore)
 Delete a semaphore object.
bool_t osWaitForSemaphore (OsSemaphore *semaphore, systime_t timeout)
 Wait for the specified semaphore to be available.
void osReleaseSemaphore (OsSemaphore *semaphore)
 Release the specified semaphore object.
bool_t osCreateMutex (OsMutex *mutex)
 Create a mutex object.
void osDeleteMutex (OsMutex *mutex)
 Delete a mutex object.
void osAcquireMutex (OsMutex *mutex)
 Acquire ownership of the specified mutex object.
void osReleaseMutex (OsMutex *mutex)
 Release ownership of the specified mutex object.
systime_t osGetSystemTime (void)
 Retrieve system time.
void * osAllocMem (size_t size)
 Allocate a memory block.
void osFreeMem (void *p)
 Release a previously allocated memory block.
void vApplicationStackOverflowHook (xTaskHandle pxTask, char *pcTaskName)
 FreeRTOS stack overflow hook.
void vAssertCalled (const char *pcFile, unsigned long ulLine)
 Trap FreeRTOS errors.

Detailed Description

RTOS abstraction layer (FreeRTOS)

License

Copyright (C) 2010-2017 Oryx Embedded SARL. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Author:
Oryx Embedded SARL (www.oryx-embedded.com)
Version:
1.7.6

Definition in file os_port_freertos.c.


Function Documentation

void osAcquireMutex ( OsMutex mutex )

Acquire ownership of the specified mutex object.

Parameters:
[in]mutexPointer to the mutex object

Definition at line 388 of file os_port_freertos.c.

void* osAllocMem ( size_t  size )

Allocate a memory block.

Parameters:
[in]sizeBytes to allocate
Returns:
A pointer to the allocated memory block or NULL if there is insufficient memory available

Definition at line 431 of file os_port_freertos.c.

bool_t osCreateEvent ( OsEvent event )

Create an event object.

Parameters:
[in]eventPointer to the event object
Returns:
The function returns TRUE if the event object was successfully created. Otherwise, FALSE is returned

Definition at line 159 of file os_port_freertos.c.

bool_t osCreateMutex ( OsMutex mutex )

Create a mutex object.

Parameters:
[in]mutexPointer to the mutex object
Returns:
The function returns TRUE if the mutex was successfully created. Otherwise, FALSE is returned

Definition at line 354 of file os_port_freertos.c.

bool_t osCreateSemaphore ( OsSemaphore semaphore,
uint_t  count 
)

Create a semaphore object.

Parameters:
[in]semaphorePointer to the semaphore object
[in]countThe maximum count for the semaphore object. This value must be greater than zero
Returns:
The function returns TRUE if the semaphore was successfully created. Otherwise, FALSE is returned

Definition at line 277 of file os_port_freertos.c.

OsTask* osCreateTask ( const char_t *  name,
OsTaskCode  taskCode,
void *  params,
size_t  stackSize,
int_t  priority 
)

Create a new task.

Parameters:
[in]nameA name identifying the task
[in]taskCodePointer to the task entry function
[in]paramsA pointer to a variable to be passed to the task
[in]stackSizeThe initial size of the stack, in words
[in]priorityThe priority at which the task should run
Returns:
If the function succeeds, the return value is a pointer to the new task. If the function fails, the return value is NULL

Definition at line 69 of file os_port_freertos.c.

void osDelayTask ( systime_t  delay )

Delay routine.

Parameters:
[in]delayAmount of time for which the calling task should block

Definition at line 104 of file os_port_freertos.c.

void osDeleteEvent ( OsEvent event )

Delete an event object.

Parameters:
[in]eventPointer to the event object

Definition at line 185 of file os_port_freertos.c.

void osDeleteMutex ( OsMutex mutex )

Delete a mutex object.

Parameters:
[in]mutexPointer to the mutex object

Definition at line 372 of file os_port_freertos.c.

void osDeleteSemaphore ( OsSemaphore semaphore )

Delete a semaphore object.

Parameters:
[in]semaphorePointer to the semaphore object

Definition at line 295 of file os_port_freertos.c.

void osDeleteTask ( OsTask task )

Delete a task.

Parameters:
[in]taskPointer to the task to be deleted

Definition at line 92 of file os_port_freertos.c.

void osFreeMem ( void *  p )

Release a previously allocated memory block.

Parameters:
[in]pPreviously allocated memory block to be freed

Definition at line 451 of file os_port_freertos.c.

systime_t osGetSystemTime ( void   )

Retrieve system time.

Returns:
Number of milliseconds elapsed since the system was last started

Definition at line 412 of file os_port_freertos.c.

void osInitKernel ( void   )

Kernel initialization.

Definition at line 42 of file os_port_freertos.c.

void osReleaseMutex ( OsMutex mutex )

Release ownership of the specified mutex object.

Parameters:
[in]mutexPointer to the mutex object

Definition at line 400 of file os_port_freertos.c.

void osReleaseSemaphore ( OsSemaphore semaphore )

Release the specified semaphore object.

Parameters:
[in]semaphorePointer to the semaphore object

Definition at line 340 of file os_port_freertos.c.

void osResetEvent ( OsEvent event )

Set the specified event object to the nonsignaled state.

Parameters:
[in]eventPointer to the event object

Definition at line 213 of file os_port_freertos.c.

void osResumeAllTasks ( void   )

Resume scheduler activity.

Definition at line 141 of file os_port_freertos.c.

void osSetEvent ( OsEvent event )

Set the specified event object to the signaled state.

Parameters:
[in]eventPointer to the event object

Definition at line 201 of file os_port_freertos.c.

bool_t osSetEventFromIsr ( OsEvent event )

Set an event object to the signaled state from an interrupt service routine.

Parameters:
[in]eventPointer to the event object
Returns:
TRUE if setting the event to signaled state caused a task to unblock and the unblocked task has a priority higher than the currently running task

Definition at line 256 of file os_port_freertos.c.

void osStartKernel ( void   )

Start kernel.

Definition at line 51 of file os_port_freertos.c.

void osSuspendAllTasks ( void   )

Suspend scheduler activity.

Definition at line 126 of file os_port_freertos.c.

void osSwitchTask ( void   )

Yield control to the next task.

Definition at line 115 of file os_port_freertos.c.

bool_t osWaitForEvent ( OsEvent event,
systime_t  timeout 
)

Wait until the specified event is in the signaled state.

Parameters:
[in]eventPointer to the event object
[in]timeoutTimeout interval
Returns:
The function returns TRUE if the state of the specified object is signaled. FALSE is returned if the timeout interval elapsed

Definition at line 228 of file os_port_freertos.c.

bool_t osWaitForSemaphore ( OsSemaphore semaphore,
systime_t  timeout 
)

Wait for the specified semaphore to be available.

Parameters:
[in]semaphorePointer to the semaphore object
[in]timeoutTimeout interval
Returns:
The function returns TRUE if the semaphore is available. FALSE is returned if the timeout interval elapsed

Definition at line 314 of file os_port_freertos.c.

void vApplicationStackOverflowHook ( xTaskHandle  pxTask,
char *  pcTaskName 
)

FreeRTOS stack overflow hook.

Definition at line 469 of file os_port_freertos.c.

void vAssertCalled ( const char *  pcFile,
unsigned long  ulLine 
)

Trap FreeRTOS errors.

Definition at line 483 of file os_port_freertos.c.