demos_source/code_TestRendezvous.c File Reference

#include "femtoos_code.h"

Include dependency graph for code_TestRendezvous.c:

Go to the source code of this file.

Defines

#define delay07   349U
 This file is solely for demonstration purposes.
#define delay06   342U
#define delay05   335U
#define delay04   328U
#define delay03   321U
#define delay02   314U
#define delay01   307U
#define delay00   300U
#define setLed(lednr, state)   if (state) { devLedPORT |= (1 << lednr); } else { devLedPORT &= ~(1 << lednr); }

Functions

void appBoot (void)
 Prototype for the general initialization.
void appLoop_LEDtask0 (void)
void appLoop_LEDtask1 (void)
void appLoop_LEDtask2 (void)
void appLoop_LEDtask3 (void)
void appLoop_LEDtask4 (void)
void appLoop_LEDtask5 (void)
void appLoop_LEDtask6 (void)
void appLoop_LEDtask7 (void)
void appLoop_Synchronize (void)

Variables

static Tbool bSync = false


Define Documentation

#define delay00   300U

Definition at line 48 of file code_TestRendezvous.c.

#define delay01   307U

Definition at line 47 of file code_TestRendezvous.c.

#define delay02   314U

Definition at line 46 of file code_TestRendezvous.c.

#define delay03   321U

Definition at line 45 of file code_TestRendezvous.c.

#define delay04   328U

Definition at line 44 of file code_TestRendezvous.c.

#define delay05   335U

Definition at line 43 of file code_TestRendezvous.c.

#define delay06   342U

Definition at line 42 of file code_TestRendezvous.c.

#define delay07   349U

This file is solely for demonstration purposes.

In this example eight leds are blinking at slightly different frequencies. The effect is that they will get out off phase after about a minute or so. All blinkers are independent preempted tasks. There is one switch which activates a semaphore so that all tasks block at a particular point until all of them have arrived there. If this happens the semaphore is released (by arrival of the last task) and the game starts all over again.

Definition at line 41 of file code_TestRendezvous.c.

#define setLed ( lednr,
state   )     if (state) { devLedPORT |= (1 << lednr); } else { devLedPORT &= ~(1 << lednr); }

Definition at line 61 of file code_TestRendezvous.c.


Function Documentation

void appBoot ( void   ) 

Prototype for the general initialization.

The Remember demonstration fills the file system with random numbers and calculates a (xor) hash on before hand. Then three worker tasks are started which read the files with concurrently and calculate hash's for each files. When all workers are done the main task combines the result and checks if it is equal to the value before. If so, a new round is started. Note that this demo wears out the EEPROM rapidly.

Definition at line 54 of file code_TestRendezvous.c.

void appLoop_LEDtask0 ( void   ) 

Definition at line 70 of file code_TestRendezvous.c.

References bSync, defNumberOfTasks, delay00, setLed, taskDelayFromNow(), taskWaitForTasksOnName, and Tuint08.

Here is the call graph for this function:

void appLoop_LEDtask1 ( void   ) 

Definition at line 88 of file code_TestRendezvous.c.

References bSync, defNumberOfTasks, delay01, setLed, taskDelayFromNow(), taskWaitForTasksOnName, and Tuint08.

Here is the call graph for this function:

void appLoop_LEDtask2 ( void   ) 

Definition at line 105 of file code_TestRendezvous.c.

References bSync, defNumberOfTasks, delay02, setLed, taskDelayFromNow(), taskWaitForTasksOnName, and Tuint08.

Here is the call graph for this function:

void appLoop_LEDtask3 ( void   ) 

Definition at line 122 of file code_TestRendezvous.c.

References bSync, defNumberOfTasks, delay03, setLed, taskDelayFromNow(), taskWaitForTasksOnName, and Tuint08.

Here is the call graph for this function:

void appLoop_LEDtask4 ( void   ) 

Definition at line 139 of file code_TestRendezvous.c.

References bSync, defNumberOfTasks, delay04, setLed, taskDelayFromNow(), taskWaitForTasksOnName, and Tuint08.

Here is the call graph for this function:

void appLoop_LEDtask5 ( void   ) 

Definition at line 156 of file code_TestRendezvous.c.

References bSync, defNumberOfTasks, delay05, setLed, taskDelayFromNow(), taskWaitForTasksOnName, and Tuint08.

Here is the call graph for this function:

void appLoop_LEDtask6 ( void   ) 

Definition at line 173 of file code_TestRendezvous.c.

References bSync, defNumberOfTasks, delay06, setLed, taskDelayFromNow(), taskWaitForTasksOnName, and Tuint08.

Here is the call graph for this function:

void appLoop_LEDtask7 ( void   ) 

Definition at line 190 of file code_TestRendezvous.c.

References bSync, defNumberOfTasks, delay07, setLed, taskDelayFromNow(), taskWaitForTasksOnName, and Tuint08.

Here is the call graph for this function:

void appLoop_Synchronize ( void   ) 

Definition at line 211 of file code_TestRendezvous.c.

References bSync, taskDelayFromNow(), and Tuint08.

Here is the call graph for this function:


Variable Documentation

Tbool bSync = false [static]

Definition at line 50 of file code_TestRendezvous.c.

Referenced by appLoop_LEDtask0(), appLoop_LEDtask1(), appLoop_LEDtask2(), appLoop_LEDtask3(), appLoop_LEDtask4(), appLoop_LEDtask5(), appLoop_LEDtask6(), appLoop_LEDtask7(), and appLoop_Synchronize().


Generated on Fri Oct 16 00:05:24 2009 for FemtoOS by  doxygen 1.5.2