Difference Analysis Generated by HtmlDiff on 10/26/2004 1:34 PM  

Base file: C:\CY4632_RDK_1_21\Firmware\Source Code\RDK Keyboard\timer.h

Modified file: C:\CY4632_RDK_1_3\Firmware\Source Code\RDK Keyboard\timer.h

//--------------------------------------------------------------------------
//
// Timer Header file
// This module provides a timer interface for general purpose timing
// requirements.
//
//--------------------------------------------------------------------------
// $Archive: /WirelessUSB/WUSB Kits/CY4632 LS KBM RDK/DocSrc/CD_Root/Firmware/Source Code/RDK Keyboard/timer.h $
// $Modtime: 4/15/04 3:59p9/29/04 2:19p $
// $Revision: 67 $
//--------------------------------------------------------------------------
//
// Copyright 2003-2004, Cypress Semiconductor Corporation.
//
// This software is owned by Cypress Semiconductor Corporation (Cypress)
// and is protected by and subject to worldwide patent protection (United
// States and foreign), United States copyright laws and international 
// treaty provisions. Cypress hereby grants to licensee a personal, 
// non-exclusive, non-transferable license to copy, use, modify, create 
// derivative works of, and compile the Cypress Source Code and derivative 
// works for the sole purpose of creating custom software in support of 
// licensee product to be used only in conjunction with a Cypress integrated 
// circuit as specified in the applicable agreement. Any reproduction, 
// modification, translation, compilation, or representation of this 
// software except as specified above is prohibited without the express 
// written permission of Cypress.
//
// Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND,EXPRESS OR IMPLIED, 
// WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
// Cypress reserves the right to make changes without further notice to the
// materials described herein. Cypress does not assume any liability arising
// out of the application or use of any product or circuit described herein.
// Cypress does not authorize its products for use as critical components in
// life-support systems where a malfunction or failure may reasonably be
// expected to result in significant injury to the user. The inclusion of
// Cypress’ product in a life-support systems application implies that the
// manufacturer assumes all risk of such use and in doing so indemnifies
// Cypress against all charges.
//
// Use may be limited by and subject to the applicable Cypress software
// license agreement.
//
//--------------------------------------------------------------------------


#ifndef _TIMER_H_
#define _TIMER_H_

//--------------------------------------
// Included files
//--------------------------------------

#include "cypdef.h"
#include "appconfig.h"


//--------------------------------------
// API Definitions and Types
//--------------------------------------

typedef UINT16 TIME_STAMP;


// Tick is set to 1ms
#define MS_TO_TICK(n) (n)
#define TICK_TO_MS(n) (n)


// CPU @ 12MHz
#define timer_delay_1_usec()   \
            asm("nop"); \
            asm("nop"); \
            asm("nop");


//--------------------------------------
// API Function Declarations
//--------------------------------------

extern void timer_init(void);
extern void timer_timer_off(void);
extern void timer_timer_on(void);

#ifdef TIMER_CAL
extern void timer_calibrate_timer(BOOL set_timer_on_off(void);
#endif

extern void timer_delay_10_usec(void);
extern void timer_delay_50_usec(void);
extern void timer_delay_100_usec(void);
extern void timer_delay_msec(UINT16 num_milliseconds);

extern TIME_STAMP timer_get_time_stamp(void);
extern void timer_delay_incremental( TIME_STAMP from_timestamp, UINT16 delay_ms );
extern BOOL timer_time_elapsed(TIME_STAMP from_timestamp, UINT16 elapsed_time_ms);

#endif   // _TIMER_H
extern void timer_delay_incremental( TIME_STAMP from_timestamp, 
                                     UINT16 delay_ms );

extern BOOL timer_time_elapsed(TIME_STAMP from_timestamp, 
                               UINT16 elapsed_time_ms);
                               


#ifdef TIMER_CAL

extern void timer_calibrate_timer(BOOL);
#define TIMER_CALIBRATE_TIMER(b) timer_calibrate_timer(b)

#else

#define TIMER_CALIBRATE_TIMER(b)

#endif


#endif   // _TIMER_H_