a pic18f26k22 can have 5 different pwm streams with 3 different frequencies all with individual duty cycles, old clunker chips like 16f876a are much less capable of course

here is 3 streams 3 frequencies
i find the hpwm command pretty inflexible and seldom use it [the clock defines are not correct in mho] , pwm is not difficult to setup manually



Code:
'****************************************************************
'*  Name    : PWM demo.pbp                                      *
'*  Author  :  Richard                                          *
'*  Notice  :                                                   *
'*          :                                                   *
'*  Date    : 21/12/2024                                        *
'*  Version : 1.0                                               *
'*  Notes   : TMR2 CCP4 10K, TMR4 CCP5 12.5K,  TMR6 CCP1 8K     *
'*          :18f26k22 @64Mhz                                    *
'****************************************************************




#CONFIG
  CONFIG  FOSC = INTIO67
  CONFIG  PLLCFG = ON
  CONFIG  PRICLKEN = ON
  CONFIG  FCMEN = OFF
  CONFIG  IESO = OFF
  CONFIG  PWRTEN = ON
  CONFIG  BOREN = SBORDIS
  CONFIG  BORV = 190
  CONFIG  WDTEN = ON
  CONFIG  WDTPS = 32768
  CONFIG  CCP2MX = PORTC1
  CONFIG  PBADEN = OFF
  CONFIG  CCP3MX = PORTB5                                
  CONFIG  T3CMX = PORTC0
  CONFIG  HFOFST = ON
  CONFIG  P2BMX = PORTB5
  CONFIG  MCLRE = EXTMCLR
  CONFIG  STVREN = ON
  CONFIG  LVP = OFF
  CONFIG  XINST = OFF
  CONFIG  DEBUG = OFF
  CONFIG  CP0 = OFF
  CONFIG  CP1 = OFF
  CONFIG  CP2 = OFF
  CONFIG  CP3 = OFF
  CONFIG  CPB = OFF
  CONFIG  CPD = OFF
  CONFIG  WRT0 = OFF
  CONFIG  WRT1 = OFF
  CONFIG  WRT2 = OFF
  CONFIG  WRT3 = OFF
  CONFIG  WRTC = OFF
  CONFIG  WRTB = OFF
  CONFIG  WRTD = OFF
  CONFIG  EBTR0 = OFF
  CONFIG  EBTR1 = OFF
  CONFIG  EBTR2 = OFF
  CONFIG  EBTR3 = OFF
  CONFIG  EBTRB = OFF
#ENDCONFIG  
    DEFINE OSC 64
    ANSELB=0
    ANSELC=0
    ANSELA=0
    trisa=% 11101111
    trisb=% 11111110
    trisc=% 11111001
    OSCCON=$70
    OSCTUNE.6=1
    
    T2CON=6         ;PRESCALE 16 TMR ON
    T4CON=6         ;PRESCALE 16 TMR ON
    T6CON=6         ;PRESCALE 16 TMR ON
    PR2=$63         ;10 KHZ
    PR4=$4F         ;12.5 KHZ
    PR6=$7C         ;8 KHZ
    CCP4CON = $0C   ;PWM MODE + DUTY LSB 2 BITS
    CCPR4L  = $32   ;DUTY MSB 8 BITS    
    CCP5CON = $0C   ;PWM MODE + DUTY LSB 2 BITS
    CCPR5L  = $27   ;DUTY MSB 8 BITS
    CCP1CON = $0C   ;PWM MODE + DUTY LSB 2 BITS
    CCPR1L  = $3E   ;DUTY MSB 8 BITS    
    CCPTMRS1  = 4   ;TMR2 CCP4, TMR4 CCP5
    CCPTMRS0  = 2   ;TMR6 CCP1 


main:
goto main