Pásanos el circuito que estás usando y además una foto de la señal para verla... probablemente la tengas filtrada o algo así.
Es simplemente el osciloscopio a la salida CCP2. No hay filtros en ningun lado.
El codigo es tan simple como configurar el CCP2 como single PWM. PR=1 y la resolucion a 0 todo, t egenera una triangular al ritmo del reloj interno.
Estoy probando cosas, y si subes el valor de la resolucion a todo 1s te genera una cuadrada con los flancos bastante lentos. Si en cambio pones a la resolucion todo a 0 y subes a PR=10 te genera picos como "montañas" cada cierto tiempo. Este ultimo efecto creo que lo entiendo pero no me queda del todo claro porque genera esos picos.
Ya para empezar, si CPP1RL+CPP1CON<4,5> es mayor a PR2, simplemente deberia mantenerse el estado del pin CPP2, pero no lo hace y me tiene descolocado.