40 #ifndef SQWAVE_HALFPERIOD
41 #define SQWAVE_HALFPERIOD 2500 // desired half period, in us
44 void configTimer2(
void) {
45 T2CON = T2_OFF | T2_IDLE_CON | T2_GATE_OFF
54 void _ISRFAST _OC1Interrupt() {
56 #if (defined(__dsPIC33E__) || defined(__PIC24E__))
59 OC1R = OC1R + u16_sqwaveHPeriodTicks;
63 void configOutputCompare1(
void) {
66 #if (defined(__dsPIC33E__) || defined(__PIC24E__))
71 OC1R = u16_sqwaveHPeriodTicks;
72 OC1RS = u16_sqwaveHPeriodTicks;
73 OC1CON1 = OC_TIMER2_SRC |
81 OC1R = u16_sqwaveHPeriodTicks;
82 OC1CON = OC_TIMER2_SRC |
93 configOutputCompare1();