English
Language : 

PIC16LF1526 Datasheet, PDF (194/354 Pages) Microchip Technology – 64-Pin Flash Microcontrollers with nanoWatt XLP Technology
PIC16(L)F1526/27
20.3.5 PWM DUTY CYCLE
The PWM duty cycle is specified by writing a 10-bit
value to multiple registers: CCPRxL register and
DCxB<1:0> bits of the CCPxCON register. The
CCPRxL contains the eight MSbs and the DCxB<1:0>
bits of the CCPxCON register contain the two LSbs.
CCPRxL and DCxB<1:0> bits of the CCPxCON
register can be written to at any time. The duty cycle
value is not latched into CCPRxH until after the period
completes (i.e., a match between PRx and TMRx
registers occurs). While using the PWM, the CCPRxH
register is read-only.
Equation 20-2 is used to calculate the PWM pulse
width.
Equation 20-3 is used to calculate the PWM duty cycle
ratio.
EQUATION 20-2: PULSE WIDTH
Pulse Width = CCPRxL:CCPxCON<5:4> 
TOSC  (TMRx Prescale Value)
The CCPRxH register and a 2-bit internal latch are
used to double buffer the PWM duty cycle. This double
buffering is essential for glitchless PWM operation.
The 8-bit timer TMRx register is concatenated with either
the 2-bit internal system clock (FOSC), or 2 bits of the
prescaler, to create the 10-bit time base. The system
clock is used if the Timer2/4/6/8/10 prescaler is set to
1:1.
When the 10-bit time base matches the CCPRxH and
2-bit latch, then the CCPx pin is cleared (see
Figure 20-4).
20.3.6 PWM RESOLUTION
The resolution determines the number of available duty
cycles for a given period. For example, a 10-bit resolution
will result in 1024 discrete duty cycles, whereas an 8-bit
resolution will result in 256 discrete duty cycles.
The maximum PWM resolution is 10 bits when PRx is
255. The resolution is a function of the PRx register
value as shown by Equation 20-4.
EQUATION 20-4: PWM RESOLUTION
EQUATION 20-3: DUTY CYCLE RATIO
Duty Cycle Ratio = ---C----C----P----R---x---L-4--:--C-P---C-R---P-x---x--+-C----O1----N----<----5---:--4--->-----
Resolution = l--o---g------4---l-o--P-g---R---2-x----+------1------ bits
Note:
If the pulse width value is greater than the
period the assigned PWM pin(s) will
remain unchanged.
TABLE 20-7: EXAMPLE PWM FREQUENCIES AND RESOLUTIONS (FOSC = 20 MHz)
PWM Frequency
Timer Prescale (1, 4, 16)
PRx Value
Maximum Resolution (bits)
1.22 kHz
16
0xFF
10
4.88 kHz
4
0xFF
10
19.53 kHz
1
0xFF
10
78.12 kHz
1
0x3F
8
156.3 kHz
1
0x1F
7
208.3 kHz
1
0x17
6.6
TABLE 20-8: EXAMPLE PWM FREQUENCIES AND RESOLUTIONS (FOSC = 8 MHz)
PWM Frequency
Timer Prescale (1, 4, 16)
PRx Value
Maximum Resolution (bits)
1.22 kHz
16
0x65
8
4.90 kHz
4
0x65
8
19.61 kHz
1
0x65
8
76.92 kHz
1
0x19
6
153.85 kHz
1
0x0C
5
200.0 kHz
1
0x09
5
DS41458A-page 194
Preliminary
 2011 Microchip Technology Inc.