00001 #ifndef TIMER_H
00002 #define TIMER_H
00003
00004 #define TIMER_PORT 0x40 // I/O port base for 8254
00005 #define TIMER0 0x40 // I/O port for timer 0
00006 #define TIMER1 0x41 // I/O port for timer 1
00007 #define TIMER2 0x42 // I/O port for timer 2
00008 #define TIMER_MODE 0x43 // I/O port for timer mode control
00009
00010 #define RATE_GENERATOR 0x34 // timer 0,lsb-msb,rate generator,binary
00011 #define TIMER_FREQ 1193182L // clock frequency for timer in PC AT
00012 #define HZ 1000 // 1000hz, divider=TIMER_FREQ/1000~1200
00013
00014 typedef struct{
00015 U16 Timer;
00016 U16 TaskTick;
00017 }TIMER_CONTROL;
00018
00019 extern TIMER_CONTROL TimerCtrl;
00020
00021 void TimerInit(void);
00022 void TimerHandler(void);
00023
00024 #endif