/****************************************************************************** File: timers.h Date: 22.1.2004 Version: 0.1 Author: Jari Lahti (jari.lahti@violasystems.com) Description: Implements simple timer pool. No timer chaining Version Info: 22.1.2004 - First version (JaL) *******************************************************************************/ #ifndef __INCLUDE_OPENTCP_TIMERS_H__ #define __INCLUDE_OPENTCP_TIMERS_H__ #include "datatypes.h" /* API for Timers */ #define NUMTIMERS 40 #define TIMERTIC 100 /* Timer period 1/secs */ #define BaseTimer 0 /* Free running system timer */ UINT8 get_timer(void); /* Get Timer from Timer Pool */ void free_timer(UINT8); /* Return Timer to Timer Pool */ void init_timer(UINT8,UINT32); /* Init timers timeout value */ void init_timerPool(void); /* Init the pool when uC starts */ UINT32 check_timer(UINT8); /* Return Timers value */ struct timers { UINT32 TimerField; UINT8 Free; }; /****************************************************************************** Function: init_timerpool Parameters: none Return val: void Date: 18.7.2001 Desc: Initialize timer pool *******************************************************************************/ void init_timerpool(void); /****************************************************************************** Function: get_timer Parameters: none Return val: Return handle of free timer Date: 18.7.2001 Desc: Gets free timer from the timer pool *******************************************************************************/ UINT8 get_timer(void); /****************************************************************************** Function: free_timer Parameters: none Return val: UINT8 nbr - number Date: 18.7.2001 Desc: puts the given timer back to the timer pool *******************************************************************************/ void free_timer(UINT8 nbr); /****************************************************************************** Function: init_timer Parameters: UINT8 nbr - number UINT32 tout - time out Return val: none Date: 18.7.2001 Desc: Initializes given timer to given time-out *******************************************************************************/ void init_timer(UINT8 nbr, UINT32 tout); /****************************************************************************** Function: check_timer Parameters: UINT8 nbr - number Return val: return the value of given timer Date: 18.7.2001 Desc: return the value of given timer *******************************************************************************/ UINT32 check_timer(UINT8 nbr); /****************************************************************************** Function: irqhandler_timer Parameters: void Return val: void Date: 18.7.2001 Desc: Call this function on timer interrupt *******************************************************************************/ void irqhandler_timer(void); #endif //guard /* EOF */