NO NEED FOR HPWM then
Code:INIT_PWM BANK0 MOVLW B'10001100' ;Dual-Output, Half-Bridge Mode MOVWF CCP1CON ;P1A,P1C active-high, P1B,P1D active-high MOVLW B'00000100' ;Timer2 enabled with prescale 1 MOVWF T2CON BANK1 MOVLW 0xFF MOVWF PR2 ;Set frequency to 19.53 kHz BANK0 MOVLW B'01111111' ;50% duty cycle MOVWF CCPR1L RETURNThink about it a little bitCode:UPDATE_PWM BANK0 MOVFW ADRESH ; copy the 8 MSbs to the CCPR1L register MOVWF CCPR1L BTFSC ADRESL,7 ; is ADC bit 1 set? BCF CCP1CON,5 ; if not, clear the PWM bit 1 BSF CCP1CON,5 ; if so, set the PWM bit 1 BTFSC ADRESL,6 ; same thing, for bit 0 BCF CCP1CON,4 BSF CCP1CON,4 RETURN![]()




Bookmarks