Você está na página 1de 2

MÓDULO CCP (Captura/Comparación/PWM)

• Un microcontrolador de la gama media de los PIC16 puede tener hasta 2 módulos CCP.
• Cada módulo CCP tiene un registro de 16 bits que se puede utilizar de 3 formas distintas:
1. Como registro de 16 bits para captura de tiempo al producirse un evento.
2. Como registro de 16 bits para compararlo con el valor de cuenta del temporizador
TMR1, pudiendo provocar un evento cuando se alcanza el valor contenido en este
registro.
3. Como registro de 10 bits del ciclo de trabajo de una señal PWM generada por el
microcontrolador.
• Los 2 módulos CCP disponibles se comportan casi idénticamente, salvo el caso del
funcionamiento por disparo de evento especial (special event trigger) que tiene una
pequeña diferencia si se trata del módulo CCP1 ó del módulo CCP2.
• Tras un reset, el módulo CCP está apagado (al forzar los bits de configuración al valor 0).
• En las siguientes transparencias se describirá el funcionamiento de CCP1. El
funcionamiento de CCP2 es idéntico (salvo la excepción indicada anteriormente) pero cada
uno tiene sus propios registros de carga y configuración (véase tabla adjunta).
Módulos CCP
©ATE-Universidad de Oviedo
3
La siguiente tabla muestra qué temporizadores utiliza el módulo CCP en cada uno de sus
modos de funcionamiento:
MÓDULO CCP (Captura/Comparación/PWM)
La siguiente tabla muestra las posibles interacciones entre los módulos CCP, donde CCPx
es uno de los módulos y CCPy es el otro:
Módulos CCP
©ATE-Universidad de Oviedo
4
CCPxCON -- CCP1CON (17h) Y CCP2CON (1Dh):
Registros de control de cada módulo CCP
bit 7-6 No implementados: Leídos como ‘0’.
bit 5-4 DCxB1:DCxB0: Bits 0 y 1 del valor que
fija el ciclo de trabajo en el modo PWM.
Modo Captura:
No se usa
Modo Comparación:
No se usa
Modo PWM:
Estos bits son los 2 LSBs para el
ciclo de trabajo. Los 8 bits más
significativos están en CCPRxL.
bit 3-0 CCPxM3:CCPxM0: Bits de selección
del modo de funcionamiento del módulo
CCPx:
0000= Captura/Comparación/PWM off
(resetea el módulo CCPx)
0100= Modo Captura, cada flanco de bajada
0101= Modo Captura, cada flanco de subida
0110= Modo Captura, cada 4 flancos de subida
0111= Modo Captura, cada 16 flancos de subida
1000= Modo comparación, el pin CCPx se pone a “1” cuando
TMR1 alcanza el valor del registro de 16 bits
(CCPRxH:CCPRxL). El bit CCPIF se pone a 1.
1001= Modo comparación, el pin CCPx se pone a “0” cuando
TMR1 alcanza el valor del registro de 16 bits
(CCPRxH:CCPRxL). El bit CCPIF se pone a 1.
1010= Modo comparación, generación de interrupción
software cuando se produce la igualdad. CCPIF se pone a 1.
El pin CCPx no se ve afectado.
1011= Modo comparación, generación de disparo de evento
especial (special event trigger). CCPIF se pone a 1. El pin
CCPx no se ve afectado. CCP1 resetea el TMR1; CCP2
resetea el TMR1 y lanza una conversión A/D nueva (si el
módulo del conversor A/D está habilitado.
11xx= modo PWM

Você também pode gostar