chap14/app_semaphore1.c File Reference

#include "esos.h"
#include "esos_pic24.h"
#include "esos_pic24_rs232.h"

Go to the source code of this file.

Functions

void user_init (void)


Detailed Description

ESOS application program to where two tasks increment a counter local to each task. Tasks run forever. However, task1 will delay for a random length of time after each counter increment. task2 will increment its counter only after every 5th increment of task1's counter.
Note:
Application demonstrates signaling synchronization using ESOS semaphores

Definition in file app_semaphore1.c.


Function Documentation

void user_init ( void   ) 

User-provided function to initialize user's hardware configuration register user tasks.

Note:
All ESOS applications MUST provide this function.

This function MUST register at least one ESOS task.

user_init() is a centralized initialization routine where the user can setup their application. It is called automagically by ES_OS during the operating system initialization.

User should set up any state machines and init all application variables. They can also turn on any needed peripherals here.

User shall not mess with the interrupt hardware directly!!! The ESOS must be aware of the interrupts and provides esos_XXXXXXX functions for the user to use. Using these ESOS-provided functions, the user may (and probably should) initialize, register, and enable interrupts in this routine.

Furthermore, the user should register AT LEAST one user application task here via esos_RegisterTask or the ES_OS scheduler will have nothing to schedule to run when this function returns.

Definition at line 185 of file app_semaphore1.c.


Generated on Sun Mar 15 11:14:22 2009 for PIC24 Support Libraries by  doxygen 1.5.8