Hola Mtristan, te paso un codigo que a mi me funciona, genera 3 pwm para controlar led rgb
ma memoria , es para saber si cada color, termino o no su tiempo de encendido...
los que figuran como pwm_rojo pwm_verde y pwm_azul son registros contadores
COLORES
;COLOR_ROJO
BTFSC BANDERA_R ;FUE APAGADA?
GOTO COLOR_VERDE
BSF ROJO
DECFSZ PWM_ROJO,F
GOTO COLOR_VERDE
BCF ROJO
BSF BANDERA_R ;MARCO QUE YA TERMINO SU CICLO
COLOR_VERDE
BTFSC BANDERA_G ;FUE APAGADA?
GOTO COLOR_AZUL
BSF VERDE
DECFSZ PWM_VERDE,F
GOTO COLOR_AZUL
BCF VERDE
BSF BANDERA_G ;MARCO QUE YA TERMINO SU CICLO
COLOR_AZUL
BTFSC BANDERA_B ;FUE APAGADA?
GOTO CONTAR
BSF AZUL
DECFSZ PWM_AZUL,F
GOTO CONTAR
BCF AZUL
BSF BANDERA_B ;MARCO QUE YA TERMINO SU CICLO
CONTAR CALL DEMORA ;ANCHO DE CADA PASO DEL PWM -TOTAL 255 PASOS 0.00004 40uS
DECFSZ CONTADOR,F ;TIEMPO TOTAL DEL PWM
GOTO COLORES
GOTO LEER_DATO ;ACTUALIZA NUEVOS DATOS INGRESADOS
Norberto