Microchip Technology MCP1631RD-MCC2 Data Sheet
PIC16F882/883/884/886/887
DS41291G-page 132
2006-2012 Microchip Technology Inc.
11.5
PWM Mode
The PWM mode generates a Pulse-Width Modulated
signal on the CCPx pin. The duty cycle, period and
resolution are determined by the following registers:
• PR2
• T2CON
• CCPRxL
• CCPxCON
In Pulse-Width Modulation (PWM) mode, the CCP
module produces up to a 10-bit resolution PWM output
on the CCPx pin. Since the CCPx pin is multiplexed
with the PORT data latch, the TRIS for that pin must be
cleared to enable the CCPx pin output driver.
signal on the CCPx pin. The duty cycle, period and
resolution are determined by the following registers:
• PR2
• T2CON
• CCPRxL
• CCPxCON
In Pulse-Width Modulation (PWM) mode, the CCP
module produces up to a 10-bit resolution PWM output
on the CCPx pin. Since the CCPx pin is multiplexed
with the PORT data latch, the TRIS for that pin must be
cleared to enable the CCPx pin output driver.
shows a simplified block diagram of PWM
operation.
shows a typical waveform of the PWM
.
FIGURE 11-3:
SIMPLIFIED PWM BLOCK
DIAGRAM
DIAGRAM
The PWM output (
) has a time base
(period) and a time that the output stays high (duty
cycle).
cycle).
FIGURE 11-4:
CCP PWM OUTPUT
11.5.1
PWM PERIOD
The PWM period is specified by the PR2 register of
Timer2. The PWM period can be calculated using the
formula of
Timer2. The PWM period can be calculated using the
formula of
.
EQUATION 11-1:
PWM PERIOD
When TMR2 is equal to PR2, the following three events
occur on the next increment cycle:
• TMR2 is cleared
• The CCPx pin is set. (Exception: If the PWM duty
occur on the next increment cycle:
• TMR2 is cleared
• The CCPx pin is set. (Exception: If the PWM duty
cycle = 0%, the pin will not be set.)
• The PWM duty cycle is latched from CCPRxL into
CCPRxH.
Note:
Clearing the CCPxCON register will
relinquish CCPx control of the CCPx pin.
relinquish CCPx control of the CCPx pin.
CCPRxL
CCPRxH
(2)
(Slave)
Comparator
TMR2
PR2
(1)
R
Q
S
Duty Cycle Registers
CCPxCON<5:4>
Clear Timer2,
toggle CCPx pin and
latch duty cycle
Note 1:
The 8-bit timer TMR2 register is concatenated
with the 2-bit internal system clock (F
with the 2-bit internal system clock (F
OSC
), or
2 bits of the prescaler, to create the 10-bit time
base.
base.
2:
In PWM mode, CCPRxH is a read-only register.
TRIS
CCPx
Comparator
Note:
) is not used in the
determination of the PWM frequency.
Period
Pulse Width
TMR2 = 0
TMR2 = CCPRxL:CCPxCON<5:4>
TMR2 = PR2
PWM Period
PR2
1
+
4 T
OSC
=
(TMR2 Prescale Value)
Note:
T
OSC
= 1/F
OSC