robotics/examples/skeleton/user.c File Reference

#include "user_config.h"

Go to the source code of this file.

Functions

static ESOS_USER_TASK (heartbeat)
void user_init (void)


Detailed Description

Author:
Thomas Donaldson
This file is the main entry point for an ESOS user's code. As such, the user should put any additional or custom initialization, along with registering at least one task, in the user_init() function.

Definition in file user.c.


Function Documentation

static ESOS_USER_TASK ( heartbeat   )  [static]

Precondition:
This function must be registered with ESOS in user_init()
This task flashes the heartbeat LED (HEARTBEAT) at a rate specified by HALF_HEARTBEAT_PERIOD (in ms).

Definition at line 17 of file user.c.

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 31 of file user.c.


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