¿Cómo usar tres módulos CCP en modo de comparación simultáneamente en PIC16F?

0

Necesito usar los tres módulos CCP disponibles (CCP1, CCP2, CCP7) en modo de comparación simultáneamente. Todos ellos usan Timer1 como referencia para comparar.

Mi objetivo es el siguiente: en cada coincidencia, para cada uno de ellos, quiero actualizar el valor objetivo y restablecer Timer1. Sin embargo, cada uno de ellos tendrá un objetivo diferente.

¿Cómo puedo lograr esto? ¿Es posible cambiar el temporizador de comparación?

Cualquier ayuda es muy apreciada.

Estoy trabajando con PIC16F1773: hoja de datos

    
pregunta Raúl

1 respuesta

0

Para hacer lo que quieres hacer, no debes reiniciar el temporizador1. En cambio, cuando recibe una interrupción de cualquiera de los módulos de comparación, escriba un nuevo valor en ese módulo de comparación igual al valor anterior más el intervalo de tiempo para ese módulo. El temporizador continuará su camino y obtendrá la siguiente interrupción después de este intervalo, y puede repetir el proceso. Haga un ISR similar para cada uno de los tres módulos. De esta manera, los tres módulos pueden usar timer1.

    
respondido por el John Birckhead

Lea otras preguntas en las etiquetas