00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #include "includes.h"
00011
00012 TIMER_CONTROL TimerCtrl;
00013
00014
00015
00016 void Timer0Init(void){
00017
00018 TMR0IP=0;
00019 TMR0IE=1;
00020 T0CON=0x08;
00021 TMR0H=(0x10000-50000)/256;
00022 TMR0L=(0x10000-50000)%256;
00023 TMR0ON=1;
00024
00025 TimerCtrl.TimeCounter=0;
00026 }
00027
00028 void Timer0Enable(void){
00029 TMR0ON=1;
00030 }
00031
00032 void Timer0Disable(void){
00033 TMR0ON=0;
00034 }
00035
00036 void Timer0Isr(void){
00037 TMR0ON=0;
00038 TMR0H=(0x10000-50000)/256;
00039 TMR0L=(0x10000-50000)%256;
00040 TMR0ON=1;
00041 if(LedCtrl.Timer!=0) LedCtrl.Timer--;
00042 if(KeyCtrl.Timer!=0) KeyCtrl.Timer--;
00043 }
00044
00045
00046
00047 void Timer1Init(void){
00048 TMR1IP=0;
00049 TMR1IE=1;
00050 T1CON=0x80;
00051
00052 TMR1H=(0x10000-5000)/256;
00053 TMR1L=(0x10000-5000)%256;
00054 TMR1ON=0;
00055 }
00056
00057 void Timer1Enable(void){
00058 TMR1ON=1;
00059 }
00060
00061 void Timer1Disable(void){
00062 TMR1ON=0;
00063 }
00064
00065 void Timer1Isr(void){
00066 TMR1ON=0;
00067 TMR1H=(0x10000-5000)/256;
00068 TMR1L=(0x10000-5000)%256;
00069 if(LcmCtrl.Timer!=0) LcmCtrl.Timer--;
00070 if(LcmCtrl.HasData==TRUE) TMR1ON=1;
00071 else{
00072 LcmCtrl.State=0;
00073
00074 }
00075 }
00076
00077
00078
00079 void Timer2Init(void){
00080 TMR2IP=0;
00081 TMR2IE=1;
00082 T2CON=0x02;
00083 TMR2=0;
00084 PR2=0xff;
00085 TMR2ON=1;
00086 }
00087
00088 void Timer2Enable(void){
00089 TMR2ON=1;
00090 }
00091
00092 void Timer2Disable(void){
00093 TMR2ON=0;
00094 }
00095
00096 void Timer2Isr(void){
00097 TMR2ON=0;
00098 TMR2ON=1;
00099 }
00100
00101
00102
00103 void Timer3Init(void){
00104 TMR3IP=0;
00105 TMR3IE=1;
00106 T3CON=0xc8;
00107
00108 TMR3H=(0x10000-10000)/256;
00109 TMR3L=(0x10000-10000)%256;
00110 TMR3ON=1;
00111 }
00112
00113 void Timer3Enable(void){
00114 TMR3ON=1;
00115 }
00116
00117 void Timer3Disable(void){
00118 TMR3ON=0;
00119 }
00120
00121 void Timer3Isr(void){
00122 TMR3ON=0;
00123 TMR3H=(0x10000-10000)/256;
00124 TMR3L=(0x10000-10000)%256;
00125 TMR3ON=1;
00126 }
00127
00128
00129
00130 void Timer4Init(void){
00131 TMR4IP=0;
00132 TMR4IE=1;
00133 T4CON=0x02;
00134 TMR4=0;
00135 PR4=0xff;
00136 TMR4ON=1;
00137 }
00138
00139 void Timer4Enable(void){
00140 TMR4ON=1;
00141 }
00142
00143 void Timer4Disable(void){
00144 TMR4ON=0;
00145 }
00146
00147 void Timer4Isr(void){
00148 TMR4ON=0;
00149 TMR4ON=1;
00150 }
00151