EDF - OnePIC MCU
v1.1.0
|
00001 00013 #include "OnePIC_timer.h" 00014 #include <stdint.h> 00015 #include <p24Fxxxx.h> 00016 00017 00023 void EDF_TMR_ClockSourceSelect(TMR_MODULE_ID index, EDF_TMR_CLOCK_SOURCE source) 00024 { 00025 switch(index) { 00026 case TMR_1: 00027 T1CONbits.TCS = source; 00028 break; 00029 default: 00030 break; 00031 } 00032 } 00037 void EDF_TMR_StopInIdleDisable(TMR_MODULE_ID index) 00038 { 00039 switch(index) 00040 { 00041 case TMR_1: 00042 T1CONbits.TSIDL = 0; 00043 break; 00044 default: 00045 break; 00046 } 00047 } 00052 void EDF_TMR_GateDisable(TMR_MODULE_ID index) 00053 { 00054 switch(index) 00055 { 00056 case TMR_1: 00057 T1CONbits.TGATE = 0; 00058 break; 00059 default: 00060 break; 00061 } 00062 } 00068 void EDF_TMR_PrescalerSet(TMR_MODULE_ID index, EDF_TMR_PRESCALE prescaler) 00069 { 00070 switch(index) 00071 { 00072 case TMR_1: 00073 T1CONbits.TCKPS = prescaler; 00074 break; 00075 default: 00076 break; 00077 } 00078 } 00083 void EDF_TMR_Start(TMR_MODULE_ID index) 00084 { 00085 switch(index) 00086 { 00087 case TMR_1: 00088 T1CONbits.TON = 1; 00089 break; 00090 default: 00091 break; 00092 } 00093 } 00099 void EDF_TMR_Period16BitSet(TMR_MODULE_ID index, uint16_t PeriodValue) 00100 { 00101 switch(index) 00102 { 00103 case TMR_1: 00104 PR1 = PeriodValue; 00105 break; 00106 default: 00107 break; 00108 } 00109 } 00114 void EDF_TMR_Stop(TMR_MODULE_ID index) 00115 { 00116 switch(index) 00117 { 00118 case TMR_1: 00119 T1CONbits.TON = 0; 00120 break; 00121 default: 00122 break; 00123 } 00124 } 00130 void EDF_TMR_Counter16BitSet(TMR_MODULE_ID index, uint16_t value) 00131 { 00132 switch(index) 00133 { 00134 case TMR_1: 00135 EDF_TMR_Stop(index); 00136 TMR1 = value; 00137 EDF_TMR_Start(index); 00138 break; 00139 default: 00140 break; 00141 } 00142 }