Im running a few chips 16f876a at 20 mhz, 18f26k22 10mhz with 4x speed so 40mhz
Even using timer 1 and timer 2 with two different ports, portc1 and portc2 you can not get two different PW is this correct
I have also noticed at times one pulse is half the duty cycle other times it can be changed this could be because i used the same timer for both
Code:define OSC 40 OSCCON2.7 = 1 ' SYSTEM CLOCK 1=4XPLL 0= OSCILLATOR OTHER THAN 4XPLL TRISA = %11111010 TRISB = %11111100 ADCON1 = %0110 ADCON0 = %000 T0CON = %00000000 INTCON = %00000000 INTCON2 = %00000000 LED VAR PORTA.5 ' Assign name "LED" to PORTA.5 HIGH LED PAUSE 2000 LOW led PWM PORTA.5, 64, 6000 DEFINE CCP1_REG PORTC ' USED FOR HWPW DEFINE CCP1_BIT 2 ' USED FOR HWPW PORTC PIN 2 DEFINE HPWM2_TIMER1 ' DEFINE TIMER USE FOR PWM DEFINE CCP2_REG PORTC ' USED FOR HWPW DEFINE CCP2_BIT 1 ' USED FOR HWPW PORTC PIN 1 DEFINE HPWM1_TIMER2 ' DEFINE TIMER USE FOR PWM HPWM 1, 128, 5000 ' OUTPUT PORTC.2 'HPWM 2, 64, 5000 ' OUTPUT PORTC.1 ' HPWM 1, 128, 39000 ' HIGHEST HPWM @ 50% DUTY 78.06 khz ' HPWM 1, 128, 30000 ' HPWM @ 50% DUTY 60.19 khz ' HPWM 1, 128, 20000 ' HPWM @ 50% DUTY 39.96 khz ' HPWM 1, 128, 10000 ' HPWM @ 50% DUTY 19.98 khz ' HPWM 1, 128, 5000 ' HPWM @ 50% DUTY 9.99 khz ' HPWM 1, 128, 2441 ' LOWEST HPWM @ 50% DUTY 4.88 khz


Reply With Quote


Bookmarks