English
Language : 

PIC18F87K90 Datasheet, PDF (247/566 Pages) Microchip Technology – 64/80-Pin, High-Performance Microcontrollers with LCD Driver and nanoWatt XLP Technology
PIC18F87K90 FAMILY
18.4.3 SETUP FOR PWM OPERATION
To configure the CCP module for PWM operation (with
CCP4 as an example):
1. Set the PWM period by writing to the PR2
register.
2. Set the PWM duty cycle by writing to the
CCPR4L register and CCP4CON<5:4> bits.
3. Make the CCP4 pin an output by clearing the
appropriate TRIS bit.
4. Set the TMR2 prescale value, then enable
Timer2 by writing to T2CON.
5. Configure the CCP4 module for PWM operation.
TABLE 18-7: REGISTERS ASSOCIATED WITH PWM AND TIMERS
Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Reset
Values
on Page:
INTCON
GIE/GIEH PEIE/GIEL TMR0IE INT0IE
RBIE
TMR0IF INT0IF
RBIF
73
RCON
PIR4
PIE4
IPR4
IPEN
SBOREN
CM
RI
TO
PD
POR
BOR
74
CCP10IF(1) CCP9IF(1) CCP8IF CCP7IF CCP6IF CCP5IF CCP4IF CCP3IF
75
CCP10IE(1) CCP9IE(1) CCP8IE CCP7IE CCP6IE CCP5IE CCP4IE CCP3IE
75
CCP10IP(1) CCP9IP(1) CCP8IP CCP7IP CCP6IP CCP5IP CCP4IP CCP3IP
75
TRISB
TRISB7 TRISB6 TRISB5 TRISB4 TRISB3 TRISB2 TRISB1 TRISB0
76
TRISC
TRISC7 TRISC6 TRISC5 TRISC4 TRISC3 TRISC2 TRISC1 TRISC0
76
TRISE
TRISE7 TRISE6 TRISE5 TRISE4 TRISE3 TRISE2 TRISE1 TRISE0
76
TRISH
TRISH7 TRISH6 TRISH5 TRISH4 TRISH3 TRISH2 TRISH1 TRISH0
76
TMR2
Timer2 Register
74
TMR4
Timer4 Register
80
TMR6
Timer6 Register
79
TMR8
Timer8 Register
79
PR2
Timer2 Period Register
74
PR4
Timer4 Period Register
80
PR6
Timer6 Period Register
79
PR8
Timer8 Period Register
79
T2CON
—
T2OUTPS3 T2OUTPS2 T2OUTPS1 T2OUTPS0 TMR2ON T2CKPS1 T2CKPS0 74
T4CON
—
T4OUTPS3 T4OUTPS2 T4OUTPS1 T4OUTPS0 TMR4ON T4CKPS1 T4CKPS0 80
T6CON
—
T6OUTPS3 T6OUTPS2 T6OUTPS1 T6OUTPS0 TMR6ON T6CKPS1 T6CKPS0 79
T8CON
—
T8OUTPS3 T8OUTPS2 T8OUTPS1 T8OUTPS0 TMR8ON T8CKPS1 T8CKPS0 79
CCPR4L
Capture/Compare/PWM Register 4 Low Byte
80
CCPR4H
Capture/Compare/PWM Register 4 High Byte
80
CCPR5L
Capture/Compare/PWM Register 5 Low Byte
80
CCPR5H
Capture/Compare/PWM Register 5 High Byte
80
CCPR6L
Capture/Compare/PWM Register 6 Low Byte
80
CCPR6H
Capture/Compare/PWM Register 6 High Byte
80
CCPR7L
Capture/Compare/PWM Register 7 Low Byte
80
CCPR7H
Capture/Compare/PWM Register 7 High Byte
80
CCPR8L
Capture/Compare/PWM Register 8 Low Byte
78
CCPR8H
Capture/Compare/PWM Register 8 High Byte
78
CCPR9L(1) Capture/Compare/PWM Register 9 Low Byte
78
CCPR9H(1) Capture/Compare/PWM Register 9 High Byte
78
CCPR10L(1) Capture/Compare/PWM Register 10 Low Byte
79
Legend: — = unimplemented, read as ‘0’. Shaded cells are not used by PWM or Timer2/4/6/8.
Note 1: Unimplemented on devices with a program memory of 32 Kbytes (PIC18FX5K90).
 2010 Microchip Technology Inc.
Preliminary
DS39957B-page 247