PIC18F1230/1330
2009 Microchip Technology Inc.
DS39758D-page 129
14.5
PWM Period
The PWM period is defined by the PTPER register pair
(PTPERL and PTPERH). The PWM period has 12-bit
resolution by combining 4 LSBs of PTPERH and 8 bits
of PTPERL. PTPER is a double-buffered register used
to set the counting period for the PWM time base.
The PTPER buffer contents are loaded into the PTPER
register at the following times:
Free-Running and Single-Shot modes: When the
PTMR register is reset to zero after a match with the
PTPER register.
Continuous Up/Down Count modes: When the
PTMR register is zero. The value held in the PTPER
buffer is automatically loaded into the PTPER
register when the PWM time base is disabled
the times when the contents of the PTPER buffer
are loaded into the actual PTPER register.
The PWM period can be calculated from the following
formulas:
EQUATION 14-1:
PWM PERIOD FOR
FREE-RUNNING MODE
EQUATION 14-2:
PWM PERIOD FOR
CONTINUOUS UP/DOWN
COUNT MODE
The PWM frequency is the inverse of period; or
EQUATION 14-3:
PWM FREQUENCY
The maximum resolution (in bits) for a given device
oscillator and PWM frequency can be determined from
the following formula:
EQUATION 14-4:
PWM RESOLUTION
The PWM resolutions and frequencies are shown for a
selection of execution speeds and PTPER values in
calculated for Edge-Aligned PWM mode. For Center-
Aligned mode, the PWM frequencies will be
approximately one-half the values indicated in this
table.
TABLE 14-2:
EXAMPLE PWM
FREQUENCIES AND
RESOLUTIONS
TPWM =
(PTPER + 1) x PTMRPS
FOSC/4
TPWM =
(2 x PTPER) x PTMRPS
FOSC
4
PWM Frequency =
1
PWM Period
PWM Frequency = 1/TPWM
FOSC
MIPS
PTPER
Value
PWM
Resolution
PWM
Frequency
40 MHz
10
0FFFh
14 bits
2.4 kHz
40 MHz
10
07FFh
13 bits
4.9 kHz
40 MHz
10
03FFh
12 bits
9.8 kHz
40 MHz
10
01FFh
11 bits
19.5 kHz
40 MHz
10
FFh
10 bits
39.0 kHz
40 MHz
10
7Fh
9 bits
78.1 kHz
40 MHz
10
3Fh
8 bits
156.2 kHz
40 MHz
10
1Fh
7 bits
312.5 kHz
40 MHz
10
0Fh
6 bits
625 kHz
25 MHz
6.25
0FFFh
14 bits
1.5 kHz
25 MHz
6.25
03FFh
12 bits
6.1 kHz
25 MHz
6.25
FFh
10 bits
24.4 kHz
10 MHz
2.5
0FFFh
14 bits
610 Hz
10 MHz
2.5
03FFh
12 bits
2.4 kHz
10 MHz
2.5
FFh
10 bits
9.8 kHz
5 MHz
1.25
0FFFh
14 bits
305 Hz
5 MHz
1.25
03FFh
12 bits
1.2 kHz
5 MHz
1.25
FFh
10 bits
4.9 kHz
4 MHz
1
0FFFh
14 bits
244 Hz
4 MHz
1
03FFh
12 bits
976 Hz
4 MHz
1
FFh
10 bits
3.9 kHz
Note:
For
center-aligned
operation,
PWM
frequencies will be approximately 1/2 the
value indicated in the table.
Resolution =
log(2)
log
FOSC
FPWM