CMSIS-RTOS Validation  Version 1.0
RTOS Validation
 All Data Structures Files Functions Variables Macros Groups Pages
RV_WaitFunc.c File Reference
#include <string.h>
#include "RV_Framework.h"
#include "cmsis_rv.h"

Data Structures

struct  MAIL_OBJ
 

Macros

#define ACCURACY_OS_DELAY   5 /* Wait accuracy in promiles */
 
#define ACCURACY_OS_WAIT   5 /* Wait accuracy in promiles */
 
#define ACCURACY_OS_SIGNAL_WAIT   5 /* Wait accuracy in promiles */
 
#define ACCURACY_OS_MUTEX_WAIT   5 /* Wait accuracy in promiles */
 
#define ACCURACY_OS_SEMAPHORE_WAIT   5 /* Wait accuracy in promiles */
 
#define ACCURACY_OS_MESSAGE_WAIT   5 /* Wait accuracy in promiles */
 
#define ACCURACY_OS_MAIL_WAIT   5 /* Wait accuracy in promiles */
 
#define CPU_CYC(us)   (((uint64_t)(us) * SystemCoreClock) / 1000000)
 
#define DWT_CYCCNT   GET_SIM_CYCCNT()
 

Functions

uint32_t GET_SIM_CYCCNT (void)
 
static void WaitFunc_Th_MutexLock (void const *arg)
 
 osThreadDef (WaitFunc_Th_MutexLock, osPriorityAboveNormal, 1, 0)
 
 osMutexDef (WaitFunc_MutexTout)
 
 osSemaphoreDef (SemaphoreTout)
 
 osMessageQDef (MessageQTout, 1, uint32_t)
 
 osMailQDef (MailQTout, 1, MAIL_OBJ)
 
void StartCortexCycleCounter (void)
 
static void WaitFunc_Th_MutexLock (void const __attribute__((unused))*arg)
 
void TC_MeasureOsDelayTicks (void)
 Test case: TC_MeasureOsDelayTicks. More...
 
void TC_MeasureOsWaitTicks (void)
 Test case: TC_MeasureOsWaitTicks. More...
 
void TC_MeasureOsSignalWaitTicks (void)
 Test case: TC_MeasureOsSignalWaitTicks. More...
 
void TC_MeasureOsMutexWaitTicks (void)
 Test case: TC_MeasureOsMutexWaitTicks. More...
 
void TC_MeasureOsSemaphoreWaitTicks (void)
 Test case: TC_MeasureOsSemaphoreWaitTicks. More...
 
void TC_MeasureOsMessageWaitTicks (void)
 Test case: TC_MeasureOsMessageWaitTicks. More...
 
void TC_MeasureOsMailWaitTicks (void)
 Test case: TC_MeasureOsMailWaitTicks. More...
 

Variables

static uint64_t TickCyc
 
static uint32_t Lim_OsDelay [2]
 
static uint32_t Lim_OsSignalWait [2]
 
static uint32_t Lim_OsMutexWait [2]
 
static uint32_t Lim_OsSemaphoreWait [2]
 
static uint32_t Lim_OsMessageWait [2]
 
static uint32_t Lim_OsMailWait [2]
 
volatile uint32_t SIM_CYCCNT
 
static uint8_t CycCntRunning
 
static osMutexId G_WaitFunc_MutexId
 
static osThreadId G_WaitFunc_ThreadId
 
static osSemaphoreId G_WaitFunc_SemaphoreId
 
static osMessageQId G_WaitFunc_MessageQId
 
static osMailQId G_WaitFunc_MailQId
 
static MAIL_OBJG_MailPtr
 

Macro Definition Documentation

#define ACCURACY_OS_DELAY   5 /* Wait accuracy in promiles */
#define ACCURACY_OS_MAIL_WAIT   5 /* Wait accuracy in promiles */
#define ACCURACY_OS_MESSAGE_WAIT   5 /* Wait accuracy in promiles */
#define ACCURACY_OS_MUTEX_WAIT   5 /* Wait accuracy in promiles */
#define ACCURACY_OS_SEMAPHORE_WAIT   5 /* Wait accuracy in promiles */
#define ACCURACY_OS_SIGNAL_WAIT   5 /* Wait accuracy in promiles */
#define ACCURACY_OS_WAIT   5 /* Wait accuracy in promiles */
#define CPU_CYC (   us)    (((uint64_t)(us) * SystemCoreClock) / 1000000)
#define DWT_CYCCNT   GET_SIM_CYCCNT()

Function Documentation

uint32_t GET_SIM_CYCCNT ( void  )
osMailQDef ( MailQTout  ,
,
MAIL_OBJ   
)
osMessageQDef ( MessageQTout  ,
,
uint32_t   
)
osMutexDef ( WaitFunc_MutexTout  )
osSemaphoreDef ( SemaphoreTout  )
osThreadDef ( WaitFunc_Th_MutexLock  ,
osPriorityAboveNormal  ,
,
 
)
void StartCortexCycleCounter ( void  )
static void WaitFunc_Th_MutexLock ( void const *  arg)
static
static void WaitFunc_Th_MutexLock ( void const __attribute__((unused))*  arg)
static

Variable Documentation

uint8_t CycCntRunning
static
MAIL_OBJ* G_MailPtr
static
osMailQId G_WaitFunc_MailQId
static
osMessageQId G_WaitFunc_MessageQId
static
osMutexId G_WaitFunc_MutexId
static
osSemaphoreId G_WaitFunc_SemaphoreId
static
osThreadId G_WaitFunc_ThreadId
static
uint32_t Lim_OsDelay[2]
static
uint32_t Lim_OsMailWait[2]
static
uint32_t Lim_OsMessageWait[2]
static
uint32_t Lim_OsMutexWait[2]
static
uint32_t Lim_OsSemaphoreWait[2]
static
uint32_t Lim_OsSignalWait[2]
static
volatile uint32_t SIM_CYCCNT
uint64_t TickCyc
static