Professional Documents
Culture Documents
Data Sheet
High-Performance, 16-bit
Microcontrollers
Preliminary
DS70175D
Note the following details of the code protection feature on Microchip devices:
Microchip products meet the specification contained in their particular Microchip Data Sheet.
Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchips Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
Microchip is willing to work with the customer who is concerned about the integrity of their code.
Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as unbreakable.
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchips code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.
Trademarks
The Microchip name and logo, the Microchip logo, Accuron,
dsPIC, KEELOQ, microID, MPLAB, PIC, PICmicro, PICSTART,
PRO MATE, PowerSmart, rfPIC and SmartShunt are
registered trademarks of Microchip Technology Incorporated
in the U.S.A. and other countries.
AmpLab, FilterLab, Migratable Memory, MXDEV, MXLAB,
SEEVAL, SmartSensor and The Embedded Control Solutions
Company are registered trademarks of Microchip Technology
Incorporated in the U.S.A.
Analog-for-the-Digital Age, Application Maestro, CodeGuard,
dsPICDEM, dsPICDEM.net, dsPICworks, ECAN,
ECONOMONITOR, FanSense, FlexROM, fuzzyLAB,
In-Circuit Serial Programming, ICSP, ICEPIC, Linear Active
Thermistor, Mindi, MiWi, MPASM, MPLIB, MPLINK, PICkit,
PICDEM, PICDEM.net, PICLAB, PICtail, PowerCal,
PowerInfo, PowerMate, PowerTool, REAL ICE, rfLAB,
rfPICDEM, Select Mode, Smart Serial, SmartTel, Total
Endurance, UNI/O, WiperLock and ZENA are trademarks of
Microchip Technology Incorporated in the U.S.A. and other
countries.
SQTP is a service mark of Microchip Technology Incorporated
in the U.S.A.
All other trademarks mentioned herein are property of their
respective companies.
2006, Microchip Technology Incorporated, Printed in the
U.S.A., All Rights Reserved.
Printed on recycled paper.
DS70175D-page ii
Preliminary
PIC24H
High-Performance, 16-bit Microcontrollers
Operating Range:
Interrupt Controller:
5-cycle latency
118 interrupt vectors
Up to 61 available interrupt sources
Up to 5 external interrupts
7 programmable priority levels
5 processor exceptions
System Management:
Flexible clock options:
- External, crystal, resonator, internal RC
- Fully integrated PLL
- Extremely low jitter PLL
Power-up Timer
Oscillator Start-up Timer/Stabilizer
Watchdog Timer with its own RC oscillator
Fail-Safe Clock Monitor
Reset by multiple sources
Power Management:
On-chip 2.5V voltage regulator
Switch between clock sources in real time
Idle, Sleep and Doze modes with fast wake-up
Timers/Capture/Compare/PWM:
Timer/Counters, up to nine 16-bit timers:
- Can pair up to make four 32-bit timers
- 1 timer runs as Real-Time Clock with external
32.768 kHz oscillator
- Programmable prescaler
Input Capture (up to 8 channels):
- Capture on up, down or both edges
- 16-bit capture input functions
- 4-deep FIFO on each capture
Output Compare (up to 8 channels):
- Single or Dual 16-Bit Compare mode
- 16-bit Glitchless PWM mode
Digital I/O:
Preliminary
DS70175D-page 1
PIC24H
Communication Modules:
Analog-to-Digital Converters:
DS70175D-page 2
Packaging:
100-pin TQFP (14x14x1 mm and 12x12x1 mm)
64-pin TQFP (10x10x1 mm)
Note:
Preliminary
PIC24H
PIC24H PRODUCT FAMILIES
The PIC24H General Purpose Family is ideal for a wide
variety of 16-bit MCU embedded applications. The
device names, pin counts, memory sizes and peripheral availability of each family are listed below, followed
by their pinout diagrams.
Pins
Program
Flash
Memory (KB)
RAM(1) (KB)
DMA Channels
Timer 16-bit
Input Capture
Output Compare
Std. PWM
Codec
Interface
ADC
UART
SPI
I2C
CAN
Packages
PIC24HJ64GP206
64
64
1 ADC,
18 ch
53
PT
PIC24HJ64GP210
100
64
1 ADC,
32 ch
85
PF, PT
PIC24HJ64GP506
64
64
1 ADC,
18 ch
53
PT
PIC24HJ64GP510
100
64
1 ADC,
32 ch
85
PF, PT
PIC24HJ128GP206
64
128
1 ADC,
18 ch
53
PT
PIC24HJ128GP210
100
128
1 ADC,
32 ch
85
PF, PT
PIC24HJ128GP506
64
128
1 ADC,
18 ch
53
PT
PIC24HJ128GP510
100
128
1 ADC,
32 ch
85
PF, PT
PIC24HJ128GP306
64
128
16
1 ADC,
18 ch
53
PT
PIC24HJ128GP310
100
128
16
1 ADC,
32 ch
85
PF, PT
PIC24HJ256GP206
64
256
16
1 ADC,
18 ch
53
PT
PIC24HJ256GP210
100
256
16
1 ADC,
32 ch
85
PF, PT
PIC24HJ256GP610
100
256
16
2 ADC,
32 ch
85
PF, PT
Device
Note 1:
2:
Preliminary
DS70175D-page 3
PIC24H
Pin Diagrams
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
RG13
RG12
RG14
RG0
RG1
RF1
RF0
VDD
VDDCORE
OC8/CN16/RD7
OC7/CN15/RD6
OC6/IC6/CN14/RD5
OC5/IC5/CN13/RD4
OC4/RD3
OC3/RD2
OC2/RD1
64-Pin TQFP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
PIC24HJ64GP206
PIC24HJ128GP206
PIC24HJ256GP206
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
PGC2/EMUC2/SOSCO/T1CK/CN0/RC14
PGD2/EMUD2/SOSCI/T4CK/CN1/RC13
OC1/RD0
IC4/INT4/RD11
IC3/INT3/RD10
IC2/U1CTS/INT2/RD9
IC1/INT1/RD8
VSS
OSC2/CLKO/RC15
OSC1/CLKIN/RC12
VDD
SCL1/RG2
SDA1/RG3
U1RTS/SCK1/INT0/RF6
U1RX/SDI1/RF2
U1TX/SDO1/RF3
PGC1/EMUC1/AN6/OCFA/RB6
PGD1/EMUD1/AN7/RB7
AVDD
AVSS
U2CTS/AN8/RB8
AN9/RB9
TMS/AN10/RB10
TDO/AN11/RB11
VSS
VDD
TCK/AN12/RB12
TDI/AN13/RB13
U2RTS/AN14/RB14
AN15/OCFB/CN12/RB15
U2RX/CN17/RF4
U2TX/CN18/RF5
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
RG15
AN16/T2CK/T7CK/RC1
AN17/T3CK/T6CK/RC2
SCK2/CN8/RG6
SDI2/CN9/RG7
SDO2/CN10/RG8
MCLR
SS2/T5CK/CN11/RG9
VSS
VDD
AN5/IC8/CN7/RB5
AN4/IC7/CN6/RB4
AN3/CN5/RB3
AN2/SS1/CN4/RB2
PGC3/EMUC3/AN1/VREF-/CN3/RB1
PGD3/EMUD3/AN0/VREF+/CN2/RB0
Note:
DS70175D-page 4
The PIC24HJ64GP206 device does not have the SCL2 and SDA2 pins.
Preliminary
PIC24H
Pin Diagrams (Continued)
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
RG13
RG12
RG14
RG0
RG1
RF1
RF0
VDD
VDDCORE
OC8/CN16/RD7
OC7/CN15/RD6
OC6/IC6/CN14/RD5
OC5/IC5/CN13/RD4
OC4/RD3
OC3/RD2
OC2/RD1
64-Pin TQFP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
PIC24HJ128GP306
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
PGC2/EMUC2/SOSCO/T1CK/CN0/RC14
PGD2/EMUD2/SOSCI/T4CK/CN1/RC13
OC1/RD0
IC4/INT4/RD11
IC3/INT3/RD10
IC2/U1CTS/INT2/RD9
IC1/INT1/RD8
VSS
OSC2/CLKO/RC15
OSC1/CLKIN/RC12
VDD
SCL1/RG2
SDA1/RG3
U1RTS/SCK1/INT0/RF6
U1RX/SDI1/RF2
U1TX/SDO1/RF3
PGC1/EMUC1/AN6/OCFA/RB6
PGD1/EMUD1/AN7/RB7
AVDD
AVSS
U2CTS/AN8/RB8
AN9/RB9
TMS/AN10/RB10
TDO/AN11/RB11
VSS
VDD
TCK/AN12/RB12
TDI/AN13/RB13
U2RTS/AN14/RB14
AN15/OCFB/CN12/RB15
U2RX/SDA2/CN17/RF4
U2TX/SCL2/CN18/RF5
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
RG15
AN16/T2CK/T7CK/RC1
AN17/T3CK/T6CK/RC2
SCK2/CN8/RG6
SDI2/CN9/RG7
SDO2/CN10/RG8
MCLR
SS2/T5CK/CN11/RG9
VSS
VDD
AN5/IC8/CN7/RB5
AN4/IC7/CN6/RB4
AN3/CN5/RB3
AN2/SS1/CN4/RB2
PGC3/EMUC3/AN1/VREF-/CN3/RB1
PGD3/EMUD3/AN0/VREF+/CN2/RB0
Preliminary
DS70175D-page 5
PIC24H
Pin Diagrams (Continued)
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
CSDO/RG13
CSDI/RG12
CSCK/RG14
RG0
RG1
C1TX/RF1
C1RX/RF0
VDD
VDDCORE
OC8/CN16/RD7
OC7/CN15/RD6
OC6/IC6/CN14/RD5
OC5/IC5/CN13/RD4
OC4/RD3
OC3/RD2
OC2/RD1
64-Pin TQFP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
PIC24HJ64GP506
PIC24HJ128GP506
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
PGC2/EMUC2/SOSCO/T1CK/CN0/RC14
PGD2/EMUD2/SOSCI/T4CK/CN1/RC13
OC1/RD0
IC4/INT4/RD11
IC3/INT3/RD10
IC2/U1CTS/INT2/RD9
IC1/INT1/RD8
VSS
OSC2/CLKO/RC15
OSC1/CLKIN/RC12
VDD
SCL1/RG2
SDA1/RG3
U1RTS/SCK1/INT0/RF6
U1RX/SDI1/RF2
U1TX/SDO1/RF3
PGC1/EMUC1/AN6/OCFA/RB6
PGD1/EMUD1/AN7/RB7
AVDD
AVSS
U2CTS/AN8/RB8
AN9/RB9
TMS/AN10/RB10
TDO/AN11/RB11
VSS
VDD
TCK/AN12/RB12
TDI/AN13/RB13
U2RTS/AN14/RB14
AN15/OCFB/CN12/RB15
U2RX/SDA2/CN17/RF4
U2TX/SCL2/CN18/RF5
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
COFS/RG15
AN16/T2CK/T7CK/RC1
AN17/T3CK/T6CK/RC2
SCK2/CN8/RG6
SDI2/CN9/RG7
SDO2/CN10/RG8
MCLR
SS2/T5CK/CN11/RG9
VSS
VDD
AN5/IC8/CN7/RB5
AN4/IC7/CN6/RB4
AN3/CN5/RB3
AN2/SS1/CN4/RB2
PGC3/EMUC3/AN1/VREF-/CN3/RB1
PGD3/EMUD3/AN0/VREF+/CN2/RB0
DS70175D-page 6
Preliminary
PIC24H
Pin Diagrams (Continued)
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
AN28/RE4
AN27/RE3
AN26/RE2
RG13
RG12
RG14
AN25/RE1
AN24/RE0
AN23/CN23/RA7
AN22/CN22/RA6
RG0
RG1
RF1
RF0
VDD
VDDCORE
OC8/CN16/RD7
OC7/CN15/RD6
OC6/CN14/RD5
OC5/CN13/RD4
IC6/CN19/RD13
IC5/RD12
OC4/RD3
OC3/RD2
OC2/RD1
100-Pin TQFP
RG15
VDD
AN29/RE5
AN30/RE6
AN31/RE7
AN16/T2CK/T7CK/RC1
AN17/T3CK/T6CK/RC2
AN18/T4CK/T9CK/RC3
AN19/T5CK/T8CK/RC4
SCK2/CN8/RG6
SDI2/CN9/RG7
SDO2/CN10/RG8
MCLR
SS2/CN11/RG9
VSS
VDD
TMS/RA0
AN20/INT1/RA12
AN21/INT2/RA13
AN5/CN7/RB5
AN4/CN6/RB4
AN3/CN5/RB3
AN2/SS1/CN4/RB2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
PGD3/EMUD3/AN0/CN2/RB0
25
VSS
73
PGD2/EMUD2/SOSCI/CN1/RC13
OC1/RD0
IC4/RD11
72
71
70
69
68
67
66
PIC24HJ64GP210
PIC24HJ128GP210
PIC24HJ128GP310
PIC24HJ256GP210
65
64
63
62
PGC2/EMUC2/SOSCO/T1CK/CN0/RC14
IC3/RD10
IC2/RD9
IC1/RD8
INT4/RA15
INT3/RA14
VSS
61
60
OSC2/CLKO/RC15
OSC1/CLKIN/RC12
VDD
TDO/RA5
TDI/RA4
59
58
SDA2/RA3
SCL2/RA2
57
56
55
SCL1/RG2
SDA1/RG3
SCK1/INT0/RF6
54
53
52
51
SDI1/RF7
SDO1/RF8
U1RX/RF2
U1TX/RF3
PGC1/EMUC1/AN6/OCFA/RB6
PGD1/EMUD1/AN7/RB7
VREF-/RA9
VREF+/RA10
AVDD
AVSS
AN8/RB8
AN9/RB9
AN10/RB10
AN11/RB11
VSS
VDD
TCK/RA1
U2RTS/RF13
U2CTS/RF12
AN12/RB12
AN13/RB13
AN14/RB14
AN15/OCFB/CN12/RB15
VSS
VDD
IC7/U1CTS/CN20/RD14
IC8/U1RTS/CN21/RD15
U2RX/CN17/RF4
U2TX/CN18/RF5
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
PGC3/EMUC3/AN1/CN3/RB1
23
24
75
74
Preliminary
DS70175D-page 7
PIC24H
Pin Diagrams (Continued)
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
AN28/RE4
AN27/RE3
AN26/RE2
RG13
RG12
RG14
AN25/RE1
AN24/RE0
AN23/CN23/RA7
AN22/CN22/RA6
RG0
RG1
C1TX/RF1
C1RX/RF0
VDD
VDDCORE
OC8/CN16/RD7
OC7/CN15/RD6
OC6/CN14/RD5
OC5/CN13/RD4
IC6/CN19/RD13
IC5/RD12
OC4/RD3
OC3/RD2
OC2/RD1
100-Pin TQFP
RG15
VDD
AN29/RE5
AN30/RE6
AN31/RE7
AN16/T2CK/T7CK/RC1
AN17/T3CK/T6CK/RC2
AN18/T4CK/T9CK/RC3
AN19/T5CK/T8CK/RC4
SCK2/CN8/RG6
SDI2/CN9/RG7
SDO2/CN10/RG8
MCLR
SS2/CN11/RG9
VSS
VDD
TMS/RA0
AN20/INT1/RA12
AN21/INT2/RA13
AN5/CN7/RB5
AN4/CN6/RB4
AN3/CN5/RB3
AN2/SS1/CN4/RB2
PGC3/EMUC3/AN1/CN3/RB1
75
74
VSS
PGC2/EMUC2/SOSCO/T1CK/CN0/RC14
73
PGD2/EMUD2/SOSCI/CN1/RC13
OC1/RD0
5
6
7
8
9
71
70
69
68
67
66
72
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
PIC24HJ64GP510
PIC24HJ128GP510
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
IC4/RD11
IC3/RD10
IC2/RD9
IC1/RD8
INT4/RA15
INT3/RA14
VSS
OSC2/CLKO/RC15
OSC1/CLKIN/RC12
VDD
TDO/RA5
TDI/RA4
SDA2/RA3
SCL2/RA2
SCL1/RG2
SDA1/RG3
SCK1/INT0/RF6
SDI1/RF7
SDO1/RF8
U1RX/RF2
U1TX/RF3
PGC1/EMUC1/AN6/OCFA/RB6
PGD1/EMUD1/AN7/RB7
VREF-/RA9
VREF+/RA10
AVDD
AVSS
AN8/RB8
AN9/RB9
AN10/RB10
AN11/RB11
VSS
VDD
TCK/RA1
U2RTS/RF13
U2CTS/RF12
AN12/RB12
AN13/RB13
AN14/RB14
AN15/OCFB/CN12/RB15
VSS
VDD
IC7/U1CTS/CN20/RD14
IC8/U1RTS/CN21/RD15
U2RX/CN17/RF4
U2TX/CN18/RF5
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
PGD3/EMUD3/AN0/CN2/RB0
1
2
3
4
DS70175D-page 8
Preliminary
PIC24H
Pin Diagrams (Continued)
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
AN28/RE4
AN27/RE3
AN26/RE2
RG13
RG12
RG14
AN25/RE1
AN24/RE0
AN23/CN23/RA7
AN22/CN22/RA6
C2RX/RG0
C2TX/RG1
C1TX/RF1
C1RX/RF0
VDD
VDDCORE
OC8/CN16/RD7
OC7/CN15/RD6
OC6/CN14/RD5
OC5/CN13/RD4
IC6/CN19/RD13
IC5/RD12
OC4/RD3
OC3/RD2
OC2/RD1
100-Pin TQFP
RG15
VDD
AN29/RE5
AN30/RE6
AN31/RE7
AN16/T2CK/T7CK/RC1
AN17/T3CK/T6CK/RC2
AN18/T4CK/T9CK/RC3
AN19/T5CK/T8CK/RC4
SCK2/CN8/RG6
SDI2/CN9/RG7
SDO2/CN10/RG8
MCLR
SS2/CN11/RG9
VSS
VDD
TMS/RA0
AN20/INT1/RA12
AN21/INT2/RA13
AN5/CN7/RB5
AN4/CN6/RB4
75
VSS
2
3
4
5
6
7
8
9
10
11
12
74
73
PGC2/EMUC2/SOSCO/T1CK/CN0/RC14
PGD2/EMUD2/SOSCI/CN1/RC13
72
OC1/RD0
71
70
69
IC4/RD11
IC3/RD10
IC2/RD9
68
67
66
IC1/RD8
INT4/RA15
PIC24HJ256GP610
13
14
15
16
17
18
19
20
21
22
23
24
25
65
64
63
62
61
60
59
58
INT3/RA14
VSS
OSC2/CLKO/RC15
OSC1/CLKIN/RC12
VDD
TDO/RA5
TDI/RA4
SDA2/RA3
SCL2/RA2
57
56
55
54
SCL1/RG2
SDA1/RG3
SCK1/INT0/RF6
53
52
51
SDO1/RF8
U1RX/RF2
SDI1/RF7
U1TX/RF3
PGC1/EMUC1/AN6/OCFA/RB6
PGD1/EMUD1/AN7/RB7
VREF-/RA9
VREF+/RA10
AVDD
AVSS
AN8/RB8
AN9/RB9
AN10/RB10
AN11/RB11
VSS
VDD
TCK/RA1
U2RTS/RF13
U2CTS/RF12
AN12/RB12
AN13/RB13
AN14/RB14
AN15/OCFB/CN12/RB15
VSS
VDD
IC7/U1CTS/CN20/RD14
IC8/U1RTS/CN21/RD15
U2RX/CN17/RF4
U2TX/CN18/RF5
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
AN3/CN5/RB3
AN2/SS1/CN4/RB2
PGC3/EMUC3/AN1/CN3/RB1
PGD3/EMUD3/AN0/CN2/RB0
Preliminary
DS70175D-page 9
PIC24H
Table of Contents
1.0 Device Overview ........................................................................................................................................................................ 13
2.0 CPU ............................................................................................................................................................................................ 17
3.0 Memory Organization ................................................................................................................................................................. 25
4.0 Flash Program Memory .............................................................................................................................................................. 55
5.0 Resets ....................................................................................................................................................................................... 61
6.0 Interrupt Controller ..................................................................................................................................................................... 67
7.0 Direct Memory Access (DMA) .................................................................................................................................................. 113
8.0 Oscillator Configuration ............................................................................................................................................................ 127
9.0 Power-Saving Features ............................................................................................................................................................ 135
10.0 I/O Ports ................................................................................................................................................................................... 137
11.0 Timer1 ...................................................................................................................................................................................... 139
12.0 Timer2/3, Timer4/5, Timer6/7 and Timer8/9 ............................................................................................................................ 141
13.0 Input Capture............................................................................................................................................................................ 147
14.0 Output Compare ....................................................................................................................................................................... 149
15.0 Serial Peripheral Interface (SPI)............................................................................................................................................... 153
16.0 Inter-Integrated Circuit (I2C) ..................................................................................................................................................... 161
17.0 Universal Asynchronous Receiver Transmitter (UART) ........................................................................................................... 171
18.0 Enhanced CAN Module ............................................................................................................................................................ 179
19.0 10-bit/12-bit A/D Converter....................................................................................................................................................... 209
20.0 Special Features ...................................................................................................................................................................... 223
21.0 Instruction Set Summary .......................................................................................................................................................... 231
22.0 Development Support............................................................................................................................................................... 239
23.0 Electrical Characteristics .......................................................................................................................................................... 243
24.0 Packaging Information.............................................................................................................................................................. 277
Appendix A: Revision History............................................................................................................................................................. 281
Index ................................................................................................................................................................................................. 283
The Microchip Web Site ..................................................................................................................................................................... 287
Customer Change Notification Service .............................................................................................................................................. 287
Customer Support .............................................................................................................................................................................. 287
Reader Response .............................................................................................................................................................................. 288
Product Identification System............................................................................................................................................................. 289
Errata
An errata sheet, describing minor operational differences from the data sheet and recommended workarounds, may exist for current
devices. As device/documentation issues become known to us, we will publish an errata sheet. The errata will specify the revision
of silicon and revision of document to which it applies.
To determine if an errata sheet exists for a particular device, please check with one of the following:
Microchips Worldwide Web site; http://www.microchip.com
Your local Microchip sales office (see last page)
When contacting a sales office, please specify which device, revision of silicon and data sheet (include literature number) you are
using.
DS70175D-page 10
Preliminary
PIC24H
1.0
Note:
DEVICE OVERVIEW
This data sheet summarizes the features
of this group of PIC24H devices. It is not
intended to be a comprehensive reference
source. To complement the information in
this data sheet, refer to the dsPIC30F
Family Reference Manual (DS70046).
PIC24HJ64GP206
PIC24HJ64GP210
PIC24HJ64GP506
PIC24HJ64GP510
PIC24HJ128GP206
PIC24HJ128GP210
PIC24HJ128GP506
PIC24HJ128GP510
PIC24HJ128GP306
PIC24HJ128GP310
PIC24HJ256GP206
PIC24HJ256GP210
PIC24HJ256GP610
The PIC24H device family includes devices with different pin counts (64 and 100 pins), different program
memory sizes (64 Kbytes, 128 Kbytes and 256 Kbytes)
and different RAM sizes (8 Kbytes and 16 Kbytes).
This makes these families suitable for a wide variety of
high-performance digital signal control applications.
The devices are pin compatible with the dsPIC33F family of devices, and also share a very high degree of
compatibility with the dsPIC30F family devices. This
allows easy migration between device families as may
be necessitated by the specific functionality, computational resource and system cost requirements of the
application.
The PIC24H device family employs a powerful 16-bit
architecture, ideal for applications that rely on
high-speed, repetitive computations, as well as control.
The 17 x 17 multiplier, hardware support for division
operations, multi-bit data shifter, a large array of 16-bit
working registers and a wide variety of data addressing
modes, together provide the PIC24H Central
Processing Unit (CPU) with extensive mathematical
processing capability. Flexible and deterministic
interrupt handling, coupled with a powerful array of
peripherals, renders the PIC24H devices suitable for
Preliminary
DS70175D-page 13
PIC24H
FIGURE 1-1:
Interrupt
Controller
PORTA
16
16
16
DMA
RAM
Data Latch
23
PCU PCH PCL
Program Counter
Loop
Stack
Control
Control
Logic
Logic
23
X RAM
PORTB
Address
Latch
DMA
23
16
Controller
16
PORTC
Address Latch
Program Memory
EA MUX
Address Bus
Data Latch
24
Instruction Reg
Control Signals
to Various Blocks
Timing
Generation
FRC/LPRC
Oscillators
Precision
Band Gap
Reference
Voltage
Regulator
VDDCORE/VCAP
Timers
1-9
IC1-8
Note:
Literal Data
16
Instruction
Decode &
Control
OSC2/CLKO
OSC1/CLKI
PORTD
ROM Latch
16
PORTE
16
17 x 17 Multiplier
Power-up
Timer
Divide Support
16 x 16
W Register Array
16
PORTF
Oscillator
Start-up Timer
Power-on
Reset
16-bit ALU
Watchdog
Timer
16
Brown-out
Reset
VDD, VSS
ADC1,2
OC/
PWM1-8
PORTG
MCLR
ECAN1,2
UART1,2
CN1-23
SPI1,2
I2C1,2
Not all pins or features are implemented on all device pinout configurations. See pinout diagrams for the specific pins
and features present on each device.
DS70175D-page 14
Preliminary
PIC24H
TABLE 1-1:
Buffer
Type
AN0-AN31
Analog
AVDD
AVSS
CLKI
CLKO
I
O
CN0-CN23
ST
C1RX
C1TX
C2RX
C2TX
I
O
I
O
ST
ST
PGD1/EMUD1
PGC1/EMUC1
PGD2/EMUD2
PGC2/EMUC2
PGD3/EMUD3
PGC3/EMUC3
I/O
I
I/O
I
I/O
I
ST
ST
ST
ST
ST
ST
Pin Name
Description
Analog input channels.
ST/CMOS External clock source input. Always associated with OSC1 pin function.
IC1-IC8
ST
INT0
INT1
INT2
INT3
INT4
I
I
I
I
I
ST
ST
ST
ST
ST
External interrupt 0.
External interrupt 1.
External interrupt 2.
External interrupt 3.
External interrupt 4.
MCLR
I/P
ST
Master Clear (Reset) input. This pin is an active-low Reset to the device.
OCFA
OCFB
OC1-OC8
I
I
O
ST
ST
OSC1
OSC2
I
I/O
RA0-RA7
RA9-RA10
RA12-RA15
I/O
I/O
I/O
ST/CMOS Oscillator crystal input. ST buffer when configured in RC mode; CMOS otherwise.
RB0-RB15
I/O
ST
RC1-RC4
RC12-RC15
I/O
I/O
ST
ST
RD0-RD15
I/O
ST
RE0-RE7
I/O
ST
RF0-RF8
RF12-RF13
I/O
ST
RG0-RG3
RG6-RG9
RG12-RG15
I/O
I/O
I/O
ST
ST
ST
Legend:
Preliminary
DS70175D-page 15
PIC24H
TABLE 1-1:
Buffer
Type
SCK1
SDI1
SDO1
SS1
SCK2
SDI2
SDO2
SS2
I/O
I
O
I/O
I/O
I
O
I/O
ST
ST
ST
ST
ST
ST
SCL1
SDA1
SCL2
SDA2
I/O
I/O
I/O
I/O
ST
ST
ST
ST
SOSCI
SOSCO
I
O
TMS
TCK
TDI
TDO
I
I
I
O
ST
ST
ST
T1CK
T2CK
T3CK
T4CK
T5CK
T6CK
T7CK
T8CK
T9CK
I
I
I
I
I
I
I
I
I
ST
ST
ST
ST
ST
ST
ST
ST
ST
U1CTS
U1RTS
U1RX
U1TX
U2CTS
U2RTS
U2RX
U2TX
I
O
I
O
I
O
I
O
ST
ST
ST
ST
VDD
VDDCORE
VSS
VREF+
Analog
Analog
Pin Name
VREFLegend:
Description
DS70175D-page 16
Preliminary
PIC24H
2.0
Note:
CPU
2.2
2.1
Preliminary
DS70175D-page 17
PIC24H
FIGURE 2-1:
Interrupt
Controller
8
16
16
16
Data Latch
DMA
23
23
X RAM
RAM
16
Address
Latch
23
16
DMA
Controller
Address Latch
Program Memory
EA MUX
Address Bus
Data Latch
ROM Latch
24
Control Signals
to Various Blocks
Instruction Reg
Literal Data
Instruction
Decode &
Control
16
16
16
17 x 17
Multiplier
Divide Support
16 x 16
W Register Array
16
16-bit ALU
16
To Peripheral Modules
DS70175D-page 18
Preliminary
PIC24H
FIGURE 2-2:
D0
W0/WREG
PUSH.S Shadow
W1
DO Shadow
W2
W3
Legend
W4
W5
W6
W7
Working Registers
W8
W9
W10
W11
W12
W13
W14/Frame Pointer
W15/Stack Pointer
SPLIM
PC22
PC0
Program Counter
0
0
TBLPAG
7
0
PSVPAG
0
RCOUNT
15
0
Core Configuration Register
CORCON
SRH
DC
OV
STATUS Register
SRL
Preliminary
DS70175D-page 19
PIC24H
2.3
REGISTER 2-1:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
R/W-0
DC
bit 15
bit 8
R/W-0(1)
R/W-0(2)
R/W-0(2)
(2)
IPL<2:0>
R-0
R/W-0
R/W-0
R/W-0
R/W-0
RA
OV
bit 7
bit 0
Legend:
C = Clear only bit
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-9
Unimplemented: Read as 0
bit 8
bit 7-5
bit 4
bit 3
bit 2
bit 1
Note 1: The IPL<2:0> bits are concatenated with the IPL<3> bit (CORCON<3>) to form the CPU Interrupt Priority
Level. The value in parentheses indicates the IPL if IPL<3> = 1. User interrupts are disabled when
IPL<3> = 1.
2: The IPL<2:0> Status bits are read only when NSTDIS = 1 (INTCON1<15>).
DS70175D-page 20
Preliminary
PIC24H
REGISTER 2-1:
bit 0
Note 1: The IPL<2:0> bits are concatenated with the IPL<3> bit (CORCON<3>) to form the CPU Interrupt Priority
Level. The value in parentheses indicates the IPL if IPL<3> = 1. User interrupts are disabled when
IPL<3> = 1.
2: The IPL<2:0> Status bits are read only when NSTDIS = 1 (INTCON1<15>).
Preliminary
DS70175D-page 21
PIC24H
REGISTER 2-2:
U-0
bit 15
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 8
U-0
U-0
R/C-0
IPL3(1)
R/W-0
PSV
U-0
bit 7
Legend:
R = Readable bit
0 = Bit is cleared
U-0
U-0
bit 0
-n = Value at POR
1 = Bit is set
U = Unimplemented bit, read as 0
bit 15-4
bit 3
Unimplemented: Read as 0
IPL3: CPU Interrupt Priority Level Status bit 3(1)
1 = CPU interrupt priority level is greater than 7
0 = CPU interrupt priority level is 7 or less
bit 2
PSV: Program Space Visibility in Data Space Enable bit
1 = Program space visible in data space
0 = Program space not visible in data space
bit 1-0
Unimplemented: Read as 0
Note 1: The IPL3 bit is concatenated with the IPL<2:0> bits (SR<7:5>) to form the CPU interrupt priority level.
DS70175D-page 22
Preliminary
PIC24H
2.4
2.4.3
The PIC24H ALU is 16 bits wide and is capable of addition, subtraction, bit shifts and logic operations. Unless
otherwise mentioned, arithmetic operations are 2s
complement in nature. Depending on the operation, the
ALU may affect the values of the Carry (C), Zero (Z),
Negative (N), Overflow (OV) and Digit Carry (DC) Status bits in the SR register. The C and DC Status bits
operate as Borrow and Digit Borrow bits, respectively,
for subtraction operations.
2.4.1
MULTIPLIER
2.4.2
DIVIDER
Preliminary
DS70175D-page 23
PIC24H
NOTES:
DS70175D-page 24
Preliminary
PIC24H
3.0
MEMORY ORGANIZATION
Note:
3.1
FIGURE 3-1:
PIC24HJ64XXXXX
GOTO Instruction
Reset Address
Interrupt Vector Table
Reserved
Alternate Vector Table
User Program
Flash Memory
(22K instructions)
PIC24HJ128XXXXX
GOTO Instruction
Reset Address
Interrupt Vector Table
Reserved
Alternate Vector Table
PIC24HJ256XXXXX
GOTO Instruction
Reset Address
Interrupt Vector Table
Reserved
Alternate Vector Table
User Program
Flash Memory
(44K instructions)
User Program
Flash Memory
(88K instructions)
0x000000
0x000002
0x000004
0x0000FE
0x000100
0x000104
0x0001FE
0x000200
0x00ABFE
0x00AC00
0x0157FE
0x015800
Unimplemented
(Read 0s)
Unimplemented
0x02ABFE
0x02AC00
(Read 0s)
Unimplemented
(Read 0s)
0x7FFFFE
0x800000
Reserved
Reserved
Reserved
Device Configuration
Registers
Device Configuration
Registers
Device Configuration
Registers
Reserved
Reserved
Reserved
DEVID (2)
DEVID (2)
DEVID (2)
Preliminary
0xF7FFFE
0xF80000
0xF80017
0xF80010
0xFEFFFE
0xFF0000
0xFFFFFE
DS70175D-page 25
PIC24H
3.1.1
PROGRAM MEMORY
ORGANIZATION
3.1.2
The program memory space is organized in wordaddressable blocks. Although it is treated as 24 bits
wide, it is more appropriate to think of each address of
the program memory as a lower and upper word, with
the upper byte of the upper word being unimplemented.
The lower word always has an even address, while the
upper word has an odd address (Figure 3-2).
FIGURE 3-2:
msw
Address
16
PC Address
(lsw Address)
0
0x000000
0x000002
0x000004
0x000006
00000000
00000000
00000000
00000000
Program Memory
Phantom Byte
(read as 0)
DS70175D-page 26
0x000001
0x000003
0x000005
0x000007
Instruction Width
Preliminary
PIC24H
3.2
3.2.1
3.2.3
The data memory space is organized in byte addressable, 16-bit wide blocks. Data is aligned in data
memory and registers as 16-bit words, but all data
space EAs resolve to bytes. The Least Significant
Bytes of each word have even addresses, while the
Most Significant Bytes have odd addresses.
3.2.2
SFR SPACE
3.2.4
Preliminary
DS70175D-page 27
PIC24H
FIGURE 3-3:
2-Kbyte
SFR Space
LSB
Address
16 bits
LSB
0x0000
0x0001
SFR Space
0x07FE
0x0800
0x07FF
0x0801
8-Kbyte
Near
Data
Space
8-Kbyte
SRAM Space
0x1FFF
0x2001
0x27FF
0x2801
0x1FFE
0x2000
DMA RAM
0x8001
0x8000
X Data
Unimplemented (X)
Optionally
Mapped
into Program
Memory
0xFFFF
DS70175D-page 28
0x27FE
0x2800
0xFFFE
Preliminary
PIC24H
FIGURE 3-4:
LSB
Address
16 bits
MSB
LSB
0x0000
0x0001
2-Kbyte
SFR Space
SFR Space
0x07FE
0x0800
0x07FF
0x0801
0x1FFF
8-Kbyte
Near
Data
Space
0x1FFE
X Data RAM (X)
16-Kbyte
SRAM Space
0x3FFF
0x4001
0x47FF
0x4801
0x3FFE
0x4000
DMA RAM
0x47FE
0x4800
0x8001
0x8000
X Data
Unimplemented (X)
Optionally
Mapped
into Program
Memory
0xFFFF
3.2.5
0xFFFE
DMA RAM
Preliminary
DS70175D-page 29
Preliminary
SFR Name
SFR
Addr
WREG0
0000
Working Register 0
0000
WREG1
0002
Working Register 1
0000
WREG2
0004
Working Register 2
0000
WREG3
0006
Working Register 3
0000
WREG4
0008
Working Register 4
0000
WREG5
000A
Working Register 5
0000
WREG6
000C
Working Register 6
0000
WREG7
000E
Working Register 7
0000
WREG8
0010
Working Register 8
0000
WREG9
0012
Working Register 9
0000
WREG10
0014
Working Register 10
0000
WREG11
0016
Working Register 11
0000
WREG12
0018
Working Register 12
0000
WREG13
001A
Working Register 13
0000
WREG14
001C
Working Register 14
0000
WREG15
001E
Working Register 15
0800
SPLIM
0020
xxxx
PCL
002E
PCH
0030
0000
TBLPAG
0032
0000
PSVPAG
0034
0000
RCOUNT
0036
SR
0042
DC
CORCON
0044
DISICNT
0052
BSRAM
0750
SSRAM
0752
Legend:
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
0000
xxxx
IPL<2:0>
RA
OV
0000
IPL3
PSV
0000
IW_BSR
IR_BSR
RL_BSR
0000
IW_SSR
IR_SSR
RL_SSR
0000
Bit 3
Bit 2
Bit 1
Bit 0
xxxx
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
TABLE 3-2:
SFR
Name
SFR
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
CNEN1
0060
CN15IE
CN14IE
CN13IE
CN12IE
CN11IE
CN10IE
CN9IE
CN8IE
CN7IE
CN6IE
CN5IE
CN4IE
CN3IE
CN2IE
CN1IE
CN0IE
0000
CNEN2
0062
CN23IE
CN22IE
CN21IE
CN20IE
CN19IE
CN18IE
CN17IE
CN16IE
0000
CN7PUE
CN6PUE
CN5PUE
CN4PUE
CN3PUE
CN2PUE
CN1PUE
CN0PUE
0000
0000
CNPU1
0068
CNPU2
006A
Legend:
CN8PUE
Bit 7
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
Bit 6
Bit 5
Bit 4
All
Resets
PIC24H
DS70175D-page 30
TABLE 3-1:
TABLE 3-3:
SFR
Name
SFR
Addr
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
0000
0000
OC1IF
IC1IF
INT0IF
0000
MI2C1IF
SI2C1IF
0000
0000
INT4EP
INT3EP
INT2EP
T3IF
T2IF
OC2IF
IC2IF
DMA0IF
T1IF
IC8IF
IC7IF
AD2IF
INT1IF
CNIF
DISI
IFS0
0084
DMA1IF
AD1IF
U1TXIF
U1RXIF
IFS1
0086
U2TXIF
U2RXIF
INT2IF
T5IF
T4IF
OC4IF
OC3IF
DMA2IF
ALTIVT
SPI1IF SPI1EIF
Bit 3
INT0EP
Bit 4
INT1EP
COVTE
0080
0082
Bit 5
OSCFAIL
OVBTE
INTCON1
Bit 6
All
Resets
Bit 8
INTCON2
Bit 7
Bit 0
Bit 9
Bit 2
Bit 1
IFS2
0088
T6IF
DMA4IF
OC8IF
OC7IF
OC6IF
OC5IF
IC6IF
IC5IF
IC4IF
IC3IF
DMA3IF
C1IF
C1RXIF
SPI2IF
SPI2EIF
IFS3
008A
DMA5IF
C2IF
C2RXIF
INT4IF
INT3IF
T9IF
T8IF
MI2C2IF
SI2C2IF
T7IF
0000
IFS4
008C
C2TXIF
C1TXIF
DMA7IF
DMA6IF
U2EIF
U1EIF
0000
IEC0
0094
DMA1IE
AD1IE
U1TXIE
U1RXIE
T3IE
T2IE
OC2IE
IC2IE
DMA0IE
T1IE
OC1IE
IC1IE
INT0IE
IEC1
0096
U2TXIE
U2RXIE
INT2IE
T5IE
T4IE
OC4IE
OC3IE
DMA2IE
IC8IE
IC7IE
AD2IE
INT1IE
CNIE
SPI1IE SPI1EIE
MI2C1IE SI2C1IE
0000
0000
IEC2
0098
T6IE
DMA4IE
OC8IE
OC7IE
OC6IE
OC5IE
IC6IE
IC5IE
IC4IE
IC3IE
DMA3IE
C1IE
C1RXIE
SPI2IE
SPI2EIE
IEC3
009A
DMA5IE
C2IE
C2RXIE
INT4IE
INT3IE
T9IE
T8IE
MI2C2IE
SI2C2IE
T7IE
0000
IEC4
009C
C2TXIE
C1TXIE
DMA7IE
DMA6IE
U2EIE
U1EIE
0000
0000
Preliminary
00A4
T1IP<2:0>
OC1IP<2:0>
IC1IP<2:0>
INT0IP<2:0>
4444
00A6
T2IP<2:0>
OC2IP<2:0>
IC2IP<2:0>
DMA0IP<2:0>
4444
IPC2
00A8
U1RXIP<2:0>
SPI1IP<2:0>
SPI1EIP<2:0>
T3IP<2:0>
4444
IPC3
00AA
DMA1IP<2:0>
AD1IP<2:0>
U1TXIP<2:0>
0444
IPC4
00AC
CNIP<2:0>
MI2C1IP<2:0>
SI2C1IP<2:0>
0044
IPC5
00AE
IC8IP<2:0>
IC7IP<2:0>
AD2IP<2:0>
INT1IP<2:0>
4444
IPC6
00B0
T4IP<2:0>
OC4IP<2:0>
OC3IP<2:0>
DMA2IP<2:0>
4444
IPC7
00B2
U2TXIP<2:0>
U2RXIP<2:0>
INT2IP<2:0>
T5IP<2:0>
4444
IPC8
00B4
C1IP<2:0>
C1RXIP<2:0>
SPI2IP<2:0>
SPI2EIP<2:0>
4444
IPC9
00B6
IC5IP<2:0>
IC4IP<2:0>
IC3IP<2:0>
DMA3IP<2:0>
4444
IPC10
00B8
OC7IP<2:0>
OC6IP<2:0>
OC5IP<2:0>
IC6IP<2:0>
4444
IPC11
00BA
T6IP<2:0>
DMA4IP<2:0>
OC8IP<2:0>
4404
IPC12
00BC
T8IP<2:0>
MI2C2IP<2:0>
T7IP<2:0>
4444
IPC13
00BE
T9IP<2:0>
4444
IPC14
00C0
C2IP<2:0>
IPC15
00C2
DMA5IP<2:0>
IPC16
00C4
U2EIP<2:0>
U1EIP<2:0>
IPC17
00C6
C1TXIP<2:0>
DMA7IP<2:0>
Legend:
C2RXIP<2:0>
C2TXIP<2:0>
INT4IP<2:0>
SI2C2IP<2:0>
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
INT3IP<2:0>
DMA6IP<2:0>
0004
0040
4440
4444
PIC24H
DS70175D-page 31
IPC0
IPC1
SFR
Name
SFR
Addr
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
Preliminary
2006 Microchip Technology Inc.
TMR1
0100
Timer1 Register
PR1
0102
Period Register 1
T1CON
0104
TMR2
0106
Timer2 Register
xxxx
TMR3HLD
0108
xxxx
TMR3
010A
Timer3 Register
xxxx
PR2
010C
Period Register 2
FFFF
PR3
010E
Period Register 3
T2CON
0110
TON
TSIDL
TGATE
TCKPS<1:0>
T32
TCS
0000
T3CON
0112
TON
TSIDL
TGATE
TCKPS<1:0>
TCS
0000
TMR4
0114
Timer4 Register
xxxx
TMR5HLD
0116
xxxx
TMR5
0118
Timer5 Register
xxxx
PR4
011A
Period Register 4
FFFF
PR5
011C
Period Register 5
T4CON
011E
TON
TSIDL
TGATE
TCKPS<1:0>
T32
TCS
0000
T5CON
0120
TON
TSIDL
TGATE
TCKPS<1:0>
TCS
0000
TMR6
0122
Timer6 Register
xxxx
TMR7HLD
0124
xxxx
TMR7
0126
Timer7 Register
xxxx
PR6
0128
Period Register 6
FFFF
PR7
012A
Period Register 7
T6CON
012C
TON
TSIDL
TGATE
TCKPS<1:0>
T32
TCS
0000
T7CON
012E
TON
TSIDL
TGATE
TCKPS<1:0>
TCS
0000
TMR8
0130
Timer8 Register
xxxx
TMR9HLD
0132
xxxx
TMR9
0134
Timer9 Register
xxxx
PR8
0136
Period Register 8
FFFF
PR9
0138
Period Register 9
T8CON
013A
TON
TSIDL
TGATE
TCKPS<1:0>
T32
TCS
0000
T9CON
013C
TON
TSIDL
TGATE
TCKPS<1:0>
TCS
0000
Legend:
TON
TSIDL
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
xxxx
FFFF
TGATE
TCKPS<1:0>
TSYNC
TCS
0000
FFFF
FFFF
FFFF
FFFF
PIC24H
DS70175D-page 32
TABLE 3-4:
TABLE 3-5:
Preliminary
SFR Name
SFR
Addr
IC1BUF
0140
IC1CON
0142
IC2BUF
0144
IC2CON
0146
IC3BUF
0148
IC3CON
014A
IC4BUF
014C
IC4CON
014E
IC5BUF
0150
IC5CON
0152
IC6BUF
0154
IC6CON
0156
IC7BUF
0158
IC7CON
015A
IC8BUF
015C
IC8CON
015E
Legend:
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
ICSIDL
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
ICI<1:0>
ICOV
ICBNE
ICM<2:0>
ICI<1:0>
ICOV
ICBNE
ICM<2:0>
ICI<1:0>
ICOV
ICBNE
ICM<2:0>
ICI<1:0>
ICOV
ICBNE
ICM<2:0>
ICI<1:0>
ICOV
ICBNE
ICM<2:0>
ICI<1:0>
ICOV
ICBNE
ICM<2:0>
ICI<1:0>
ICOV
ICBNE
ICM<2:0>
ICI<1:0>
ICOV
ICBNE
ICM<2:0>
ICTMR
ICSIDL
ICTMR
ICSIDL
ICTMR
ICSIDL
ICTMR
ICSIDL
ICTMR
ICSIDL
ICTMR
ICSIDL
ICTMR
ICSIDL
ICTMR
0000
xxxx
0000
xxxx
0000
xxxx
0000
xxxx
0000
xxxx
0000
xxxx
All
Resets
xxxx
Bit 0
0000
xxxx
0000
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
PIC24H
DS70175D-page 33
SFR Name
SFR
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Preliminary
OC1RS
0180
OC1R
0182
OC1CON
0184
OC2RS
0186
OC2R
0188
OC2CON
018A
OC3RS
018C
OC3R
018E
OC3CON
0190
OC4RS
0192
OC4R
0194
OC4CON
0196
OC5RS
0198
OC5R
019A
OC5CON
019C
OC6RS
019E
OC6R
01A0
OC6CON
01A2
OC7RS
01A4
OC7R
01A6
OC7CON
01A8
OC8RS
01AA
OC8R
01AC
OC8CON
01AE
Legend:
OCSIDL
OCSIDL
OCSIDL
OCSIDL
OCSIDL
OCSIDL
OCSIDL
OCSIDL
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
xxxx
xxxx
OCFLT
OCTSEL
OCM<2:0>
0000
xxxx
xxxx
OCFLT
OCTSEL
OCM<2:0>
0000
xxxx
xxxx
OCFLT
OCTSEL
OCM<2:0>
0000
xxxx
xxxx
OCFLT
OCTSEL
OCM<2:0>
0000
xxxx
xxxx
OCFLT
OCTSEL
OCM<2:0>
0000
xxxx
xxxx
OCFLT
OCTSEL
OCM<2:0>
0000
xxxx
xxxx
OCFLT
OCTSEL
OCM<2:0>
0000
xxxx
xxxx
OCFLT
OCTSEL
OCM<2:0>
0000
PIC24H
DS70175D-page 34
TABLE 3-6:
TABLE 3-7:
SFR
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
I2C1RCV
0200
Receive Register
0000
I2C1TRN
0202
Transmit Register
00FF
I2C1BRG
0204
I2C1ON
0206
I2CEN
I2CSIDL
SCLREL
IPMIEN
A10M
DISSLW
SMEN
GCEN
STREN
ACKDT
ACKEN
RCEN
PEN
RSEN
SEN
1000
I2C1STAT
0208
ACKSTAT
TRSTAT
BCL
GCSTAT
ADD10
IWCOL
I2COV
D_A
R_W
RBF
TBF
0000
I2C1ADD
020A
Address Register
0000
I2C1MSK
020C
0000
SFR Name
Legend:
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
0000
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
TABLE 3-8:
SFR
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
I2C2RCV
0210
Receive Register
0000
I2C2TRN
0212
Transmit Register
00FF
I2C2BRG
0214
I2C2CON
0216
I2CEN
I2CSIDL
SCLREL
IPMIEN
A10M
DISSLW
SMEN
GCEN
STREN
ACKDT
ACKEN
RCEN
PEN
RSEN
SEN
1000
I2C2STAT
0218
ACKSTAT
TRSTAT
BCL
GCSTAT
ADD10
IWCOL
I2COV
D_A
R_W
RBF
TBF
0000
I2C2ADD
021A
Address Register
0000
I2C2MSK
021C
0000
SFR Name
Preliminary
Legend:
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
0000
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
TABLE 3-9:
SFR Name
SFR
Addr
U1MODE
0220
UARTEN
U1STA
0222
UTXISEL1
U1TXREG
0224
U1RXREG
0226
U1BRG
0228
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
Bit 15
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
UEN1
UEN0
WAKE
LPBACK
UTXBF
TRMT
Bit 3
ABAUD
URXINV
BRGH
ADDEN
RIDLE
PERR
Bit 2
Bit 1
STSEL
0000
0110
USIDL
IREN
RTSMD
UTXBRK
UTXEN
xxxx
0000
Bit 4
URXDA
Bit 12
URXISEL<1:0>
Bit 5
All
Resets
Bit 13
UTXINV UTXISEL0
Bit 11
Bit 0
Bit 14
PDSEL<1:0>
FERR
OERR
0000
PIC24H
DS70175D-page 35
SFR
Name
SFR
Addr
U2MODE
0230
UARTEN
U2STA
0232
UTXISEL1
U2TXREG
0234
U2RXREG
0236
U2BRG
0238
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
TABLE 3-11:
SFR
Name
Bit 15
Bit 14
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
UEN1
UEN0
WAKE
LPBACK
UTXBF
TRMT
Bit 3
ABAUD
URXINV
BRGH
ADDEN
RIDLE
PERR
Bit 2
Bit 1
STSEL
0000
URXDA
0110
USIDL
IREN
RTSMD
UTXINV
UTXISEL0
UTXBRK
UTXEN
xxxx
0000
PDSEL<1:0>
FERR
OERR
0000
Preliminary
SFR
Addr
Bit 15
Bit 14
Bit 13
SPI1STAT
0240
SPIEN
SPISIDL
SPI1CON1
0242
DISSCK
DISSDO
MODE16
SMP
SPI1CON2
0244
FRMEN
SPIFSD
FRMPOL
SPI1BUF
0248
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
TABLE 3-12:
Bit 4
All
Resets
Bit 12
URXISEL<1:0>
Bit 5
Bit 0
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
CKE
SSEN
SPIROV
CKP
MSTEN
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
SPITBF
SPIRBF
0000
SPRE<2:0>
PPRE<1:0>
FRMDLY
0000
0000
0000
SFR Name
SFR
Addr
Bit 15
Bit 14
Bit 13
SPI2STAT
0260
SPIEN
SPISIDL
SPI2CON1
0262
DISSCK
DISSDO
MODE16
SMP
SPI2CON2
0264
FRMEN
SPIFSD
FRMPOL
SPI2BUF
0268
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
CKE
SSEN
SPIROV
CKP
MSTEN
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
SPITBF
SPIRBF
0000
SPRE<2:0>
PPRE<1:0>
FRMDLY
0000
0000
0000
PIC24H
DS70175D-page 36
TABLE 3-10:
TABLE 3-13:
File Name
Addr
ADC1BUF0
0300
AD1CON1
0320
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
ADON
ADSIDL
ADDMAB
M
AD12B
FORM<1:0>
CSCNA
CHPS<1:0>
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
SIMSA
M
ASAM
SAMP
DONE
0000
BUFM
ALTS
0000
CH123S
A
0000
AD1CON2
0322
AD1CON3
0324
ADRC
VCFG<2:0>
AD1CHS12
3
0326
BUFS
CH123S
B
SAMC<4:0>
CH123NB<1:0>
xxxx
SSRC<2:0>
SMPI<3:0>
ADCS<5:0>
0000
CH123NA<1:0>
Preliminary
AD1CHS0
0328
CH0NB
CH0NA
AD1PCFGH
032A
PCFG31 PCFG30
PCFG29
PCFG28
PCFG24
PCFG23
PCFG22
PCFG21
PCFG20
PCFG16
0000
AD1PCFGL
032C
PCFG15 PCFG14
PCFG13
PCFG12
PCFG11 PCFG10
PCFG9
PCFG8
PCFG7
PCFG6
PCFG5
PCFG4
PCFG3
PCFG2
PCFG1
PCFG0
0000
AD1CSSH
032E
CSS31
CSS30
CSS29
CSS28
CSS27
CSS26
CSS25
CSS24
CSS23
CSS22
CSS21
CSS20
CSS19
CSS18
CSS17
CSS16
0000
AD1CSSL
0330
CSS15
CSS14
CSS13
CSS12
CSS11
CSS10
CSS9
CSS8
CSS7
CSS6
CSS5
CSS4
CSS3
CSS2
CSS1
CSS0
0000
AD1CON4
0332
Reserved
0334033E
0000
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
SIMSA
M
ASAM
SAMP
DONE
0000
BUFM
ALTS
0000
Legend:
CH0SB<4:0>
CH0SA<4:0>
Addr
ADC2BUF0
0340
AD2CON1
0360
DMABL<2:0>
0000
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
ADON
ADSIDL
ADDMAB
M
AD12B
FORM<1:0>
Bit 9
Bit 8
CSCNA
CHPS<1:0>
Bit 7
Bit 6
AD2CON2
0362
AD2CON3
0364
ADRC
AD2CHS12
3
0366
VCFG<2:0>
SAMC<4:0>
AD2CHS0
0368
CH0NB
Reserved
036A
AD2PCFGL
036C
PCFG13
PCFG12
Reserved
036E
PCFG15 PCFG14
CH123NB<1:0>
CH123S
B
CH0SB<3:0>
All
Resets
xxxx
SSRC<2:0>
BUFS
SMPI<3:0>
ADCS<5:0>
0000
CH123NA<1:0>
CH123SA
PCFG9
PCFG8
PCFG7
PCFG6
PCFG5
PCFG4
PCFG3
PCFG2
PCFG1
PCFG0
0000
0000
CSS2
CSS1
CSS0
0000
0000
AD2CSSL
0370
CSS15
CSS14
CSS13
CSS12
CSS11
CSS10
CSS9
CSS8
CSS7
CSS6
CSS5
CSS4
CSS3
0372
Reserved
0374037E
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
0000
DMABL<2:0>
0000
0000
PIC24H
DS70175D-page 37
CH0NA
PCFG11 PCFG10
CH0SA<3:0>
0000
AD2CON4
Legend:
0000
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
TABLE 3-14:
File Name
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
DMA0CON 0380
CHEN
SIZE
DIR
HALF
NULLW
DMA0REQ 0382
FORCE
Bit 5
Bit 4
AMODE<1:0>
Bit 3
Bit 2
Bit 1
Bit 0
MODE<1:0>
IRQSEL<6:0>
All
Resets
0000
0000
DMA0STA
0384
STA<15:0>
0000
DMA0STB
0386
STB<15:0>
0000
DMA0PAD
0388
PAD<15:0>
DMA0CNT
038A
DMA1CON 038C
CHEN
SIZE
DIR
HALF
NULLW
DMA1REQ 038E
FORCE
0000
CNT<9:0>
AMODE<1:0>
0000
MODE<1:0>
IRQSEL<6:0>
0000
0000
DMA1STA
0390
STA<15:0>
0000
DMA1STB
0392
STB<15:0>
0000
DMA1PAD
0394
PAD<15:0>
DMA1CNT
0396
Preliminary
DMA2CON 0398
CHEN
SIZE
DIR
HALF
NULLW
DMA2REQ 039A
FORCE
0000
CNT<9:0>
AMODE<1:0>
0000
MODE<1:0>
IRQSEL<6:0>
0000
0000
DMA2STA
039C
STA<15:0>
0000
DMA2STB
039E
STB<15:0>
0000
DMA2PAD
03A0
PAD<15:0>
DMA2CNT
03A2
DMA3CON 03A4
CHEN
SIZE
DIR
HALF
NULLW
DMA3REQ 03A6
FORCE
0000
CNT<9:0>
AMODE<1:0>
0000
MODE<1:0>
IRQSEL<6:0>
0000
0000
DMA3STA
03A8
STA<15:0>
0000
DMA3STB
03AA
STB<15:0>
0000
DMA3PAD 03AC
PAD<15:0>
DMA3CNT 03AE
DMA4CON 03B0
CHEN
SIZE
DIR
HALF
NULLW
DMA4REQ 03B2
FORCE
0000
CNT<9:0>
AMODE<1:0>
0000
MODE<1:0>
IRQSEL<6:0>
0000
0000
DMA4STA
03B4
STA<15:0>
0000
DMA4STB
03B6
STB<15:0>
0000
DMA4PAD
03B8
PAD<15:0>
DMA4CNT 03BA
DMA5CON 03BC
CHEN
SIZE
DIR
HALF
NULLW
DMA5REQ 03BE
FORCE
0000
CNT<9:0>
AMODE<1:0>
0000
IRQSEL<6:0>
MODE<1:0>
0000
0000
DMA5STA
03C0
STA<15:0>
0000
DMA5STB
03C2
STB<15:0>
0000
Legend:
PIC24H
DS70175D-page 38
TABLE 3-15:
TABLE 3-15:
File Name Addr
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
DMA5CNT 03C6
DMA6CON 03C8
CHEN
SIZE
DIR
HALF
NULLW
DMA5PAD
Bit 9
Bit 8
03C4
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
PAD<15:0>
All
Resets
0000
CNT<9:0>
0000
AMODE<1:0>
MODE<1:0>
IRQSEL<6:0>
0000
0000
DMA6STA
03CC
STA<15:0>
0000
DMA6STB
03CE
STB<15:0>
0000
DMA6PAD
03D0
PAD<15:0>
DMA6CNT 03D2
DMA7CON 03D4
CHEN
SIZE
DIR
HALF
NULLW
DMA7REQ 03D6
FORCE
0000
CNT<9:0>
0000
AMODE<1:0>
MODE<1:0>
IRQSEL<6:0>
0000
0000
DMA7STA
03D8
STA<15:0>
0000
DMA7STB
03DA
STB<15:0>
0000
DMA7PAD 03DC
PAD<15:0>
DMA7CNT 03DE
CNT<9:0>
Preliminary
DMACS0
DMACS1
03E2
DSADR
03E4
Legend:
XWCOL7
LSTCH<3:0>
XWCOL6 XWCOL5
PPST7
PPST6
0000
XWCOL4
XWCOL3
XWCOL2
PPST4
PPST3
PPST2
PPST5
XWCOL1 XWCOL0
PPST1
PPST0
DSADR<15:0>
0000
0000
0000
TABLE 3-16:
File Name
0000
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
C1CTRL1
0400
CSIDL
ABAT
CANCKS
C1CTRL2
0402
C1VEC
0404
C1FCTRL
0406
C1FIFO
0408
DMABS<2:0>
Bit 10
Bit 9
Bit 8
Bit 7
REQOP<2:0>
Bit 5
OPMODE<2:0>
FILHIT<4:0>
Bit 6
Bit 4
Bit 3
CANCAP
Bit 1
Bit 0
WIN
DNCNT<4:0>
FBP<5:0>
Bit 2
All
Resets
0480
0000
ICODE<6:0>
0000
0000
FSA<4:0>
FNRB<5:0>
0000
040A
TXBO
TXBP
RXBP
TXWAR
RXWAR
EWARN
IVRIF
WAKIF
ERRIF
FIFOIF
RBOVIF
RBIF
TBIF
0000
040C
IVRIE
WAKIE
ERRIE
FIFOIE
RBOVIE
RBIE
TBIE
0000
C1EC
040E
C1CFG1
0410
C1CFG2
0412
WAKFIL
C1FEN1
TERRCNT<7:0>
RERRCNT<7:0>
SEG2PH<2:0>
FLTEN9
FLTEN8
SJW<1:0>
SEG2PHTS
SAM
FLTEN7
FLTEN6
0000
BRP<5:0>
SEG1PH<2:0>
FLTEN5
FLTEN4
0000
PRSEG<2:0>
FLTEN3
FLTEN2
FLTEN1
FLTEN0
0000
0000
C1FMSKSEL1 0418
F7MSK<1:0>
F6MSK<1:0>
F5MSK<1:0>
F4MSK<1:0>
F3MSK<1:0>
F2MSK<1:0>
F1MSK<1:0>
F0MSK<1:0>
0000
C1FMSKSEL2 041A
F15MSK<1:0>
F14MSK<1:0>
F13MSK<1:0>
F12MSK<1:0>
F11MSK<1:0>
F10MSK<1:0>
F9MSK<1:0>
F8MSK<1:0>
0000
Legend:
PIC24H
DS70175D-page 39
C1INTF
C1INTE
File Name
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
0400041E
Bit 8
Bit 7
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
RXFUL5
RXFUL4
RXFUL3
RXFUL2
RXFUL1
Bit 6
C1RXFUL1
RXFUL0
0000
C1RXFUL2
0422 RXFUL31 RXFUL30 RXFUL29 RXFUL28 RXFUL27 RXFUL26 RXFUL25 RXFUL24 RXFUL23 RXFUL22 RXFUL21 RXFUL20 RXFUL19 RXFUL18 RXFUL17 RXFUL16
RXFUL8
0000
C1RXOVF1
RXOVF0
0000
C1RXOVF2
042A RXOVF31 RXOVF30 RXOVF29 RXOVF28 RXOVF27 RXOVF26 RXOVF25 RXOVF24 RXOVF23 RXOVF22 RXOVF21 RXOVF20 RXOVF19 RXOVF18 RXOVF17 RXOVF16
0000
RXOVF8
RXFUL7
RXOVF7
RXFUL6
RXOVF6
RXOVF5
RXOVF4
RXOVF3
RXOVF2
RXOVF1
C1TR01CON 0430
TXEN1
TX
ABT1
TX
LARB1
TX
ERR1
TX
REQ1
RTREN1
TX1PRI<1:0>
TXEN0
TX
ABAT0
TX
LARB0
TX
ERR0
TX
REQ0
RTREN0
TX0PRI<1:0>
0000
C1TR23CON 0432
TXEN3
TX
ABT3
TX
LARB3
TX
ERR3
TX
REQ3
RTREN3
TX3PRI<1:0>
TXEN2
TX
ABAT2
TX
LARB2
TX
ERR2
TX
REQ2
RTREN2
TX2PRI<1:0>
0000
C1TR45CON 0434
TXEN5
TX
ABT5
TX
LARB5
TX
ERR5
TX
REQ5
RTREN5
TX5PRI<1:0>
TXEN4
TX
ABAT4
TX
LARB4
TX
ERR4
TX
REQ4
RTREN4
TX4PRI<1:0>
0000
C1TR67CON 0436
TXEN7
TX
ABT7
TX
LARB7
TX
ERR7
TX
REQ7
RTREN7
TX7PRI<1:0>
TXEN6
TX
ABAT6
TX
LARB6
TX
ERR6
TX
REQ6
RTREN6
TX6PRI<1:0>
xxxx
Preliminary
C1RXD
0440
xxxx
C1TXD
0442
xxxx
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
TABLE 3-18:
File Name
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
0400041E
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
C1BUFPNT1
0420
F3BP<3:0>
F2BP<3:0>
F1BP<3:0>
F0BP<3:0>
0000
C1BUFPNT2
0422
F7BP<3:0>
F6BP<3:0>
F5BP<3:0>
F4BP<3:0>
0000
C1BUFPNT3
0424
F11BP<3:0>
F10BP<3:0>
F9BP<3:0>
F8BP<3:0>
0000
C1BUFPNT4
0426
F15BP<3:0>
F14BP<3:0>
F13BP<3:0>
F12BP<3:0>
0000
C1RXM0SID
0430
EID<17:16>
xxxx
EID<17:16>
SID<10:3>
C1RXM0EID
0432
EID<15:8>
C1RXM1SID
0434
SID<10:3>
C1RXM1EID
0436
EID<15:8>
C1RXM2SID
0438
SID<10:3>
C1RXM2EID
043A
EID<15:8>
C1RXF0SID
0440
SID<10:3>
C1RXF0EID
0442
EID<15:8>
C1RXF1SID
0444
SID<10:3>
C1RXF1EID
0446
EID<15:8>
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
SID<2:0>
SID<2:0>
MIDE
EID<7:0>
MIDE
xxxx
EID<7:0>
SID<2:0>
MIDE
EID<17:16>
EID<7:0>
SID<2:0>
EXIDE
EXIDE
EID<7:0>
xxxx
xxxx
EID<17:16>
EID<7:0>
SID<2:0>
xxxx
xxxx
xxxx
xxxx
EID<17:16>
xxxx
xxxx
PIC24H
DS70175D-page 40
TABLE 3-17:
TABLE 3-18:
File Name
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Preliminary
C1RXF2SID
0448
SID<10:3>
C1RXF2EID
044A
EID<15:8>
C1RXF3SID
044C
SID<10:3>
C1RXF3EID
044E
EID<15:8>
C1RXF4SID
0450
SID<10:3>
C1RXF4EID
0452
EID<15:8>
C1RXF5SID
0454
SID<10:3>
C1RXF5EID
0456
EID<15:8>
C1RXF6SID
0458
SID<10:3>
C1RXF6EID
045A
EID<15:8>
C1RXF7SID
045C
SID<10:3>
C1RXF7EID
045E
EID<15:8>
C1RXF8SID
0460
SID<10:3>
C1RXF8EID
0462
EID<15:8>
C1RXF9SID
0464
SID<10:3>
C1RXF9EID
0466
EID<15:8>
C1RXF10SID
0468
SID<10:3>
C1RXF10EID
046A
EID<15:8>
C1RXF11SID
046C
SID<10:3>
C1RXF11EID
046E
EID<15:8>
C1RXF12SID
0470
SID<10:3>
C1RXF12EID
0472
EID<15:8>
C1RXF13SID
0474
SID<10:3>
C1RXF13EID
0476
EID<15:8>
C1RXF14SID
0478
SID<10:3>
C1RXF14EID
047A
EID<15:8>
C1RXF15SID
047C
SID<10:3>
C1RXF15EID
047E
EID<15:8>
Legend:
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
SID<2:0>
Bit 5
Bit 4
Bit 3
Bit 2
EXIDE
Bit 1
Bit 0
EID<17:16>
EID<7:0>
SID<2:0>
EXIDE
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<7:0>
xxxx
xxxx
EID<17:16>
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
All
Resets
xxxx
xxxx
EID<17:16>
xxxx
xxxx
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
PIC24H
DS70175D-page 41
File Name
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
C2CTRL1
0500
CSIDL
ABAT
CANCKS
C2CTRL2
0502
C2VEC
0504
C2FCTRL
0506
Bit 9
Bit 8
Bit 7
REQOP<2:0>
TXBP
RXBP
TXWAR
Bit 5
OPMODE<2:0>
FILHIT<4:0>
DMABS<2:0>
Bit 6
Bit 4
Bit 3
CANCAP
Bit 1
Bit 0
All
Resets
WIN
0480
DNCNT<4:0>
Bit 2
0000
ICODE<6:0>
0000
0000
FSA<4:0>
C2FIFO
0508
C2INTF
050A
TXBO
C2INTE
050C
C2EC
050E
C2CFG1
0510
C2CFG2
0512
WAKFIL
SEG2PH<2:0>
SEG2PHTS
C2FEN1
0514
FLTEN15
FLTEN14
FLTEN13
FLTEN12
FLTEN11
FLTEN7
C2FMSKSEL1
0518
F7MSK<1:0>
F6MSK<1:0>
F5MSK<1:0>
F4MSK<1:0>
F3MSK<1:0>
F2MSK<1:0>
F1MSK<1:0>
F0MSK<1:0>
0000
C2FMSKSEL2
051A
F15MSK<1:0>
F14MSK<1:0>
F13MSK<1:0>
F12MSK<1:0>
F11MSK<1:0>
F10MSK<1:0>
F9MSK<1:0>
F8MSK<1:0>
0000
Preliminary
Legend:
RXWAR EWARN
IVRIF
WAKIF
ERRIF
FNRB<5:0>
IVRIE
WAKIE
ERRIE
TERRCNT<7:0>
0000
FIFOIF
RBOVIF
RBIF
TBIF
FIFOIE
RBOVIE
RBIE
TBIE
RERRCNT<7:0>
SJW<1:0>
SEG1PH<2:0>
0000
PRSEG<2:0>
0000
0000
BRP<5:0>
SAM
0000
FLTEN2 FLTEN1
0000
FLTEN0
0000
TABLE 3-20:
File Name
FBP<5:0>
Addr
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
0500051E
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
RXFUL5
RXFUL4
RXFUL3
RXFUL2
RXFUL1
C2RXFUL1
RXFUL0
0000
C2RXFUL2
0522 RXFUL31 RXFUL30 RXFUL29 RXFUL28 RXFUL27 RXFUL26 RXFUL25 RXFUL24 RXFUL23 RXFUL22 RXFUL21 RXFUL20 RXFUL19 RXFUL18 RXFUL17 RXFUL16
RXFUL9
RXFUL8
RXFUL7
RXFUL6
0000
C2RXOVF1
0528 RXOVF15 RXOVF14 RXOVF13 RXOVF12 RXOVF11 RXOVF10 RXOVF09 RXOVF08 RXOVF7
0000
C2RXOVF2
052A RXOVF31 RXOVF30 RXOVF29 RXOVF28 RXOVF27 RXOVF26 RXOVF25 RXOVF24 RXOVF23 RXOVF22 RXOVF21 RXOVF20 RXOVF19 RXOVF18 RXOVF17 RXOVF16
RXOVF6
RXOVF5
RXOVF4
RXOVF3
RXOVF2
RXOVF1
RXOVF0
0000
C2TR01CON 0530
TXEN1
TX
ABAT1
TX
LARB1
TX
ERR1
TX
REQ1
RTREN1
TX1PRI<1:0>
TXEN0
TX
ABAT0
TX
LARB0
TX
ERR0
TX
REQ0
RTREN0
TX0PRI<1:0>
0000
C2TR23CON 0532
TXEN3
TX
ABAT3
TX
LARB3
TX
ERR3
TX
REQ3
RTREN3
TX3PRI<1:0>
TXEN2
TX
ABAT2
TX
LARB2
TX
ERR2
TX
REQ2
RTREN2
TX2PRI<1:0>
0000
C2TR45CON 0534
TXEN5
TX
ABAT5
TX
LARB5
TX
ERR5
TX
REQ5
RTREN5
TX5PRI<1:0>
TXEN4
TX
ABAT4
TX
LARB4
TX
ERR4
TX
REQ4
RTREN4
TX4PRI<1:0>
0000
C2TR67CON 0536
TXEN7
TX
ABAT7
TX
LARB7
TX
ERR7
TX
REQ7
RTREN7
TX7PRI<1:0>
TXEN6
TX
ABAT6
TX
LARB6
TX
ERR6
TX
REQ6
RTREN6
TX6PRI<1:0>
xxxx
C2RXD
0540
xxxx
C2TXD
0542
xxxx
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
PIC24H
DS70175D-page 42
TABLE 3-19:
TABLE 3-21:
File Name
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
0500051E
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
C2BUFPNT1
0520
F3BP<3:0>
F2BP<3:0>
F1BP<3:0>
F0BP<3:0>
0000
C2BUFPNT2
0522
F7BP<3:0>
F6BP<3:0>
F5BP<3:0>
F4BP<3:0>
0000
C2BUFPNT3
0524
F12BP<3:0>
F10BP<3:0>
F9BP<3:0>
F8BP<3:0>
0000
C2BUFPNT4
0526
F15BP<3:0>
F14BP<3:0>
F13BP<3:0>
F12BP<3:0>
0000
C2RXM0SID
0530
SID<10:3>
EID<17:16>
xxxx
C2RXM0EID
0532
EID<15:8>
C2RXM1SID
0534
SID<10:3>
EID<17:16>
C2RXM1EID
0536
EID<15:8>
C2RXM2SID
0538
SID<10:3>
EID<17:16>
C2RXM2EID
053A
EID<15:8>
C2RXF0SID
0540
SID<10:3>
EID<17:16>
C2RXF0EID
0542
EID<15:8>
Preliminary
0544
SID<10:3>
C2RXF1EID
0546
EID<15:8>
C2RXF2SID
0548
SID<10:3>
C2RXF2EID
054A
EID<15:8>
C2RXF3SID
054C
SID<10:3>
C2RXF3EID
054E
EID<15:8>
C2RXF4SID
0550
SID<10:3>
C2RXF4EID
0552
EID<15:8>
C2RXF5SID
0554
SID<10:3>
C2RXF5EID
0556
EID<15:8>
C2RXF6SID
0558
SID<10:3>
C2RXF6EID
055A
EID<15:8>
C2RXF7SID
055C
SID<10:3>
C2RXF7EID
055E
EID<15:8>
C2RXF8SID
0560
SID<10:3>
C2RXF8EID
0562
EID<15:8>
C2RXF9SID
0564
SID<10:3>
C2RXF9EID
0566
EID<15:8>
C2RXF10SID
0568
SID<10:3>
C2RXF10EID
056A
EID<15:8>
C2RXF11SID
056C
SID<10:3>
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
SID<2:0>
MIDE
EID<7:0>
MIDE
xxxx
EID<7:0>
SID<2:0>
MIDE
xxxx
EID<7:0>
SID<2:0>
EXIDE
EXIDE
EXIDE
EID<17:16>
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
EXIDE
EID<17:16>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
xxxx
xxxx
PIC24H
DS70175D-page 43
C2RXF1SID
SID<2:0>
File Name
Addr
C2RXF11EID
056E
EID<15:8>
C2RXF12SID
0570
SID<10:3>
C2RXF12EID
0572
EID<15:8>
C2RXF13SID
0574
SID<10:3>
C2RXF13EID
0576
EID<15:8>
C2RXF14SID
0578
SID<10:3>
C2RXF14EID
057A
EID<15:8>
C2RXF15SID
057C
SID<10:3>
C2RXF15EID
057E
EID<15:8>
Legend:
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
EID<7:0>
SID<2:0>
EXIDE
xxxx
EID<17:16>
EID<17:16>
EID<17:16>
EID<17:16>
EID<7:0>
SID<2:0>
EXIDE
EXIDE
EXIDE
EID<7:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
xxxx
xxxx
EID<7:0>
SID<2:0>
All
Resets
xxxx
xxxx
xxxx
xxxx
PIC24H
DS70175D-page 44
TABLE 3-21:
Preliminary
2006 Microchip Technology Inc.
TABLE 3-22:
File Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
TRISA9
TRISA7
TRISA6
TRISA5
TRISA4
TRISA3
TRISA2
TRISA1
TRISA0
D6C0
RA9
RA7
RA6
RA5
RA4
RA3
RA2
RA1
RA0
xxxx
LATA10
LATA9
LATA7
LATA6
LATA5
LATA4
LATA3
LATA2
LATA1
LATA0
xxxx
ODCA5
ODCA4
ODCA3
ODCA2
ODCA1
ODCA0
xxxx
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
TRISA
02C0
TRISA15
TRISA14
TRISA13
TRISA12
TRISA10
PORTA
02C2
RA15
RA14
RA13
RA12
RA10
LATA
02C4
LATA15
LATA14
LATA13
LATA12
ODCA(2)
06C0
ODCA15
ODCA14
ODCA13
ODCA12
Legend:
Note 1:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal for 100-pin devices.
The actual set of I/O port pins varies from one device to another. Please refer to the corresponding pinout diagrams.
TABLE 3-23:
Preliminary
File Name
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
TRISB
02C6
TRISB15
TRISB14
TRISB13
TRISB12
TRISB11
TRISB10
TRISB9
TRISB8
TRISB7
TRISB6
TRISB5
TRISB4
TRISB3
TRISB2
TRISB1
TRISB0
FFFF
PORTB
02C8
RB15
RB14
RB13
RB12
RB11
RB10
RB9
RB8
RB7
RB6
RB5
RB4
RB3
RB2
RB1
RB0
xxxx
LATB
02CA
LATB15
LATB14
LATB13
LATB12
LATB11
LATB10
LATB9
LATB8
LATB7
LATB6
LATB5
LATB4
LATB3
LATB2
LATB1
LATB0
xxxx
Legend:
Note 1:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal for 100-pin devices.
The actual set of I/O port pins varies from one device to another. Please refer to the corresponding pinout diagrams.
TABLE 3-24:
Bit 13
Bit 12
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
TRISC4
TRISC3
TRISC2
TRISC1
F01E
RC4
RC3
RC2
RC1
xxxx
LATC4
LATC3
LATC2
LATC1
xxxx
Addr
TRISC
02CC
PORTC
02CE
RC15
RC14
RC13
RC12
LATC
02D0
LATC15
LATC14
LATC13
LATC12
Legend:
Note 1:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal for 100-pin devices.
The actual set of I/O port pins varies from one device to another. Please refer to the corresponding pinout diagrams.
TABLE 3-25:
Bit 15
Bit 11
File Name
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
TRISD
02D2
TRISD15
TRISD14
TRISD13
TRISD12
TRISD11
TRISD10
TRISD9
TRISD8
TRISD7
TRISD6
TRISD5
TRISD4
TRISD3
TRISD2
TRISD1
TRISD0
FFFF
PORTD
02D4
RD15
RD14
RD13
RD12
RD11
RD10
RD9
RD8
RD7
RD6
RD5
RD4
RD3
RD2
RD1
RD0
xxxx
LATD
02D6
LATD15
LATD14
LATD13
LATD12
LATD11
LATD10
LATD9
LATD8
LATD7
LATD6
LATD5
LATD4
LATD3
LATD2
LATD1
LATD0
xxxx
ODCD(2)
06D2
ODCD15
ODCD14
ODCD13
ODCD12
ODCD11
ODCD10
ODCD9
ODCD8
ODCD7
ODCD6
ODCD5
ODCD4
ODCD3
ODCD2
ODCD1
ODCD0
xxxx
Legend:
Note 1:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal for 100-pin devices.
The actual set of I/O port pins varies from one device to another. Please refer to the corresponding pinout diagrams.
DS70175D-page 45
PIC24H
Addr
File Name
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
TRISE
02D8
TRISE7
TRISE6
TRISE5
TRISE4
TRISE3
TRISE2
TRISE1
TRISE0
03FF
PORTE
02DA
RE7
RE6
RE5
RE4
RE3
RE2
RE1
RE0
xxxx
LATE
02DC
LATE7
LATE6
LATE5
LATE4
LATE3
LATE2
LATE1
LATE0
xxxx
Legend:
Note 1:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal for 100-pin devices.
The actual set of I/O port pins varies from one device to another. Please refer to the corresponding pinout diagrams.
File Name
TABLE 3-27:
File Name
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All Resets
TRISF
02DE
TRISF13
TRISF12
TRISF8
TRISF7
TRISF6
TRISF5
TRISF4
TRISF3
TRISF2
TRISF1
TRISF0
31FF
PORTF
02E0
RF13
RF12
RF8
RF7
RF6
RF5
RF4
RF3
RF2
RF1
RF0
xxxx
LATF
02E2
LATF13
LATF12
LATF8
LATF7
LATF6
LATF5
LATF4
LATF3
LATF2
LATF1
LATF0
xxxx
ODCF(2)
06DE
ODCF13
ODCF12
ODCF8
ODCF7
ODCF6
ODCF5
ODCF4
ODCF3
ODCF2
ODCF1
ODCF0
xxxx
Legend:
Note 1:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal for 100-pin devices.
The actual set of I/O port pins varies from one device to another. Please refer to the corresponding pinout diagrams.
Preliminary
TABLE 3-28:
Addr
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
TRISG
02E4
TRISG15
TRISG14
TRISG13
TRISG12
TRISG9
TRISG8
TRISG7
TRISG6
TRISG3
TRISG2
TRISG1
TRISG0
F3CF
PORTG
02E6
RG15
RG14
RG13
RG12
RG9
RG8
RG7
RG6
RG3
RG2
RG1
RG0
xxxx
LATG
02E8
LATG15
LATG14
LATG13
LATG12
LATG9
LATG8
LATG7
LATG6
LATG3
LATG2
LATG1
LATG0
xxxx
ODCG(2)
06E4
ODCG15
ODCG14
ODCG13
ODCG12
ODCG9
ODCG8
ODCG7
ODCG6
ODCG3
ODCG2
ODCG1
ODCG0
xxxx
Legend:
Note 1:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal for 100-pin devices.
The actual set of I/O port pins varies from one device to another. Please refer to the corresponding pinout diagrams.
File Name
PIC24H
DS70175D-page 46
TABLE 3-26:
TABLE 3-29:
File Name
Addr
Bit 15
Bit 14
RCON
0740
TRAPR
IOPUWR
OSCCON
0742
Bit 13
Bit 12
COSC<2:0>
Bit 11
Bit 10
Bit 8
VREGS
NOSC<2:0>
FRCDIV<2:0>
Bit 5
Bit 4
Bit 3
Bit 2
EXTR
SWR
SWDTEN
WDTO
SLEEP
IDLE
BOR
POR
xxxx(1)
CLKLOCK
LOCK
CF
LPOSCEN
OSWEN
0300(2)
0744
ROI
0746
OSCTUN
0748
Legend:
Note 1:
2:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
RCON register Reset values dependent on type of Reset.
OSCCON register Reset values dependent on the FOSC Configuration bits and by type of Reset.
File Name
DOZEN
Bit 6
CLKDIV
Bit 15
Bit 14
Bit 13
NVMCON
0760
WR
WREN
WRERR
NVMKEY
0766
PLLPRE<4::0>
0040
PLLDIV<8:0>
0030
TUN<5:0>
0000
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
ERASE
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
0000(1)
NVMOP<3:0>
NVMKEY<7:0>
0000
Preliminary
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
Reset value shown is for POR only. Value on other Reset states is dependent on the state of memory write or erase operations at the time of Reset.
TABLE 3-31:
File Name
Bit 0
Addr
Legend:
Note 1:
PLLPOST<1:0>
Bit 1
All
Resets
Bit 7
PLLFBD
TABLE 3-30:
DOZE<2:0>
Bit 9
Addr
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
All
Resets
PMD1
0770
T5MD
T4MD
T3MD
T2MD
T1MD
I2C1MD
U2MD
U1MD
SPI2MD
SPI1MD
C2MD
C1MD
AD1MD
0000
PMD2
0772
IC8MD
IC7MD
IC6MD
IC5MD
IC4MD
IC3MD
IC2MD
IC1MD
OC8MD
OC7MD
OC6MD
OC5MD
OC4MD
OC3MD
OC2MD
OC1MD
0000
PMD3
0774
T9MD
T8MD
T7MD
T6MD
I2C2MD
AD2MD
0000
Legend:
x = unknown value on Reset, = unimplemented, read as 0. Reset values are shown in hexadecimal.
PIC24H
DS70175D-page 47
PIC24H
3.2.6
3.2.7
SOFTWARE STACK
FIGURE 3-5:
0x0000
PC<15:0>
000000000 PC<22:16>
<Free Word>
DS70175D-page 48
The PIC24H product family supports Data RAM protection features that enable segments of RAM to be
protected when used in conjunction with Boot and
Secure Code Segment Security. BSRAM (Secure RAM
segment for BS) is accessible only from the Boot Segment Flash code, when enabled. SSRAM (Secure
RAM segment for RAM) is accessible only from the
Secure Segment Flash code, when enabled. See
Table 3-1 for an overview of the BSRAM and SSRAM
SFRs.
3.3
3.3.1
3.3.2
MCU INSTRUCTIONS
15
Register Direct
Register Indirect
Register Indirect Post-Modified
Register Indirect Pre-Modified
5-bit or 10-bit Literal
Note:
Preliminary
PIC24H
TABLE 3-32:
Addressing Mode
Description
Register Direct
Register Indirect
Register Indirect with Register Offset The sum of Wn and Wb forms the EA.
Register Indirect with Literal Offset
3.3.3
MOVE INSTRUCTIONS
3.4
Move instructions provide a greater degree of addressing flexibility than other instructions. In addition to the
Addressing modes supported by most MCU instructions, move instructions also support Register Indirect
with Register Offset Addressing mode, also referred to
as Register Indexed mode.
Note:
3.3.4
OTHER INSTRUCTIONS
Register Direct
Register Indirect
Register Indirect Post-modified
Register Indirect Pre-modified
Register Indirect with Register Offset (Indexed)
Register Indirect with Literal Offset
8-bit Literal
16-bit Literal
Note:
3.4.1
Preliminary
DS70175D-page 49
PIC24H
For remapping operations, the 8-bit Program Space
Visibility register (PSVPAG) is used to define a
16K word page in the program space. When the Most
Significant bit of the EA is 1, PSVPAG is concatenated
with the lower 15 bits of the EA to form a 23-bit program
space address. Unlike table operations, this limits
remapping operations strictly to the user memory area.
TABLE 3-33:
Access Type
<22:16>
<15>
<14:1>
Instruction Access
(Code Execution)
User
TBLRD/TBLWT
(Byte/Word Read/Write)
User
TBLPAG<7:0>
Configuration
TBLPAG<7:0>
Data EA<15:0>
1xxx xxxx
PC<22:1>
0
0xx
xxxx
xxxx
0xxx xxxx
User
<0>
0
xxxx
xxxx xxx0
Data EA<15:0>
xxxx xxxx xxxx xxxx
PSVPAG<7:0>
xxxx xxxx
Data EA<14:0>(1)
xxx xxxx xxxx xxxx
Data EA<15> is always 1 in this case, but is not used in calculating the program space address. Bit 15 of
the address is PSVPAG<0>.
DS70175D-page 50
Preliminary
PIC24H
FIGURE 3-6:
Program Counter(1)
Program Counter
23 bits
EA
Table Operations(2)
1/0
1/0
TBLPAG
8 bits
16 bits
24 bits
Select
Program Space Visibility(1)
(Remapping)
EA
PSVPAG
8 bits
15 bits
23 bits
User/Configuration
Space Select
Byte Select
Note 1: The LSb of program space addresses is always fixed as 0 in order to maintain word
alignment of data in the program and data spaces.
2: Table operations are not required to be word-aligned. Table read operations are permitted
in the configuration memory space.
Preliminary
DS70175D-page 51
PIC24H
3.4.2
2.
FIGURE 3-7:
TBLPAG
02
23
15
0x000000
23
16
00000000
00000000
0x020000
00000000
0x030000
00000000
Phantom Byte
TBLRDH.B (Wn<0> = 0)
TBLRDL.B (Wn<0> = 1)
TBLRDL.B (Wn<0> = 0)
TBLRDL.W
0x800000
DS70175D-page 52
Preliminary
PIC24H
3.4.3
FIGURE 3-8:
Program Space
PSVPAG
02
23
15
Data Space
0
0x000000
0x0000
Data EA<14:0>
0x010000
0x018000
The data in the page
designated by
PSVPAG is mapped
into the upper half of
the data memory
space...
0x8000
PSV Area
0x800000
Preliminary
DS70175D-page 53
PIC24H
NOTES:
DS70175D-page 54
Preliminary
PIC24H
4.0
Note:
4.1
FIGURE 4-1:
24 bits
Using
Program Counter
Program Counter
Working Reg EA
Using
Table Instruction
1/0
TBLPAG Reg
8 bits
User/Configuration
Space Select
16 bits
24-bit EA
Preliminary
Byte
Select
DS70175D-page 55
PIC24H
4.2
RTSP Operation
4.3
Control Registers
4.4
Programming Operations
DS70175D-page 56
Preliminary
PIC24H
REGISTER 4-1:
R/SO-0(1)
R/W-0(1)
R/W-0(1)
U-0
U-0
U-0
U-0
U-0
WR
WREN
WRERR
bit 15
bit 8
R/W-0(1)
U-0
ERASE
U-0
R/W-0(1)
U-0
R/W-0(1)
R/W-0(1)
NVMOP<3:0>
R/W-0(1)
(2)
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
bit 13
bit 12-7
Unimplemented: Read as 0
bit 6
bit 5-4
Unimplemented: Read as 0
bit 3-0
Note 1:
2:
Preliminary
DS70175D-page 57
PIC24H
4.4.1
4.
5.
EXAMPLE 4-1:
Note:
6.
#0x55, W0
W0, NVMKEY
#0xAA, W1
W1, NVMKEY
NVMCON, #WR
;
; Initialize NVMCON
;
;
;
;
;
;
;
;
;
;
;
;
DS70175D-page 58
Preliminary
PIC24H
EXAMPLE 4-2:
; 63rd_program_word
MOV
#LOW_WORD_31, W2
;
MOV
#HIGH_BYTE_31, W3
;
; Write PM low word into program latch
TBLWTL W2, [W0]
; Write PM high byte into program latch
TBLWTH W3, [W0++]
EXAMPLE 4-3:
DISI
#5
MOV
MOV
MOV
MOV
BSET
NOP
NOP
#0x55, W0
W0, NVMKEY
#0xAA, W1
W1, NVMKEY
NVMCON, #WR
Preliminary
DS70175D-page 59
PIC24H
NOTES:
DS70175D-page 60
Preliminary
PIC24H
5.0
Note:
RESETS
Note:
FIGURE 5-1:
Glitch Filter
MCLR
WDT
Module
Sleep or Idle
VDD Rise
Detect
POR
Internal
Regulator
BOR
SYSRST
VDD
Trap Conflict
Illegal Opcode
Uninitialized W Register
Preliminary
DS70175D-page 61
PIC24H
RCON: RESET CONTROL REGISTER(1)
REGISTER 5-1:
R/W-0
R/W-0
U-0
U-0
U-0
U-0
U-0
R/W-0
TRAPR
IOPUWR
VREGS
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-1
R/W-1
EXTR
SWR
SWDTEN(2)
WDTO
SLEEP
IDLE
BOR
POR
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
bit 13-9
Unimplemented: Read as 0
bit 8
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
Note 1:
2:
All of the Reset status bits may be set or cleared in software. Setting one of these bits in software does not
cause a device Reset.
If the FWDTEN Configuration bit is 1 (unprogrammed), the WDT is always enabled, regardless of the
SWDTEN bit setting.
DS70175D-page 62
Preliminary
PIC24H
REGISTER 5-1:
bit 0
Note 1:
2:
All of the Reset status bits may be set or cleared in software. Setting one of these bits in software does not
cause a device Reset.
If the FWDTEN Configuration bit is 1 (unprogrammed), the WDT is always enabled, regardless of the
SWDTEN bit setting.
Preliminary
DS70175D-page 63
PIC24H
TABLE 5-1:
Setting Event
Clearing Event
TRAPR (RCON<15>)
POR
IOPUWR (RCON<14>)
POR
EXTR (RCON<7>)
MCLR Reset
POR
SWR (RCON<6>)
RESET instruction
POR
WDTO (RCON<4>)
WDT time-out
SLEEP (RCON<3>)
POR
IDLE (RCON<2>)
POR
BOR (RCON<1>)
BOR
POR (RCON<0>)
POR
Note:
5.1
All Reset flag bits may be set or cleared by the user software.
TABLE 5-2:
Reset Type
POR
BOR
MCLR
WDTR
5.2
SWR
DS70175D-page 64
Preliminary
PIC24H
TABLE 5-3:
Reset Type
POR
System Clock
Delay
FSCM
Delay
Clock Source
Notes
1, 2, 3
ECPLL, FRCPLL
TLOCK
TFSCM
1, 2, 3, 5, 6
TOST
TFSCM
1, 2, 3, 4, 6
XTPLL, HSPLL
TOST + TLOCK
TFSCM
1, 2, 3, 4, 5, 6
MCLR
Any Clock
TRST
WDT
Any Clock
TRST
Software
Any clock
TRST
Illegal Opcode
Any Clock
TRST
Uninitialized W
Any Clock
TRST
Trap Conflict
Any Clock
TRST
Note 1:
2:
3:
4:
5:
6:
5.2.1
5.2.2.1
5.2.2
5.3
Most of the Special Function Registers (SFRs) associated with the CPU and peripherals are reset to a
particular value at a device Reset. The SFRs are
grouped by their peripheral or CPU function and their
Reset values are specified in each section of this
manual.
The Reset value for each SFR does not depend on the
type of Reset, with the exception of two registers. The
Reset value for the Reset Control register, RCON,
depends on the type of device Reset. The Reset value
for the Oscillator Control register, OSCCON, depends
on the type of Reset and the programmed values of the
oscillator Configuration bits in the FOSC Configuration
register.
Preliminary
DS70175D-page 65
PIC24H
NOTES:
DS70175D-page 66
Preliminary
PIC24H
6.0
Note:
INTERRUPT CONTROLLER
6.1.1
6.1
6.2
Reset Sequence
Preliminary
DS70175D-page 67
PIC24H
FIGURE 6-1:
Note 1:
DS70175D-page 68
0x000000
0x000002
0x000004
0x000014
0x00007C
0x00007E
0x000080
0x0000FC
0x0000FE
0x000100
0x000102
0x000114
0x0001FE
0x000200
Preliminary
PIC24H
TABLE 6-1:
INTERRUPT VECTORS
Vector
Number
Interrupt
Request (IRQ)
Number
IVT Address
AIVT Address
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
0x000014
0x000016
0x000018
0x00001A
0x00001C
0x00001E
0x000020
0x000022
0x000024
0x000026
0x000028
0x00002A
0x00002C
0x00002E
0x000030
0x000032
0x000034
0x000036
0x000038
0x00003A
0x00003C
0x00003E
0x000040
0x000042
0x000044
0x000046
0x000048
0x00004A
0x00004C
0x00004E
0x000050
0x000052
0x000054
0x000056
0x000058
0x00005A
0x00005C
0x00005E
0x000060
0x000062
0x000064
0x000066
0x000068
0x00006A
0x00006C
0x00006E
0x000114
0x000116
0x000118
0x00011A
0x00011C
0x00011E
0x000120
0x000122
0x000124
0x000126
0x000128
0x00012A
0x00012C
0x00012E
0x000130
0x000132
0x000134
0x000136
0x000138
0x00013A
0x00013C
0x00013E
0x000140
0x000142
0x000144
0x000146
0x000148
0x00014A
0x00014C
0x00014E
0x000150
0x000152
0x000154
0x000156
0x000158
0x00015A
0x00015C
0x00015E
0x000160
0x000162
0x000164
0x000166
0x000168
0x00016A
0x00016C
0x00016E
Preliminary
Interrupt Source
INT0 External Interrupt 0
IC1 Input Compare 1
OC1 Output Compare 1
T1 Timer1
DMA0 DMA Channel 0
IC2 Input Capture 2
OC2 Output Compare 2
T2 Timer2
T3 Timer3
SPI1E SPI1 Error
SPI1 SPI1 Transfer Done
U1RX UART1 Receiver
U1TX UART1 Transmitter
ADC1 A/D Converter 1
DMA1 DMA Channel 1
Reserved
SI2C1 I2C1 Slave Events
MI2C1 I2C1 Master Events
Reserved
CN - Change Notification Interrupt
INT1 External Interrupt 1
ADC2 A/D Converter 2
IC7 Input Capture 7
IC8 Input Capture 8
DMA2 DMA Channel 2
OC3 Output Compare 3
OC4 Output Compare 4
T4 Timer4
T5 Timer5
INT2 External Interrupt 2
U2RX UART2 Receiver
U2TX UART2 Transmitter
SPI2E SPI2 Error
SPI1 SPI1 Transfer Done
C1RX ECAN1 Receive Data Ready
C1 ECAN1 Event
DMA3 DMA Channel 3
IC3 Input Capture 3
IC4 Input Capture 4
IC5 Input Capture 5
IC6 Input Capture 6
OC5 Output Compare 5
OC6 Output Compare 6
OC7 Output Compare 7
OC8 Output Compare 8
Reserved
DS70175D-page 69
PIC24H
TABLE 6-1:
Vector
Number
Interrupt
Request (IRQ)
Number
54
55
56
57
58
59
60
61
62
63
64
65-68
46
47
48
49
50
51
52
53
54
55
56
57-60
69
70-72
61
62-64
73
74
75
76
77
78
79
80-125
65
66
67
68
69
70
71
72-117
TABLE 6-2:
IVT Address
AIVT Address
0x000070
0x000072
0x000074
0x000076
0x000078
0x00007A
0x00007C
0x00007E
0x000080
0x000082
0x000084
0x0000860x00008C
0x00008E
0x0000900x000094
0x000096
0x000098
0x00009A
0x00009C
0x00009E
0x0000A0
0x0000A2
0x0000A40x0000FE
0x000170
0x000172
0x000174
0x000176
0x000178
0x00017A
0x00017C
0x00017E
0x000180
0x000182
0x000184
0x0001860x00018C
0x00018E
0x0001900x000194
0x000196
0x000198
0x00019A
0x00019C
0x00019E
0x0001A0
0x0001A2
0x0001A40x0001FE
Interrupt Source
DMA4 DMA Channel 4
T6 Timer6
T7 Timer7
SI2C2 I2C2 Slave Events
MI2C2 I2C2 Master Events
T8 Timer8
T9 Timer9
INT3 External Interrupt 3
INT4 External Interrupt 4
C2RX ECAN2 Receive Data Ready
C2 ECAN2 Event
Reserved
DMA5 DMA Channel 5
Reserved
U1E UART1 Error
U2E UART2 Error
Reserved
DMA6 DMA Channel 6
DMA7 DMA Channel 7
C1TX ECAN1 Transmit Data Request
C2TX ECAN2 Transmit Data Request
Reserved
TRAP VECTORS
Vector Number
IVT Address
AIVT Address
Trap Source
0x000004
0x000084
0x000006
0x000086
Oscillator Failure
0x000008
0x000088
Address Error
Reserved
0x00000A
0x00008A
Stack Error
0x00000C
0x00008C
Math Error
0x00000E
0x00008E
0x000010
0x000090
Reserved
0x000012
0x000092
Reserved
DS70175D-page 70
Preliminary
PIC24H
6.3
INTCON1
INTCON2
IFS0 through IFS4
IEC0 through IEC4
IPC0 through IPC17
INTTREG
The INTTREG register contains the associated interrupt vector number and the new CPU interrupt priority
level, which are latched into vector number (VECNUM<6:0>) and Interrupt level (ILR<3:0>) bit fields in
the INTTREG register. The new interrupt priority level
is the priority of the pending interrupt.
The interrupt sources are assigned to the IFSx, IECx
and IPCx registers in the same sequence that they are
listed in Table 6-1. For example, the INT0 (External
Interrupt 0) is shown as having vector number 8 and a
natural order priority of 0. Thus, the INT0IF bit is found
in IFS0<0>, the INT0IE bit in IEC0<0>, and the INT0IP
bits in the first position of IPC0 (IPC0<2:0>).
Although they are not specifically part of the interrupt
control hardware, two of the CPU Control registers contain bits that control interrupt functionality. The CPU
STATUS register, SR, contains the IPL<2:0> bits
(SR<7:5>). These bits indicate the current CPU interrupt priority level. The user can change the current
CPU priority level by writing to the IPL bits.
The CORCON register contains the IPL3 bit which,
together with IPL<2:0>, also indicates the current CPU
priority level. IPL3 is a read-only bit so that trap events
cannot be masked by the user software.
All Interrupt registers are described in Register 6-1,
SR: CPU STATUS Register(1) through Register 6-32,
IPC17: Interrupt Priority Control Register 17, in the
following pages.
Preliminary
DS70175D-page 71
PIC24H
REGISTER 6-1:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
R/W-0
DC
bit 15
bit 8
R/W-0(3)
IPL2
R/W-0(3)
(2)
IPL1
(2)
R/W-0(3)
R-0
R/W-0
R/W-0
R/W-0
R/W-0
IPL0(2)
RA
OV
bit 7
bit 0
Legend:
C = Clear only bit
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 7-5
Note 1:
2:
3:
For complete register details, see Register 2-1, SR: CPU STATUS Register.
The IPL<2:0> bits are concatenated with the IPL<3> bit (CORCON<3>) to form the CPU Interrupt Priority
Level. The value in parentheses indicates the IPL if IPL<3> = 1. User interrupts are disabled when
IPL<3> = 1.
The IPL<2:0> Status bits are read-only when NSTDIS (INTCON1<15>) = 1.
REGISTER 6-2:
U-0
bit 15
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 8
U-0
U-0
R/C-0
IPL3(2)
R/W-0
PSV
U-0
bit 7
Note 1:
2:
U-0
bit 0
Legend:
R = Readable bit
0 = Bit is cleared
bit 3
U-0
-n = Value at POR
1 = Bit is set
U = Unimplemented bit, read as 0
DS70175D-page 72
Preliminary
PIC24H
REGISTER 6-3:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
NSTDIS
OVAERR
OVBERR
COVAERR
COVBERR
OVATE
OVBTE
COVTE
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
U-0
SFTACERR
DIV0ERR
DMACERR
MATHERR
ADDRERR
STKERR
OSCFAIL
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
Preliminary
x = Bit is unknown
DS70175D-page 73
PIC24H
REGISTER 6-3:
bit 3
bit 2
bit 1
bit 0
Unimplemented: Read as 0
DS70175D-page 74
Preliminary
PIC24H
REGISTER 6-4:
R/W-0
R-0
U-0
U-0
U-0
U-0
U-0
U-0
ALTIVT
DISI
bit 15
bit 8
U-0
U-0
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
INT4EP
INT3EP
INT2EP
INT1EP
INT0EP
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14
bit 13-5
Unimplemented: Read as 0
bit 4
bit 3
bit 2
bit 1
bit 0
Preliminary
x = Bit is unknown
DS70175D-page 75
PIC24H
REGISTER 6-5:
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
DMA1IF
AD1IF
U1TXIF
U1RXIF
SPI1IF
SPI1EIF
T3IF
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
T2IF
OC2IF
IC2IF
DMA01IF
T1IF
OC1IF
IC1IF
INT0IF
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
Unimplemented: Read as 0
bit 14
DMA1IF: DMA Channel 1 Data Transfer Complete Interrupt Flag Status bit
1 = Interrupt request has occurred
0 = Interrupt request has not occurred
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
DMA0IF: DMA Channel 0 Data Transfer Complete Interrupt Flag Status bit
1 = Interrupt request has occurred
0 = Interrupt request has not occurred
bit 3
DS70175D-page 76
Preliminary
PIC24H
REGISTER 6-5:
bit 2
bit 1
bit 0
Preliminary
DS70175D-page 77
PIC24H
REGISTER 6-6:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
U2TXIF
U2RXIF
INT2IF
T5IF
T4IF
OC4IF
OC3IF
DMA21IF
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
IC8IF
IC7IF
AD2IF
INT1IF
CNIF
MI2C1IF
SI2C1IF
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
DMA2IF: DMA Channel 2 Data Transfer Complete Interrupt Flag Status bit
1 = Interrupt request has occurred
0 = Interrupt request has not occurred
bit 7
bit 6
bit 5
bit 4
DS70175D-page 78
Preliminary
PIC24H
REGISTER 6-6:
bit 3
bit 2
Unimplemented: Read as 0
bit 1
bit 0
Preliminary
DS70175D-page 79
PIC24H
REGISTER 6-7:
R/W-0
R/W-0
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
T6IF
DMA4IF
OC8IF
OC7IF
OC6IF
OC5IF
IC6IF
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
IC5IF
IC4IF
IC3IF
DMA3IF
C1IF
C1RXIF
SPI2IF
SPI2EIF
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
DMA4IF: DMA Channel 4 Data Transfer Complete Interrupt Flag Status bit
1 = Interrupt request has occurred
0 = Interrupt request has not occurred
bit 13
Unimplemented: Read as 0
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
DMA3IF: DMA Channel 3 Data Transfer Complete Interrupt Flag Status bit
1 = Interrupt request has occurred
0 = Interrupt request has not occurred
bit 3
DS70175D-page 80
Preliminary
PIC24H
REGISTER 6-7:
bit 2
bit 1
bit 0
Preliminary
DS70175D-page 81
PIC24H
REGISTER 6-8:
U-0
U-0
R/W-0
U-0
U-0
U-0
U-0
R/W-0
DMA5IF
C2IF
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
C2RXIF
INT4IF
INT3IF
T9IF
T8IF
MI2C2IF
SI2C2IF
T7IF
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-14
Unimplemented: Read as 0
bit 13
DMA5IF: DMA Channel 5 Data Transfer Complete Interrupt Flag Status bit
1 = Interrupt request has occurred
0 = Interrupt request has not occurred
bit 12-9
Unimplemented: Read as 0
bit 8
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
DS70175D-page 82
Preliminary
PIC24H
REGISTER 6-9:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
U-0
R/W-0
R/W-0
U-0
C2TXIF
C1TXIF
DMA7IF
DMA6IF
U2EIF
U1EIF
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-8
Unimplemented: Read as 0
bit 7
bit 6
bit 5
DMA7IF: DMA Channel 7 Data Transfer Complete Interrupt Flag Status bit
1 = Interrupt request has occurred
0 = Interrupt request has not occurred
bit 4
DMA6IF: DMA Channel 6 Data Transfer Complete Interrupt Flag Status bit
1 = Interrupt request has occurred
0 = Interrupt request has not occurred
bit 3
Unimplemented: Read as 0
bit 2
bit 1
bit 0
Unimplemented: Read as 0
Preliminary
DS70175D-page 83
PIC24H
REGISTER 6-10:
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
DMA1IE
AD1IE
U1TXIE
U1RXIE
SPI1IE
SPI1EIE
T3IE
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
T2IE
OC2IE
IC2IE
DMA0IE
T1IE
OC1IE
IC1IE
INT0IE
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
bit 3
DS70175D-page 84
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-10:
bit 2
bit 1
bit 0
Preliminary
DS70175D-page 85
PIC24H
REGISTER 6-11:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
U2TXIE
U2RXIE
INT2IE
T5IE
T4IE
OC4IE
OC3IE
DMA2IE
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
U-0
R/W-0
R/W-0
IC8IE
IC7IE
AD2IE
INT1IE
CNIE
MI2C1IE
SI2C1IE
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
DS70175D-page 86
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-11:
bit 3
bit 2
Unimplemented: Read as 0
bit 1
bit 0
Preliminary
DS70175D-page 87
PIC24H
REGISTER 6-12:
R/W-0
R/W-0
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
T6IE
DMA4IE
OC8IE
OC7IE
OC6IE
OC5IE
IC6IE
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
IC5IE
IC4IE
IC3IE
DMA3IE
C1IE
C1RXIE
SPI2IE
SPI2EIE
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14
bit 13
Unimplemented: Read as 0
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
bit 3
DS70175D-page 88
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-12:
bit 2
bit 1
bit 0
Preliminary
DS70175D-page 89
PIC24H
REGISTER 6-13:
U-0
U-0
R/W-0
U-0
U-0
U-0
U-0
R/W-0
DMA5IE
C2IE
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
C2RXIE
INT4IE
INT3IE
T9IE
T8IE
MI2C2IE
SI2C2IE
T7IE
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-14
Unimplemented: Read as 0
bit 13
bit 12-9
Unimplemented: Read as 0
bit 8
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
DS70175D-page 90
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-14:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
U-0
R/W-0
R/W-0
U-0
C2TXIE
C1TXIE
DMA7IE
DMA6IE
U2EIE
U1EIE
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-8
Unimplemented: Read as 0
bit 7
bit 6
bit 5
bit 4
bit 3
Unimplemented: Read as 0
bit 2
bit 1
bit 0
Unimplemented: Read as 0
Preliminary
x = Bit is unknown
DS70175D-page 91
PIC24H
REGISTER 6-15:
U-0
R/W-0
R/W-0
T1IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
OC1IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
IC1IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
INT0IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
DS70175D-page 92
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-16:
U-0
R/W-0
R/W-0
T2IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
OC2IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
IC2IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
DMA0IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
Preliminary
DS70175D-page 93
PIC24H
REGISTER 6-17:
U-0
R/W-0
R/W-0
U1RXIP<2:0>
U-0
R/W-1
R/W-0
R/W-0
SPI1IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
SPI1EIP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
T3IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
DS70175D-page 94
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-18:
U-0
U-0
U-0
U-0
U-0
R/W-1
R/W-0
R/W-0
DMA1IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
AD1IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
U1TXIP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
Preliminary
DS70175D-page 95
PIC24H
REGISTER 6-19:
U-0
R/W-0
R/W-0
CNIP<2:0>
U-0
U-0
U-0
U-0
bit 15
bit 8
U-0
R/W-1
R/W-0
MI2C1IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
SI2C1IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11-7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
DS70175D-page 96
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-20:
U-0
R/W-0
R/W-0
IC8IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
IC7IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
AD2IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
INT1IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
Preliminary
x = Bit is unknown
DS70175D-page 97
PIC24H
REGISTER 6-21:
U-0
R/W-0
R/W-0
T4IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
OC4IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
OC3IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
DMA2IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
DS70175D-page 98
Preliminary
PIC24H
REGISTER 6-22:
U-0
R/W-0
R/W-0
U2TXIP<2:0>
U-0
R/W-1
R/W-0
R/W-0
U2RXIP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
INT2IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
T5IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
Preliminary
x = Bit is unknown
DS70175D-page 99
PIC24H
REGISTER 6-23:
U-0
R/W-0
R/W-0
C1IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
C1RXIP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
SPI2IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
SPI2EIP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
DS70175D-page 100
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-24:
U-0
R/W-0
R/W-0
IC5IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
IC4IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
IC3IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
DMA3IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
Preliminary
DS70175D-page 101
PIC24H
REGISTER 6-25:
U-0
R/W-0
R/W-0
OC7IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
OC6IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
OC5IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
IC6IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
DS70175D-page 102
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-26:
U-0
R/W-0
R/W-0
T6IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
DMA4IP<2:0>
bit 15
bit 8
U-0
U-0
U-0
U-0
U-0
R/W-1
R/W-0
R/W-0
OC8IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7-3
Unimplemented: Read as 0
bit 2-0
Preliminary
DS70175D-page 103
PIC24H
REGISTER 6-27:
U-0
R/W-0
R/W-0
T8IP<2:0>
U-0
R/W-1
R/W-0
R/W-0
MI2C2IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
SI2C2IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
T7IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
DS70175D-page 104
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-28:
U-0
R/W-0
R/W-0
C2RXIP<2:0>
U-0
R/W-1
R/W-0
R/W-0
INT4IP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
INT3IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
T9IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
Preliminary
x = Bit is unknown
DS70175D-page 105
PIC24H
REGISTER 6-29:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
U-0
U-0
U-0
U-0
U-0
R/W-1
R/W-0
R/W-0
C2IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-3
Unimplemented: Read as 0
bit 2-0
DS70175D-page 106
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-30:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
U-0
R/W-1
R/W-0
DMA5IP<2:0>
R/W-0
U-0
U-0
U-0
U-0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-7
Unimplemented: Read as 0
bit 6-4
bit 3-0
Unimplemented: Read as 0
Preliminary
DS70175D-page 107
PIC24H
REGISTER 6-31:
U-0
U-0
U-0
U-0
U-0
R/W-1
R/W-0
R/W-0
U2EIP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
U1EIP<2:0>
R/W-0
U-0
U-0
U-0
U-0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3-0
Unimplemented: Read as 0
DS70175D-page 108
Preliminary
x = Bit is unknown
PIC24H
REGISTER 6-32:
U-0
R/W-0
R/W-0
C2TXIP<2:0>
U-0
R/W-1
R/W-0
R/W-0
C1TXIP<2:0>
bit 15
bit 8
U-0
R/W-1
R/W-0
DMA7IP<2:0>
R/W-0
U-0
R/W-1
R/W-0
R/W-0
DMA6IP<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
Unimplemented: Read as 0
bit 6-4
bit 3
Unimplemented: Read as 0
bit 2-0
Preliminary
DS70175D-page 109
PIC24H
REGISTER 6-33:
R-0
R/W-0
U-0
U-0
R-0
R-0
R-0
R-0
ILR<3:0>
bit 15
bit 8
U-0
U-0
R-0
R-0
R-0
R-0
R-0
R-0
VECNUM<6:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-12
Unimplemented: Read as 0
bit 11-8
bit 7
Unimplemented: Read as 0
bit 6-0
DS70175D-page 110
Preliminary
x = Bit is unknown
PIC24H
6.4
6.4.3
6.4.1
INITIALIZATION
3.
4.
6.4.2
6.4.4
INTERRUPT DISABLE
Preliminary
DS70175D-page 111
PIC24H
NOTES:
DS70175D-page 112
Preliminary
PIC24H
7.0
Note:
TABLE 7-1:
Peripheral
IRQ Number
INT0
Input Capture 1
Input Capture 2
Output Compare 1
Output Compare 2
Timer2
Timer3
SPI1
10
SPI2
33
UART1 Reception
11
UART1 Transmission
12
UART2 Reception
30
UART2 Transmission
31
ADC1
13
ADC2
21
ECAN1 Reception
34
ECAN1 Transmission
70
ECAN2 Reception
55
ECAN2 Transmission
71
Preliminary
DS70175D-page 113
PIC24H
FIGURE 7-1:
DMA
Control
DMA Controller
DMA RAM
SRAM
PORT 1
SRAM X-Bus
DMA
Ready
Peripheral 3
DMA
Channels
PORT 2
CPU
DMA
DMA DS Bus
CPU Peripheral DS Bus
CPU
CPU
Non-DMA
Ready
Peripheral
DMA
DMA
Ready
Peripheral 1
CPU
DMA
DMA
Ready
Peripheral 2
Note: CPU and DMA address buses are not shown for clarity.
7.1
DMAC Registers
DS70175D-page 114
an IECx register in the interrupt controller, and the corresponding interrupt priority control bits (DMAxIP) are
located in an IPCx register in the interrupt controller.
7.2
Each DMA channel has its own status and control register (DMAxCON) that is used to configure the channel
to support the following operating modes:
Word or byte size data transfers
Peripheral to DMA RAM or DMA RAM to
peripheral transfers
Post-increment or static DMA RAM address
One-shot or continuous block transfers
Auto-switch between two start addresses after
each transfer complete (Ping-Pong mode)
Force a single DMA transfer (Manual mode)
Each DMA channel can be independently configured
to:
Select from one of 19 DMA request sources
Manually enable or disable the DMA channel
Interrupt the CPU when the transfer is half or fully
complete
DMA channel interrupts are routed to the interrupt controller module and enabled through associated enable
flags.
The channel DMA RAM and peripheral write collision
Faults are combined into a single DMAC error trap
(Level 10) and are not maskable. Each channel has
DMA RAM write collision (XWCOLx) and peripheral
Preliminary
PIC24H
write collision (PWCOLx) status bits in the DMAC Status register (DMACS) to allow the DMAC error trap
handler to determine the source of the Fault condition.
7.2.1
7.2.2
ADDRESSING MODES
7.2.3
7.2.4
Preliminary
DS70175D-page 115
PIC24H
7.2.5
CONTINUOUS OR ONE-SHOT
OPERATION
7.2.6
PING-PONG MODE
7.2.7
7.2.8
7.3
DS70175D-page 116
Preliminary
PIC24H
7.4
EXAMPLE 7-1:
0;
// Set up DMA Channel 0: Word mode, Read from Peripheral & Write to DMA; Interrupt when all the
data has been moved; Indirect with post-increment; Continuous mode with Ping-Pong Disabled
DMA0CON =
0x000D;
//Automatic DMA transfer initiation by DMA request; DMA Peripheral IRQ Number set up for ADC1
DMA0REQ =
0x0000;
// Set up offset into DMA RAM so that the buffer that collects A/D result data starts at the base
of DMA RAM
DMA0STA =
0x0000;
// DMA0PAD should be loaded with the address of the A/D conversion result register
DMA0PAD =
Preliminary
DS70175D-page 117
PIC24H
REGISTER 7-1:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
U-0
U-0
U-0
CHEN
SIZE
DIR
HALF
NULLW
bit 15
bit 8
U-0
U-0
R/W-0
R/W-0
AMODE<1:0>
U-0
U-0
R/W-0
R/W-0
MODE<1:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
bit 13
bit 12
bit 11
bit 10-6
Unimplemented: Read as 0
bit 5-4
bit 3-2
Unimplemented: Read as 0
bit 1-0
DS70175D-page 118
Preliminary
PIC24H
REGISTER 7-2:
R/W-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
FORCE(1)
bit 15
bit 8
U-0
R/W-0
IRQSEL6
R/W-0
(2)
IRQSEL5
R/W-0
(2)
IRQSEL4
U-0
(2)
IRQSEL3
U-0
(2)
IRQSEL2
R/W-0
(2)
IRQSEL1
R/W-0
(2)
IRQSEL0(2)
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14-7
Unimplemented: Read as 0
bit 6-0
Note 1: The FORCE bit cannot be cleared by the user. The FORCE bit is cleared by hardware when the forced
DMA transfer is complete.
2: Please see Table 6-1 for a complete listing of IRQ numbers for all interrupt sources.
Preliminary
DS70175D-page 119
PIC24H
REGISTER 7-3:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
STA<15:8>
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
STA<7:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
Note 1:
x = Bit is unknown
REGISTER 7-4:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
STB<15:8>
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
STB<7:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
Note 1:
x = Bit is unknown
DS70175D-page 120
Preliminary
PIC24H
REGISTER 7-5:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
PAD<15:8>
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
PAD<7:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
Note 1: If the channel is enabled (i.e., active), writes to this register may result in unpredictable behavior of the
DMA channel and should be avoided.
REGISTER 7-6:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
R/W-0
CNT<9:8>(2)
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
CNT<7:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-10
Unimplemented: Read as 0
bit 9-0
Note 1:
2:
x = Bit is unknown
If the channel is enabled (i.e., active), writes to this register may result in unpredictable behavior of the
DMA channel and should be avoided.
Number of DMA transfers = CNT<9:0> + 1.
Preliminary
DS70175D-page 121
PIC24H
REGISTER 7-7:
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
PWCOL7
PWCOL6
PWCOL5
PWCOL4
PWCOL3
PWCOL2
PWCOL1
PWCOL0
bit 15
bit 8
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
XWCOL7
XWCOL6
XWCOL5
XWCOL4
XWCOL3
XWCOL2
XWCOL1
XWCOL0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
DS70175D-page 122
Preliminary
x = Bit is unknown
PIC24H
REGISTER 7-7:
bit 3
bit 2
bit 1
bit 0
Preliminary
DS70175D-page 123
PIC24H
REGISTER 7-8:
U-0
U-0
U-0
U-0
R-1
R-1
R-1
R-1
LSTCH<3:0>
bit 15
bit 8
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
PPST7
PPST6
PPST5
PPST4
PPST3
PPST2
PPST1
PPST0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-12
Unimplemented: Read as 0
bit 11-8
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
DS70175D-page 124
Preliminary
x = Bit is unknown
PIC24H
REGISTER 7-9:
R-0
R-0
R-0
R-0
R-0
R-0
R-0
DSADR<15:8>
bit 15
bit 8
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
DSADR<7:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
DSADR<15:0>: Most Recent DMA RAM Address Accessed by DMA Controller bits
Preliminary
DS70175D-page 125
PIC24H
NOTES:
DS70175D-page 126
Preliminary
PIC24H
OSCILLATOR
CONFIGURATION
Note:
FIGURE 8-1:
PIC24H
Primary Oscillator
XT, HS, EC
OSC2
XTPLL, HSPLL,
ECPLL, FRCPLL
PLL
/FRCDIIV
OSC1
FRC
Oscillator
DOZE<2:0>
/DOZE
8.0
CPU
FRC, FRCDIVN
Peripherals
FRCDIV<2:0>
Divide
by 16
, FRCDIV16
LPRC
LPRC
Oscillator
Secondary Oscillator
SOSC
SOSCO
SOSCI
SOSCEN
Enable
Oscillator
WDT, PWRT
Clock Source Option
for other Modules
Preliminary
DS70175D-page 127
PIC24H
8.1
FRC Oscillator
FRC Oscillator with PLL
Primary (XT, HS or EC) Oscillator
Primary Oscillator with PLL
Secondary (LP) Oscillator
LPRC Oscillator
FRC Oscillator with postscaler
8.1.1
2.
3.
8.1.2
DS70175D-page 128
1.
EQUATION 8-1:
DEVICE OPERATING
FREQUENCY
FCY = FOSC/2
8.1.3
PLL CONFIGURATION
EQUATION 8-2:
Preliminary
FOSC CALCULATION
M
( N1*N2
)
FOSC = FIN*
PIC24H
For example, suppose a 10 MHz crystal is being used,
with XT with PLL being the selected oscillator mode.
If PLLPRE<4:0> = 0, then N1 = 2. This yields a VCO
input of 10/2 = 5 MHz, which is within the acceptable
range of 0.8-8 MHz. If PLLDIV<8:0> = 0x1E, then
M = 32. This yields a VCO output of 5 x 32 = 160 MHz,
which is within the 100-200 MHz ranged needed.
EQUATION 8-3:
FCY =
FOSC 1 10000000*32
=
= 40 MIPS
2
2
2*2
FIGURE 8-2:
0.8-8.0 MHz
Here
Source (Crystal, External
Clock or Internal RC)
PLLPRE
100-200 MHz
Here
VCO
12.5-80 MHz
Here
FOSC
PLLPOST
PLLDIV
1.6-16.0 MHz
Here
Divide by
2-33
Divide by
2-513
TABLE 8-1:
Divide by
2, 4, 8
Oscillator Mode
Oscillator Source
POSCMD<1:0>
FNOSC<2:0>
Note
Internal
11
111
1, 2
Internal
11
110
Internal
11
101
Secondary
11
100
Primary
10
011
Primary
01
011
Primary
00
011
Primary
10
010
Primary
01
010
Primary
00
010
Internal
11
001
Internal
11
000
Note 1:
2:
Preliminary
DS70175D-page 129
PIC24H
REGISTER 8-1:
U-0
R-0
R-0
COSC<2:0>
U-0
R/W-y
R/W-y
R/W-y
NOSC<2:0>
bit 15
bit 8
R/W-0
U-0
R-0
U-0
R/C-0
U-0
R/W-0
R/W-0
CLKLOCK
LOCK
CF
LPOSCEN
OSWEN
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
Unimplemented: Read as 0
bit 14-12
bit 11
Unimplemented: Read as 0
bit 10-8
bit 7
bit 6
Unimplemented: Read as 0
bit 5
bit 4
Unimplemented: Read as 0
bit 3
bit 2
Unimplemented: Read as 0
bit 1
bit 0
DS70175D-page 130
Preliminary
PIC24H
REGISTER 8-2:
R/W-0
ROI
R/W-0
R/W-0
R/W-0
R/W-1
DOZEN(1)
DOZE<2:0>
R/W-0
R/W-0
FRCDIV<2:0>
bit 15
bit 8
R/W-0
R/W-1
PLLPOST<1:0>
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
PLLPRE<4:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14-12
bit 11
bit 10-8
bit 7-6
PLLPOST<1:0>: PLL VCO Output Divider Select bits (also denoted as N2, PLL postscaler)
00 = Output/2
01 = Output/4
10 = Reserved (defaults to output/4)
11 = Output/8
bit 5
Unimplemented: Read as 0
bit 4-0
PLLPRE<4:0>: PLL Phase Detector Input Divider bits (also denoted as N1, PLL prescaler)
00000 = Input/2
00001 = Input/3
11111 = Input/33
Note 1:
This bit is cleared when the ROI bit is set and an interrupt occurs.
Preliminary
DS70175D-page 131
PIC24H
REGISTER 8-3:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
R/W-0
PLLDIV<8>
bit 15
bit 8
R/W-0
R/W-0
R/W-1
R/W-1
R/W-0
R/W-0
R/W-0
R/W-0
PLLDIV<7:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-9
Unimplemented: Read as 0
bit 8-0
111111111 = 513
DS70175D-page 132
Preliminary
PIC24H
REGISTER 8-4:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
U-0
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
TUN5
TUN4
TUN3
TUN2
TUN1
TUN0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-6
Unimplemented: Read as 0
bit 5-0
Preliminary
x = Bit is unknown
DS70175D-page 133
PIC24H
8.2
8.2.1
1.
2.
3.
4.
8.2.2
5.
6.
OSCILLATOR SWITCHING
SEQUENCE
2.
3.
4.
5.
If
desired,
read
the
COSC
bits
(OSCCON<14:12>) to determine the current
oscillator source.
Perform the unlock sequence to allow a write to
the OSCCON register high byte.
Write the appropriate value to the NOSC control
bits (OSCCON<10:8>) for the new oscillator
source.
Perform the unlock sequence to allow a write to
the OSCCON register low byte.
Set the OSWEN bit to initiate the oscillator
switch.
8.3
DS70175D-page 134
Preliminary
PIC24H
9.0
Note:
POWER-SAVING FEATURES
This data sheet summarizes the features
of this group of PIC24H devices. It is not
intended to be a comprehensive reference
source. To complement the information in
this data sheet, refer to the dsPIC30F
Family Reference Manual (DS70046).
Clock frequency
Instruction-based Sleep and Idle modes
Software-controlled Doze mode
Selective peripheral control in software
Combinations of these methods can be used to selectively tailor an applications power consumption while
still maintaining critical application features, such as
timing-sensitive communications.
9.1
PIC24H devices allow a wide range of clock frequencies to be selected under application control. If the
system clock configuration is not locked, users can
choose low-power or high-precision oscillators by
simply changing the NOSC bits (OSCCON<10:8>).
The process of changing a system clock during
operation, as well as limitations to the process, are
discussed in more detail in Section 8.0 Oscillator
Configuration.
9.2
Instruction-Based Power-Saving
Modes
EXAMPLE 9-1:
and halts all code execution. Idle mode halts the CPU
and code execution, but allows peripheral modules to
continue operation. The assembly syntax of the
PWRSAV instruction is shown in Example 9-1.
Note:
9.2.1
SLEEP MODE
PWRSAV #SLEEP_MODE
PWRSAV #IDLE_MODE
Preliminary
DS70175D-page 135
PIC24H
9.2.2
IDLE MODE
9.2.3
9.3
Doze Mode
9.4
DS70175D-page 136
Preliminary
If a PMD bit is set, the corresponding module is disabled after a delay of 1 instruction
cycle. Similarly, if a PMD bit is cleared, the
corresponding module is enabled after a
delay of 1 instruction cycle (assuming the
module control registers are already
configured to enable module operation).
PIC24H
10.0
Note:
I/O PORTS
This data sheet summarizes the features
of this group of PIC24H devices. It is not
intended to be a comprehensive reference
source. To complement the information in
this data sheet, refer to the dsPIC30F
Family Reference Manual (DS70046).
10.1
FIGURE 10-1:
Output Multiplexers
I/O
Peripheral Output Enable
Peripheral Output Data
PIO Module
WR TRIS
Output Enable
0
1
Output Data
Read TRIS
Data Bus
I/O Pin
CK
TRIS Latch
D
WR LAT +
WR PORT
CK
Data Latch
Read LAT
Input Data
Read Port
Preliminary
DS70175D-page 137
PIC24H
10.2
Open-Drain Configuration
10.4
10.3
10.5
EXAMPLE 10-1:
MOV
MOV
NOP
btss
0xFF00, W0
W0, TRISBB
PORTB, #13
DS70175D-page 138
Preliminary
PIC24H
11.0
Note:
TIMER1
4.
5.
16-bit Timer
16-bit Synchronous Counter
16-bit Asynchronous Counter
6.
FIGURE 11-1:
TON
SOSCO/
T1CK
1x
SOSCEN
SOSCI
Gate
Sync
01
TCY
00
Prescaler
1, 8, 64, 256
TGATE
TCS
TGATE
CK
Set T1IF
Reset
0
TMR1
1
Comparator
Sync
TSYNC
Equal
PR1
Preliminary
DS70175D-page 139
PIC24H
REGISTER 11-1:
R/W-0
U-0
R/W-0
U-0
U-0
U-0
U-0
U-0
TON
TSIDL
bit 15
bit 8
U-0
R/W-0
TGATE
R/W-0
R/W-0
TCKPS<1:0>
U-0
R/W-0
R/W-0
U-0
TSYNC
TCS
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14
Unimplemented: Read as 0
bit 13
bit 12-7
Unimplemented: Read as 0
bit 6
bit 5-4
bit 3
Unimplemented: Read as 0
bit 2
bit 1
bit 0
Unimplemented: Read as 0
DS70175D-page 140
Preliminary
x = Bit is unknown
PIC24H
12.0
Note:
3.
4.
5.
6.
3.
4.
5.
6.
Preliminary
DS70175D-page 141
PIC24H
TIMER2/3 (32-BIT) BLOCK DIAGRAM(1)
FIGURE 12-1:
T2CK
1x
Gate
Sync
01
TCY
00
TCKPS<1:0>
2
TON
Prescaler
1, 8, 64, 256
TGATE
TCS
TGATE
1
Set T3IF
D
CK
0
PR2
PR3
ADC Event Trigger(2)
Equal
Comparator
MSB
LSB
TMR3
Reset
TMR2
Sync
16
Read TMR2
Write TMR2
16
16
TMR3HLD
16
Data Bus<15:0>
Note 1:
2:
The 32-bit timer control bit, T32, must be set for 32-bit timer/counter operation. All control bits are respective
to the T2CON register.
The ADC event trigger is available only on Timer2/3.
DS70175D-page 142
Preliminary
PIC24H
FIGURE 12-2:
TON
T2CK
TCKPS<1:0>
2
1x
Gate
Sync
Prescaler
1, 8, 64, 256
01
00
TGATE
TCS
TCY
1
Set T2IF
CK
TGATE
0
Reset
Sync
TMR2
Comparator
Equal
PR2
Preliminary
DS70175D-page 143
PIC24H
REGISTER 12-1:
R/W-0
U-0
R/W-0
U-0
U-0
U-0
U-0
U-0
TON
TSIDL
bit 15
bit 8
U-0
R/W-0
TGATE
R/W-0
R/W-0
TCKPS<1:0>
R/W-0
T32
(1)
U-0
R/W-0
U-0
TCS
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14
Unimplemented: Read as 0
bit 13
bit 12-7
Unimplemented: Read as 0
bit 6
bit 5-4
bit 3
bit 2
Unimplemented: Read as 0
bit 1
bit 0
Unimplemented: Read as 0
Note 1:
x = Bit is unknown
In 32-bit mode, T3CON control bits do not affect 32-bit timer operation.
DS70175D-page 144
Preliminary
PIC24H
REGISTER 12-2:
R/W-0
U-0
R/W-0
U-0
U-0
U-0
U-0
U-0
TON(1)
TSIDL(1)
bit 15
bit 8
U-0
R/W-0
TGATE(1)
R/W-0
R/W-0
TCKPS<1:0>(1)
U-0
U-0
R/W-0
U-0
TCS(1)
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14
Unimplemented: Read as 0
bit 13
bit 12-7
Unimplemented: Read as 0
bit 6
bit 5-4
bit 3-2
Unimplemented: Read as 0
bit 1
bit 0
Unimplemented: Read as 0
Note 1:
x = Bit is unknown
When 32-bit operation is enabled (T2CON<3> = 1), these bits have no effect on Timery operation; all timer
functions are set through T2CON.
Preliminary
DS70175D-page 145
PIC24H
NOTES:
DS70175D-page 146
Preliminary
PIC24H
13.0
INPUT CAPTURE
Note:
2.
3.
FIGURE 13-1:
16
16
1
Edge Detection Logic
and
Clock Synchronizer
Prescaler
Counter
(1, 4, 16)
FIFO
R/W
Logic
ICTMR
(ICxCON<7>)
ICx Pin
ICM<2:0> (ICxCON<2:0>)
Mode Select
FIFO
Interrupt
Logic
System Bus
Set Flag ICxIF
(in IFSn Register)
Note: An x in a signal, register or bit name denotes the number of the capture channel.
Preliminary
DS70175D-page 147
PIC24H
13.1
REGISTER 13-1:
U-0
U-0
R/W-0
U-0
U-0
U-0
U-0
U-0
ICSIDL
bit 15
bit 8
R/W-0
R/W-0
ICTMR(1)
R/W-0
ICI<1:0>
R-0, HC
R-0, HC
ICOV
ICBNE
R/W-0
R/W-0
R/W-0
ICM<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-14
Unimplemented: Read as 0
bit 13
bit 12-8
Unimplemented: Read as 0
bit 7
bit 6-5
bit 4
bit 3
bit 2-0
Note 1:
Timer selections may vary. Refer to the device data sheet for details.
DS70175D-page 148
Preliminary
PIC24H
14.0
Note:
14.1
OUTPUT COMPARE
This data sheet summarizes the features
of this group of PIC24H devices. It is not
intended to be a comprehensive reference
source. To complement the information in
this data sheet, refer to the dsPIC30F
Family Reference Manual (DS70046).
The output compare module does not have to be disabled after the falling edge of the output pulse. Another
pulse can be initiated by rewriting the value of the
OCxCON register.
14.2
Preliminary
DS70175D-page 149
PIC24H
14.3
EQUATION 14-1:
2.
3.
4.
5.
6.
Note:
14.3.1
PWM PERIOD
EQUATION 14-2:
14.3.2
2.
1.
log10
EXAMPLE 14-1:
( FF )
CY
PWM
log10(2)
bits
Find the Timer Period register value for a desired PWM frequency that is 52.08 kHz, where FCY = 16 MHz and a Timer2
prescaler setting of 1:1.
TCY
= 62.5 ns
PWM Period = 1/PWM Frequency = 1/52.08 kHz = 19.2 s
PWM Period = (PR2 + 1) TCY (Timer2 Prescale Value)
19.2 s
= (PR2 + 1) 62.5 ns 1
PR2
= 306
Find the maximum resolution of the duty cycle that can be used with a 52.08 kHz frequency and a 32 MHz device clock rate:
PWM Resolution = log10 (FCY/FPWM)/log102) bits
= (log10 (16 MHz/52.08 kHz)/log102) bits
= 8.3 bits
DS70175D-page 150
Preliminary
PIC24H
TABLE 14-1:
PWM Frequency
7.6 Hz
61 Hz
122 Hz
977 Hz
3.9 kHz
31.3 kHz
125 kHz
FFFFh
FFFFh
7FFFh
0FFFh
03FFh
007Fh
001Fh
16
16
15
12
10
Resolution (bits)
TABLE 14-2:
PWM Frequency
30.5 Hz
244 Hz
488 Hz
3.9 kHz
15.6 kHz
125 kHz
500 kHz
FFFFh
FFFFh
7FFFh
0FFFh
03FFh
007Fh
001Fh
16
16
15
12
10
Resolution (bits)
TABLE 14-3:
PWM Frequency
76 Hz
610 Hz
1.22 Hz
9.77 kHz
39 kHz
313 kHz
1.25 MHz
FFFFh
FFFFh
7FFFh
0FFFh
03FFh
007Fh
001Fh
16
16
15
12
10
Resolution (bits)
FIGURE 14-1:
OCxRS(1)
Output
Logic
OCxR(1)
3
OCM2:OCM0
Mode Select
Comparator
0
16
OCTSEL
OCx(1)
Output Enable
OCFA or OCFB(2)
16
S Q
R
Where x is shown, reference is made to the registers associated with the respective output compare channels
1 through 8.
2: OCFA pin controls OC1-OC4 channels. OCFB pin controls OC5-OC8 channels.
3: Each output compare channel can use one of two selectable time bases. Refer to the device data sheet for the
time bases associated with the module.
Note:
Preliminary
DS70175D-page 151
PIC24H
14.4
REGISTER 14-1:
U-0
U-0
R/W-0
U-0
U-0
U-0
U-0
U-0
OCSIDL
bit 15
bit 8
U-0
U-0
U-0
R-0 HC
R/W-0
OCFLT
OCTSEL(1)
R/W-0
R/W-0
R/W-0
OCM<2:0>
bit 7
bit 0
Legend:
HC = Cleared in Hardware
HS = Set in Hardware
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-14
Unimplemented: Read as 0
bit 13
bit 12-5
Unimplemented: Read as 0
bit 4
bit 3
bit 2-0
Note 1:
Refer to the device data sheet for specific time bases available to the output compare module.
DS70175D-page 152
Preliminary
PIC24H
15.0
Note:
SERIAL PERIPHERAL
INTERFACE (SPI)
This data sheet summarizes the features
of this group of PIC24H devices. It is not
intended to be a comprehensive reference
source. To complement the information in
this data sheet, refer to the dsPIC30F
Family Reference Manual (DS70046).
The Serial Peripheral Interface (SPI) module is a synchronous serial interface useful for communicating with
other peripheral or microcontroller devices. These
peripheral devices may be serial EEPROMs, shift registers, display drivers, A/D converters, etc. The SPI module
is compatible with SPI and SIOP from Motorola.
Note:
15.1
Note:
1.
The receive operation is double-buffered. When a complete byte is received, it is transferred from SPIxSR to
SPIxBUF.
If the receive buffer is full when new data is being transferred from SPIxSR to SPIxBUF, the module will set the
SPIROV bit indicating an overflow condition. The transfer of the data from SPIxSR to SPIxBUF will not be
completed and the new data will be lost. The module
will not respond to SCL transitions while SPIROV is 1,
effectively disabling the module until SPIxBUF is read
by user software.
2.
3.
4.
5.
If using interrupts:
a) Clear the SPIxIF bit in the respective IFSn
register.
b) Set the SPIxIE bit in the respective IECn
register.
c) Write the SPIxIP bits in the respective IPCn
register to set the interrupt priority.
Write the desired settings to the SPIxCON
register with MSTEN (SPIxCON1<5>) = 1.
Clear the SPIROV bit (SPIxSTAT<6>).
Enable SPI operation by setting the SPIEN bit
(SPIxSTAT<15>).
Write the data to be transmitted to the SPIxBUF
register. Transmission (and reception) will start as
soon as data is written to the SPIxBUF register.
Preliminary
DS70175D-page 153
PIC24H
To set up the SPI module for the Slave mode of operation:
1.
2.
3.
4.
FIGURE 15-1:
5.
6.
7.
The SPI module generates an interrupt indicating completion of a byte or word transfer, as well as a separate
interrupt for all SPI error conditions.
Note:
SCKx
1:1 to 1:8
Secondary
Prescaler
1:1/4/16/64
Primary
Prescaler
FCY
SSx
Sync
Control
Select
Edge
Control
Clock
SPIxCON1<1:0>
Shift Control
SPIxCON1<4:2>
SDOx
Enable
Master Clock
bit 0
SDIx
SPIxSR
Transfer
Transfer
SPIxRXB
SPIxTXB
SPIxBUF
Read SPIxBUF
Write SPIxBUF
16
Internal Data Bus
DS70175D-page 154
Preliminary
PIC24H
FIGURE 15-2:
SDOx
SDIx
SDIx
Shift Register
(SPIxSR)
SDOx
LSb
MSb
MSb
LSb
SPI Buffer
(SPIxBUF)(2)
Shift Register
(SPIxSR)
Serial Clock
SCKx
SCKx
SPI Buffer
(SPIxBUF)(2)
SSx(1)
(MSTEN (SPIxCON1<5>) = 1)
Note
1:
2:
User must write transmit data to/read received data from SPIxBUF. The SPIxTXB and SPIxRXB registers are memory
mapped to SPIxBUF.
FIGURE 15-3:
PIC24H
(SPI Slave, Frame Slave)
SDOx
SDIx
SDIx
SDOx
Serial Clock
SCKx
SCKx
SSx
SSx
Frame Sync
Pulse
FIGURE 15-4:
PIC24H
(SPI Master, Frame Slave)
SDIx
SDOx
SDOx
SDIx
SCKx
Serial Clock
SSx
SCKx
SSx
Frame Sync
Pulse
Preliminary
DS70175D-page 155
PIC24H
FIGURE 15-5:
PIC24H
(SPI Slave, Frame Slave)
SDIx
SDOx
SDOx
SDIx
Serial Clock
SCKx
SCKx
SSx
SSx
Frame Sync
Pulse
FIGURE 15-6:
PIC24H
(SPI Master, Frame Slave)
SDIx
SDOx
SDOx
SDIx
Serial Clock
SCKx
SCKx
SSx
SSx
Frame Sync
Pulse
EQUATION 15-1:
TABLE 15-1:
FCY
Primary Prescaler * Secondary Prescaler
1:1
2:1
4:1
6:1
8:1
1:1
Invalid
Invalid
10000
6666.67
5000
4:1
10000
5000
2500
1666.67
1250
16:1
2500
1250
625
416.67
312.50
64:1
625
312.5
156.25
104.17
78.125
1:1
5000
2500
1250
833
625
FCY = 5 MHz
Primary Prescaler Settings
Note:
4:1
1250
625
313
208
156
16:1
313
156
78
52
39
64:1
78
39
20
13
10
DS70175D-page 156
Preliminary
PIC24H
REGISTER 15-1:
R/W-0
U-0
R/W-0
U-0
U-0
U-0
U-0
U-0
SPIEN
SPISIDL
bit 15
bit 8
U-0
R/C-0
U-0
U-0
U-0
U-0
R-0
R-0
SPIROV
SPITBF
SPIRBF
bit 7
bit 0
Legend:
C = Clearable bit
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
Unimplemented: Read as 0
bit 13
bit 12-7
Unimplemented: Read as 0
bit 6
bit 5-2
Unimplemented: Read as 0
bit 1
bit 0
Preliminary
DS70175D-page 157
PIC24H
REGISTER 15-2:
U-0
U-0
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
DISSCK
DISSDO
MODE16
SMP
CKE(1)
bit 15
bit 8
R/W-0
R/W-0
R/W-0
SSEN
CKP
MSTEN
R/W-0
R/W-0
R/W-0
R/W-0
SPRE<2:0>
R/W-0
PPRE<1:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-13
Unimplemented: Read as 0
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4-2
bit 1-0
Note 1:
The CKE bit is not used in the Framed SPI modes. The user should program this bit to 0 for the Framed
SPI modes (FRMEN = 1).
DS70175D-page 158
Preliminary
PIC24H
REGISTER 15-3:
R/W-0
R/W-0
R/W-0
U-0
U-0
U-0
U-0
U-0
FRMEN
SPIFSD
FRMPOL
bit 15
bit 8
U-0
U-0
U-0
U-0
U-0
U-0
R/W-0
U-0
FRMDLY
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
bit 13
bit 12-2
Unimplemented: Read as 0
bit 1
bit 0
Unimplemented: Read as 0
This bit must not be set to 1 by the user application.
Preliminary
DS70175D-page 159
PIC24H
NOTES:
DS70175D-page 160
Preliminary
PIC24H
16.0
Note:
INTER-INTEGRATED CIRCUIT
(I2C)
This data sheet summarizes the features
of this group of PIC24H devices. It is not
intended to be a comprehensive reference
source. To complement the information in
this data sheet, refer to the dsPIC30F
Family Reference Manual (DS70046).
16.1
Operating Modes
16.2
I2C Registers
16.3
I2C Interrupts
16.4
EQUATION 16-1:
I2CxBRG =
FCY
1
1,111,111
Preliminary
DS70175D-page 161
PIC24H
FIGURE 16-1:
SCLx
Shift
Clock
I2CxRSR
LSB
SDAx
Address Match
Match Detect
Write
I2CxMSK
Write
Read
I2CxADD
Read
Start and Stop
Bit Detect
Write
Start and Stop
Bit Generation
Control Logic
I2CxSTAT
Collision
Detect
Read
Write
I2CxCON
Acknowledge
Generation
Read
Clock
Stretching
Write
I2CxTRN
LSB
Read
Shift Clock
Reload
Control
Write
I2CxBRG
Read
TCY/2
DS70175D-page 162
Preliminary
PIC24H
16.5
16.8
TABLE 16-1:
16.9
0x00
16.9.1
0x01-0x03
Reserved
0x04-0x07
0x08-0x77
0x78-0x7b
0x7c-0x7f
Reserved
16.6
16.7
IPMI Support
16.9.2
Preliminary
DS70175D-page 163
PIC24H
16.11 Slope Control
2
DS70175D-page 164
Preliminary
PIC24H
REGISTER 16-1:
R/W-0
U-0
R/W-0
R/W-1 HC
R/W-0
R/W-0
R/W-0
R/W-0
I2CEN
I2CSIDL
SCLREL
IPMIEN
A10M
DISSLW
SMEN
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0 HC
R/W-0 HC
R/W-0 HC
R/W-0 HC
R/W-0 HC
GCEN
STREN
ACKDT
ACKEN
RCEN
PEN
RSEN
SEN
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
HS = Set in hardware
HC = Cleared in hardware
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
Unimplemented: Read as 0
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
STREN: SCLx Clock Stretch Enable bit (when operating as I2C slave)
Used in conjunction with SCLREL bit.
1 = Enable software or receive clock stretching
0 = Disable software or receive clock stretching
Preliminary
DS70175D-page 165
PIC24H
REGISTER 16-1:
bit 5
ACKDT: Acknowledge Data bit (when operating as I2C master, applicable during master receive)
Value that will be transmitted when the software initiates an Acknowledge sequence.
1 = Send NACK during Acknowledge
0 = Send ACK during Acknowledge
bit 4
bit 3
bit 2
bit 1
RSEN: Repeated Start Condition Enable bit (when operating as I2C master)
1 = Initiate Repeated Start condition on SDAx and SCLx pins. Hardware clear at end of
master Repeated Start sequence.
0 = Repeated Start condition not in progress
bit 0
DS70175D-page 166
Preliminary
PIC24H
REGISTER 16-2:
R-0 HSC
R-0 HSC
U-0
U-0
U-0
R/C-0 HS
R-0 HSC
R-0 HSC
ACKSTAT
TRSTAT
BCL
GCSTAT
ADD10
bit 15
bit 8
R/C-0 HS
R/C-0 HS
R-0 HSC
R/C-0 HSC
R/C-0 HSC
R-0 HSC
R-0 HSC
R-0 HSC
IWCOL
I2COV
D_A
R_W
RBF
TBF
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
HS = Set in hardware
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
TRSTAT: Transmit Status bit (when operating as I2C master, applicable to master transmit operation)
1 = Master transmit is in progress (8 bits + ACK)
0 = Master transmit is not in progress
Hardware set at beginning of master transmission. Hardware clear at end of slave Acknowledge.
bit 13-11
Unimplemented: Read as 0
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
P: Stop bit
1 = Indicates that a Stop bit has been detected last
0 = Stop bit was not detected last
Hardware set or clear when Start, Repeated Start or Stop detected.
Preliminary
DS70175D-page 167
PIC24H
REGISTER 16-2:
bit 3
S: Start bit
1 = Indicates that a Start (or Repeated Start) bit has been detected last
0 = Start bit was not detected last
Hardware set or clear when Start, Repeated Start or Stop detected.
bit 2
bit 1
bit 0
DS70175D-page 168
Preliminary
PIC24H
REGISTER 16-3:
U-0
U-0
U-0
U-0
U-0
U-0
R/W-0
R/W-0
AMSK9
AMSK8
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
AMSK7
AMSK6
AMSK5
AMSK4
AMSK3
AMSK2
AMSK1
AMSK0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-10
Unimplemented: Read as 0
bit 9-0
Preliminary
DS70175D-page 169
PIC24H
NOTES:
DS70175D-page 170
Preliminary
PIC24H
17.0
Note:
UNIVERSAL ASYNCHRONOUS
RECEIVER TRANSMITTER
(UART)
This data sheet summarizes the features
of this group of PIC24H devices. It is not
intended to be a comprehensive reference
source. To complement the information in
this data sheet, refer to the dsPIC30F
Family Reference Manual (DS70046).
FIGURE 17-1:
IrDA
BCLK
UxRTS
UxCTS
UART Receiver
UxRX
UART Transmitter
UxTX
Note 1: Both UART1 and UART2 can trigger a DMA data transfer. If U1TX, U1RX, U2TX or U2RX is selected as
a DMA IRQ source, a DMA transfer occurs when the U1TXIF, U1RXIF, U2TXIF or U2RXIF bit gets set as
a result of a UART1 or UART2 transmission or reception.
2: If DMA transfers are required, the UART TX/RX FIFO buffer must be set to a size of 1 byte/word
(i.e., UTXISEL<1:0> = 00 and URXISEL<1:0> = 00).
Preliminary
DS70175D-page 171
PIC24H
17.1
EQUATION 17-2:
Baud Rate =
EQUATION 17-1:
FCY
Baud Rate =
16 (BRGx + 1)
Note:
BRGx =
Note:
FCY
1
16 Baud Rate
FCY
4 (BRGx + 1)
FCY
1
4 Baud Rate
EXAMPLE 17-1:
=
=
=
=
=
Error
=
=
DS70175D-page 172
Preliminary
PIC24H
17.2
1.
2.
3.
4.
5.
6.
2.
3.
4.
5.
6.
17.5
17.3
1.
17.4
3.
4.
5.
2.
3.
4.
5.
17.6
17.7
Infrared Support
17.7.1
1.
17.7.2
Preliminary
DS70175D-page 173
PIC24H
REGISTER 17-1:
R/W-0
U-0
R/W-0
R/W-0
R/W-0
U-0
UARTEN
USIDL
IREN(1)
RTSMD
R/W-0(2)
R/W-0(2)
UEN<1:0>
bit 15
bit 8
R/W-0 HC
R/W-0
R/W-0 HC
R/W-0
R/W-0
WAKE
LPBACK
ABAUD
URXINV
BRGH
R/W-0
R/W-0
PDSEL<1:0>
R/W-0
STSEL
bit 7
bit 0
Legend:
HC = Hardware cleared
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
Unimplemented: Read as 0
bit 13
bit 12
bit 11
bit 10
Unimplemented: Read as 0
bit 9-8
bit 7
WAKE: Wake-up on Start bit Detect During Sleep Mode Enable bit
1 = UARTx will continue to sample the UxRX pin; interrupt generated on falling edge; bit cleared
in hardware on following rising edge
0 = No wake-up enabled
bit 6
bit 5
bit 4
Note 1:
2:
This feature is only available for the 16x BRG mode (BRGH = 0).
Bit availability depends on pin availability.
DS70175D-page 174
Preliminary
PIC24H
REGISTER 17-1:
bit 3
bit 2-1
bit 0
Note 1:
2:
This feature is only available for the 16x BRG mode (BRGH = 0).
Bit availability depends on pin availability.
Preliminary
DS70175D-page 175
PIC24H
REGISTER 17-2:
R/W-0
R/W-0
R/W-0
U-0
R/W-0 HC
R/W-0
R-0
R-1
UTXISEL1
UTXINV(1)
UTXISEL0
UTXBRK
UTXEN
UTXBF
TRMT
bit 15
bit 8
R/W-0
R/W-0
URXISEL<1:0>
R/W-0
R-1
R-0
R-0
R/C-0
R-0
ADDEN
RIDLE
PERR
FERR
OERR
URXDA
bit 7
bit 0
Legend:
HC = Hardware cleared
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15,13
bit 14
bit 12
Unimplemented: Read as 0
bit 11
bit 10
bit 9
bit 8
bit 7-6
bit 5
Note 1:
Value of bit only affects the transmit properties of the module when the IrDA encoder is enabled
(IREN = 1).
DS70175D-page 176
Preliminary
PIC24H
REGISTER 17-2:
bit 4
bit 3
bit 2
bit 1
bit 0
Note 1:
Value of bit only affects the transmit properties of the module when the IrDA encoder is enabled
(IREN = 1).
Preliminary
DS70175D-page 177
PIC24H
NOTES:
DS70175D-page 178
Preliminary
PIC24H
18.0
Note:
18.1
Overview
The Enhanced Controller Area Network (ECAN) module is a serial interface, useful for communicating with
other CAN modules or microcontroller devices. This
interface/protocol was designed to allow communications within noisy environments. The PIC24H devices
contain up to two ECAN modules.
The CAN module is a communication controller implementing the CAN 2.0 A/B protocol, as defined in the
BOSCH specification. The module will support CAN 1.2,
CAN 2.0A, CAN 2.0B Passive and CAN 2.0B Active
versions of the protocol. The module implementation is
a full CAN system. The CAN specification is not covered
within this data sheet. The reader may refer to the
BOSCH CAN specification for further details.
The module features are as follows:
Implementation of the CAN protocol, CAN 1.2,
CAN 2.0A and CAN 2.0B
Standard and extended data frames
0-8 bytes data length
Programmable bit rate up to 1 Mbit/sec
Automatic response to remote transmission
requests
Up to 8 transmit buffers with application specified
prioritization and abort capability (each buffer may
contain up to 8 bytes of data)
Up to 32 receive buffers (each buffer may contain
up to 8 bytes of data)
Up to 16 full (standard/extended identifier)
acceptance filters
3 full acceptance filter masks
DeviceNet addressing support
Programmable wake-up functionality with
integrated low-pass filter
Programmable Loopback mode supports self-test
operation
Signaling via interrupt capabilities for all CAN
receiver and transmitter error states
Programmable clock source
Programmable link to input capture module (IC2
for both CAN1 and CAN2) for time-stamping and
network synchronization
Low-power Sleep and Idle mode
18.2
Frame Types
Preliminary
DS70175D-page 179
PIC24H
FIGURE 18-1:
RXF15 Filter
RXF14 Filter
RXF13 Filter
RXF12 Filter
DMA Controller
RXF11 Filter
RXF10 Filter
RXF9 Filter
RXF8 Filter
RXF7 Filter
RXF6 Filter
RXF5 Filter
RXF4 Filter
RXF3 Filter
RXF2 Filter
RXM2 Mask
RXF1 Filter
RXM1 Mask
RXF0 Filter
RXM0 Mask
Transmit Byte
Sequencer
Message Assembly
Buffer
Control
Configuration
Logic
CAN Protocol
Engine
CPU
Bus
Interrupts
CiTX(1)
CiRX(1)
DS70175D-page 180
Preliminary
PIC24H
18.3
Modes of Operation
Note:
Initialization Mode
Disable Mode
Normal Operation Mode
Listen Only Mode
Listen All Messages Mode
Loopback Mode
18.3.1
INITIALIZATION MODE
18.3.2
DISABLE MODE
18.3.5
18.3.6
18.3.4
18.3.3
LOOPBACK MODE
If the Loopback mode is activated, the module will connect the internal transmit signal to the internal receive
signal at the module boundary. The transmit and
receive pins revert to their port I/O function.
18.4
18.4.1
Message Reception
RECEIVE BUFFERS
Preliminary
DS70175D-page 181
PIC24H
An additional buffer is always committed to monitoring
the bus for incoming messages. This buffer is called
the Message Assembly Buffer (MAB).
All messages are assembled by the MAB and are transferred to the buffers only if the acceptance filter criterion
are met. When a message is received, the RBIF flag
(CiINTF<1>) will be set. The user would then need to
inspect the CiVEC and/or CiRXFUL1 register to determine which filter and buffer caused the interrupt to get
generated. The RBIF bit can only be set by the module
when a message is received. The bit is cleared by the
user when it has completed processing the message in
the buffer. If the RBIE bit is set, an interrupt will be
generated when a message is received.
18.4.2
RECEIVE ERRORS
18.4.6
18.4.3
18.4.5
RECEIVE INTERRUPTS
18.4.4
- Receiver Warning:
The RXWAR bit indicates that the receive error
counter (RERRCNT<7:0>) has reached the
warning limit of 96.
DS70175D-page 182
- Receiver Overrun:
The RBOVIF bit (CiINTF<2>) indicates that an
overrun condition occurred.
Preliminary
PIC24H
18.5
18.5.1
18.5.4
Message Transmission
TRANSMIT BUFFERS
18.5.2
18.5.3
TRANSMISSION SEQUENCE
AUTOMATIC PROCESSING OF
REMOTE TRANSMISSION
REQUESTS
18.5.5
ABORTING MESSAGE
TRANSMISSION
18.5.6
TRANSMISSION ERRORS
Preliminary
DS70175D-page 183
PIC24H
18.5.7
TRANSMIT INTERRUPTS
18.6
Transmit Interrupt:
At least one of the three transmit buffers is empty
(not scheduled) and can be loaded to schedule a
message for transmission. Reading the TXnIF
flags will indicate which transmit buffer is available
and caused the interrupt.
FIGURE 18-2:
18.6.1
BIT TIMING
The time segments and also the nominal bit time are
made up of integer units of time called time quanta or
TQ. By definition, the nominal bit time has a minimum
of 8 TQ and a maximum of 25 TQ. Also, by definition,
the minimum nominal bit time is 1 sec corresponding
to a maximum bit rate of 1 MHz.
Input Signal
Sync
Prop
Segment
Phase
Segment 1
Phase
Segment 2
Sync
Sample Point
TQ
DS70175D-page 184
Preliminary
PIC24H
18.6.2
PRESCALER SETTING
EQUATION 18-1:
18.6.6
SYNCHRONIZATION
TQ = 2 (BRP<5:0> + 1)/FCAN
18.6.6.1
18.6.3
PROPAGATION SEGMENT
18.6.4
PHASE SEGMENTS
18.6.6.2
SAMPLE POINT
Resynchronization
18.6.5
Hard Synchronization
Preliminary
DS70175D-page 185
PIC24H
REGISTER 18-1:
U-0
U-0
R/W-0
R/W-0
R/W-0
CSIDL
ABAT
CANCKS
R/W-1
R/W-0
R/W-0
REQOP<2:0>
bit 15
bit 8
R-1
R-0
R-0
OPMODE<2:0>
U-0
R/W-0
U-0
U-0
R/W-0
CANCAP
WIN
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-14
Unimplemented: Read as 0
bit 13
bit 12
bit 11
bit 10-8
000
001
010
011
100
101
110
111
bit 7-5
bit 4
Unimplemented: Read as 0
bit 3
bit 2-1
Unimplemented: Read as 0
bit 0
DS70175D-page 186
Preliminary
PIC24H
REGISTER 18-2:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
U-0
U-0
U-0
R-0
R-0
R-0
R-0
R-0
DNCNT<4:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-5
Unimplemented: Read as 0
bit 4-0
Preliminary
x = Bit is unknown
DS70175D-page 187
PIC24H
REGISTER 18-3:
U-0
U-0
U-0
R-0
R-0
R-0
R-0
R-0
FILHIT<4:0>
bit 15
bit 8
U-0
R-1
R-0
R-0
R-0
R-0
R-0
R-0
ICODE<6:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-13
Unimplemented: Read as 0
bit 12-8
bit 7
Unimplemented: Read as 0
bit 6-0
x = Bit is unknown
0010000-0111111 = Reserved
0001111 = RB15 buffer Interrupt
....
0001001 = RB9 buffer interrupt
0001000 = RB8 buffer interrupt
0000111 = TRB7 buffer interrupt
0000110 = TRB6 buffer interrupt
0000101 = TRB5 buffer interrupt
0000100 = TRB4 buffer interrupt
0000011 = TRB3 buffer interrupt
0000010 = TRB2 buffer interrupt
0000001 = TRB1 buffer interrupt
0000000 = TRB0 Buffer interrupt
DS70175D-page 188
Preliminary
PIC24H
REGISTER 18-4:
R/W-0
R/W-0
DMABS<2:0>
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
U-0
U-0
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
FSA<4:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-13
x = Bit is unknown
111
110
101
100
011
010
001
000
bit 12-5
Unimplemented: Read as 0
bit 4-0
Preliminary
DS70175D-page 189
PIC24H
REGISTER 18-5:
U-0
U-0
R-0
R-0
R-0
R-0
R-0
R-0
FBP<5:0>
bit 15
bit 8
U-0
U-0
R-0
R-0
R-0
R-0
R-0
R-0
FNRB<5:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-14
Unimplemented: Read as 0
bit 13-8
bit 7-6
Unimplemented: Read as 0
bit 5-0
DS70175D-page 190
Preliminary
x = Bit is unknown
PIC24H
REGISTER 18-6:
U-0
U-0
R-0
R-0
R-0
R-0
R-0
R-0
TXBO
TXBP
RXBP
TXWAR
RXWAR
EWARN
bit 15
bit 8
R/C-0
R/C-0
R/C-0
U-0
R/C-0
R/C-0
R/C-0
R/C-0
IVRIF
WAKIF
ERRIF
FIFOIF
RBOVIF
RBIF
TBIF
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-14
Unimplemented: Read as 0
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
bit 7
bit 6
bit 5
bit 4
Unimplemented: Read as 0
bit 3
bit 2
bit 1
bit 0
Preliminary
DS70175D-page 191
PIC24H
REGISTER 18-7:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
IVRIE
WAKIE
ERRIE
FIFOIE
RBOVIE
RBIE
TBIE
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-8
Unimplemented: Read as 0
bit 7
bit 6
bit 5
bit 4
Unimplemented: Read as 0
bit 3
bit 2
bit 1
bit 0
DS70175D-page 192
Preliminary
x = Bit is unknown
PIC24H
REGISTER 18-8:
R-0
R-0
R-0
R-0
R-0
R-0
R-0
TERRCNT<7:0>
bit 15
bit 8
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
RERRCNT<7:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-8
bit 7-0
Preliminary
x = Bit is unknown
DS70175D-page 193
PIC24H
REGISTER 18-9:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
SJW<1:0>
R/W-0
R/W-0
R/W-0
BRP<5:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-8
Unimplemented: Read as 0
bit 7-6
bit 5-0
DS70175D-page 194
Preliminary
x = Bit is unknown
PIC24H
REGISTER 18-10: CiCFG2: ECAN MODULE BAUD RATE CONFIGURATION REGISTER 2
U-0
R/W-x
U-0
U-0
U-0
WAKFIL
R/W-x
R/W-x
R/W-x
SEG2PH<2:0>
bit 15
bit 8
R/W-x
R/W-x
SEG2PHTS
SAM
R/W-x
R/W-x
R/W-x
SEG1PH<2:0>
R/W-x
R/W-x
R/W-x
PRSEG<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
Unimplemented: Read as 0
bit 14
bit 13-11
Unimplemented: Read as 0
bit 10-8
bit 7
bit 6
bit 5-3
bit 2-0
Preliminary
DS70175D-page 195
PIC24H
REGISTER 18-11: CiFEN1: ECAN MODULE ACCEPTANCE FILTER ENABLE REGISTER
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
FLTEN15
FLTEN14
FLTEN13
FLTEN12
FLTEN11
FLTEN10
FLTEN9
FLTEN8
bit 15
bit 8
R/W-0
R/W-0
R/W-1
R/W-1
R/W-1
R/W-1
R/W-1
R/W-1
FLTEN7
FLTEN6
FLTEN5
FLTEN4
FLTEN3
FLTEN2
FLTEN1
FLTEN0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
REGISTER 18-12: CiBUFPNT1: ECAN MODULE FILTER 0-3 BUFFER POINTER REGISTER
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
F3BP<3:0>
R/W-0
R/W-0
R/W-0
F2BP<3:0>
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
F1BP<3:0>
R/W-0
R/W-0
R/W-0
F0BP<3:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-12
bit 11-8
bit 7-4
bit 3-0
DS70175D-page 196
Preliminary
x = Bit is unknown
PIC24H
REGISTER 18-13: CiBUFPNT2: ECAN MODULE FILTER 4-7 BUFFER POINTER REGISTER
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
F7BP<3:0>
R/W-0
R/W-0
R/W-0
F6BP<3:0>
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
F5BP<3:0>
R/W-0
R/W-0
R/W-0
F4BP<3:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-12
bit 11-8
bit 7-4
bit 3-0
x = Bit is unknown
REGISTER 18-14: CiBUFPNT3: ECAN MODULE FILTER 8-11 BUFFER POINTER REGISTER
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
F11BP<3:0>
R/W-0
R/W-0
R/W-0
F10BP<3:0>
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
F9BP<3:0>
R/W-0
R/W-0
R/W-0
F8BP<3:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-12
bit 11-8
bit 7-4
bit 3-0
Preliminary
x = Bit is unknown
DS70175D-page 197
PIC24H
REGISTER 18-15: CiBUFPNT4: ECAN MODULE FILTER 12-15 BUFFER POINTER REGISTER
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
F15BP<3:0>
R/W-0
R/W-0
R/W-0
F14BP<3:0>
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
F13BP<3:0>
R/W-0
R/W-0
R/W-0
F12BP<3:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-12
bit 11-8
bit 7-4
bit 3-0
DS70175D-page 198
Preliminary
x = Bit is unknown
PIC24H
REGISTER 18-16:
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
SID10
SID9
SID8
SID7
SID6
SID5
SID4
SID3
bit 15
bit 8
R/W-x
R/W-x
R/W-x
U-0
R/W-x
U-0
R/W-x
R/W-x
SID2
SID1
SID0
EXIDE
EID17
EID16
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-5
bit 4
Unimplemented: Read as 0
bit 3
bit 2
Unimplemented: Read as 0
bit 1-0
REGISTER 18-17:
x = Bit is unknown
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
EID15
EID14
EID13
EID12
EID11
EID10
EID9
EID8
bit 15
bit 8
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
EID7
EID6
EID5
EID4
EID3
EID2
EID1
EID0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
Preliminary
DS70175D-page 199
PIC24H
REGISTER 18-18: CiFMSKSEL1: ECAN MODULE FILTER 7-0 MASK SELECTION REGISTER
R/W-0
R/W-0
F7MSK<1:0>
R/W-0
R/W-0
R/W-0
F6MSK<1:0>
R/W-0
R/W-0
F5MSK<1:0>
R/W-0
F4MSK<1:0>
bit 15
bit 8
R/W-0
R/W-0
F3MSK<1:0>
R/W-0
R/W-0
R/W-0
F2MSK<1:0>
R/W-0
R/W-0
F1MSK<1:0>
R/W-0
F0MSK<1:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-14
bit 13-12
bit 11-10
bit 9-8
bit 7-6
bit 5-4
bit 3-2
bit 1-0
DS70175D-page 200
Preliminary
x = Bit is unknown
PIC24H
REGISTER 18-19: CiRXMnSID: ECAN MODULE ACCEPTANCE FILTER MASK n STANDARD
IDENTIFIER
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
SID10
SID9
SID8
SID7
SID6
SID5
SID4
SID3
bit 15
bit 8
R/W-x
R/W-x
R/W-x
U-0
R/W-x
U-0
R/W-x
R/W-x
SID2
SID1
SID0
MIDE
EID17
EID16
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-5
bit 4
Unimplemented: Read as 0
bit 3
bit 2
Unimplemented: Read as 0
bit 1-0
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
EID15
EID14
EID13
EID12
EID11
EID10
EID9
EID8
bit 15
bit 8
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
EID7
EID6
EID5
EID4
EID3
EID2
EID1
EID0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
Preliminary
DS70175D-page 201
PIC24H
REGISTER 18-21: CiRXFUL1: ECAN MODULE RECEIVE BUFFER FULL REGISTER 1
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
RXFUL15
RXFUL14
RXFUL13
RXFUL12
RXFUL11
RXFUL10
RXFUL9
RXFUL8
bit 15
bit 8
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
RXFUL7
RXFUL6
RXFUL5
RXFUL4
RXFUL3
RXFUL2
RXFUL1
RXFUL0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
RXFUL31
RXFUL30
RXFUL29
RXFUL28
RXFUL27
RXFUL26
RXFUL25
RXFUL24
bit 15
bit 8
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
RXFUL23
RXFUL22
RXFUL21
RXFUL20
RXFUL19
RXFUL18
RXFUL17
RXFUL16
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
DS70175D-page 202
Preliminary
PIC24H
REGISTER 18-23: CiRXOVF1: ECAN MODULE RECEIVE BUFFER OVERFLOW REGISTER 1
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
RXOVF15
RXOVF14
RXOVF13
RXOVF12
RXOVF11
RXOVF10
RXOVF9
RXOVF8
bit 15
bit 8
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
RXOVF7
RXOVF6
RXOVF5
RXOVF4
RXOVF3
RXOVF2
RXOVF1
RXOVF0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
RXOVF31
RXOVF30
RXOVF29
RXOVF28
RXOVF27
RXOVF26
RXOVF25
RXOVF24
bit 15
bit 8
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
R/C-0
RXOVF23
RXOVF22
RXOVF21
RXOVF20
RXOVF19
RXOVF18
RXOVF17
RXOVF16
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
x = Bit is unknown
Preliminary
DS70175D-page 203
PIC24H
REGISTER 18-25:
R/W-0
R-0
R-0
R-0
R/W-0
R/W-0
TXENn
TXABTn
TXLARBn
TXERRn
TXREQn
RTRENn
R/W-0
R/W-0
TXnPRI<1:0>
bit 15
bit 8
R/W-0
R-0
TXENm
(1)
TXABTm
R-0
R-0
R/W-0
R/W-0
TXLARBm(1)
TXERRm(1)
TXREQm
RTRENm
R/W-0
R/W-0
TXmPRI<1:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-8
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1-0
Note 1:
DS70175D-page 204
Preliminary
PIC24H
Note:
The buffers, SID, EID, DLC, Data Field and Receive Status registers are stored in DMA RAM. These are
not Special Function Registers.
U-0
U-0
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
SID10
SID9
SID8
SID7
SID6
bit 15
bit 8
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
SID5
SID4
SID3
SID2
SID1
SID0
SRR
IDE
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-13
Unimplemented: Read as 0
bit 12-2
bit 1
bit 0
x = Bit is unknown
U-0
U-0
U-0
R/W-x
R/W-x
R/W-x
R/W-x
EID17
EID16
EID15
EID14
bit 15
bit 8
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
EID13
EID12
EID11
EID10
EID9
EID8
EID7
EID6
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-12
Unimplemented: Read as 0
bit 11-0
Preliminary
x = Bit is unknown
DS70175D-page 205
PIC24H
REGISTER 18-28: CiTRBnDLC: ECAN MODULE BUFFER n DATA LENGTH CONTROL
(n = 0, 1, ..., 31)
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
EID5
EID4
EID3
EID2
EID1
EID0
RTR
RB1
bit 15
bit 8
U-0
U-0
U-0
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
RB0
DLC3
DLC2
DLC1
DLC0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-10
bit 9
bit 8
bit 7-5
Unimplemented: Read as 0
bit 4
bit 3-0
REGISTER 18-29:
x = Bit is unknown
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
TRBnDm7
TRBnDm6
TRBnDm5
TRBnDm4
TRBnDm3
TRBnDm2
TRBnDm1
TRBnDm0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 7-0
Note 1:
x = Bit is unknown
DS70175D-page 206
Preliminary
PIC24H
REGISTER 18-30: CiTRBnSTAT: ECAN MODULE RECEIVE BUFFER n STATUS
(n = 0, 1, ..., 31)
U-0
U-0
U-0
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
FILHIT4
FILHIT3
FILHIT2
FILHIT1
FILHIT0
bit 15
bit 8
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-13
Unimplemented: Read as 0
bit 12-8
FILHIT<4:0>: Filter Hit Code bits (only written by module for receive buffers, unused for transmit buffers)
Encodes number of filter that resulted in writing this buffer.
bit 7-0
Unimplemented: Read as 0
Preliminary
DS70175D-page 207
PIC24H
NOTES:
DS70175D-page 208
Preliminary
PIC24H
19.0
Note:
19.2
19.1
Key Features
2.
19.3
A/D Initialization
Preliminary
DS70175D-page 209
PIC24H
FIGURE 19-1:
VREF+(1)
AVSS
VREF-(1)
AN1
AN4
AN1
AN7
AN10
VREFAN2
AN5
AN2
AN8
AN11
VREF-
+
-
ADC1
CH2(2)
AN4
00100
AN5
00101
AN6
00110
AN7
00111
AN8
01000
AN9
01001
AN10
01010
AN11
01011
AN30
11110
AN31
11111
VREFAN1
Conversion
Result
Conversion Logic
S/H
16-bit
ADC Output
Buffer
+
-
CH3(2)
S/H
CH1,CH2,
CH3,CH0
Sample
00000
00001
00010
00011
AN3
Note 1:
2:
CH1(2)
S/H
Input
Switches
+
-
Sample/Sequence
Control
Bus Interface
AN6
AN9
VREF-
Data Format
AN0
AN3
AN0
Input MUX
Control
CH0
S/H
VREF+, VREF- inputs may be multiplexed with other analog inputs. See device data sheet for details.
Channels 1, 2 and 3 are not applicable for the 12-bit mode of operation.
DS70175D-page 210
Preliminary
PIC24H
FIGURE 19-2:
VREF+(2)
AVSS
VREF-(2)
AN1
AN4
AN1
AN7
AN10
VREFAN2
AN5
AN2
AN8
AN11
VREF-
+
-
ADC2
CH2(3)
AN4
00100
AN5
00101
AN6
00110
AN7
00111
AN8
01000
AN9
01001
AN10
01010
AN11
01011
AN14
11110
AN15
11111
VREFAN1
Conversion
Result
Conversion Logic
S/H
16-bit
ADC Output
Buffer
+
-
CH3(3)
S/H
CH1,CH2,
CH3,CH0
Sample
00000
00001
00010
00011
AN3
Note 1:
2:
3:
CH1(3)
S/H
Input
Switches
+
-
Sample/Sequence
Control
Bus Interface
AN6
AN9
VREF-
Data Format
AN0
AN3
AN0
Input MUX
Control
CH0
S/H
On devices with two ADC modules, AN0-AN15 can be read by either ADC1, ADC2 or both ADCs.
VREF+, VREF- inputs may be multiplexed with other analog inputs. See device data sheet for details.
Channels 1, 2 and 3 are not applicable for the 12-bit mode of operation.
Preliminary
DS70175D-page 211
PIC24H
EQUATION 19-1:
FIGURE 19-3:
TAD
TCY
Output Code
00 0000 0001 (= 1)
00 0000 0000 (= 0)
VREFL
VREFL +
VREFH VREFL
VREFL +
1024
VREFL +
VREFH
1024
(VINH VINL)
FIGURE 19-4:
ADC Internal
RC Clock
TAD
ADxCON3<5:0>
TOSC(1)
X2
TCY
ADC Conversion
Clock Multiplier
1, 2, 3, 4, 5,..., 64
1. Refer to Figure 8-2 for the derivation of FOSC when the PLL is enabled. If the PLL is not used, FOSC is equal to the clock
source frequency. Tosc = 1/Fosc.
DS70175D-page 212
Preliminary
PIC24H
REGISTER 19-1:
R/W-0
U-0
R/W-0
R/W-0
U-0
R/W-0
ADON
ADSIDL
ADDMABM
AD12B
R/W-0
R/W-0
FORM<1:0>
bit 15
bit 8
R/W-0
R/W-0
R/W-0
SSRC<2:0>
U-0
R/W-0
R/W-0
R/W-0
HC,HS
R/C-0
HC, HS
SIMSAM
ASAM
SAMP
DONE
bit 7
bit 0
Legend:
HC = Cleared by hardware
HS = Set by hardware
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15
bit 14
Unimplemented: Read as 0
bit 13
bit 12
bit 11
Unimplemented: Read as 0
bit 10
bit 9-8
bit 7-5
bit 4
Unimplemented: Read as 0
Preliminary
DS70175D-page 213
PIC24H
REGISTER 19-1:
bit 3
SIMSAM: Simultaneous Sample Select bit (only applicable when CHPS<1:0> = 01 or 1x)
When AD12B = 1, SIMSAM is: U-0, Unimplemented, Read as 0
1 = Samples CH0, CH1, CH2, CH3 simultaneously (when CHPS<1:0> = 1x); or
Samples CH0 and CH1 simultaneously (when CHPS<1:0> = 01)
0 = Samples multiple channels individually in sequence
bit 2
bit 1
bit 0
DS70175D-page 214
Preliminary
PIC24H
REGISTER 19-2:
R/W-0
R/W-0
VCFG<2:0>
U-0
U-0
R/W-0
CSCNA
R/W-0
R/W-0
CHPS<1:0>
bit 15
bit 8
R-0
U-0
BUFS
R/W-0
R/W-0
R/W-0
R/W-0
SMPI<3:0>
R/W-0
R/W-0
BUFM
ALTS
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-13
x = Bit is unknown
ADREFAVSS
000
AVDD
001
External VREF+
AVSS
010
AVDD
External VREF-
011
External VREF+
External VREF-
1xx
AVDD
AVSS
bit 12-11
Unimplemented: Read as 0
bit 10
bit 9-8
bit 7
bit 6
Unimplemented: Read as 0
bit 5-2
SMPI<3:0>: Selects Increment Rate for DMA Addresses bits or number of sample/conversion
operations per interrupt
1111 = Increments the DMA address or generates interrupt after completion of every 16th
sample/conversion operation
1110 = Increments the DMA address or generates interrupt after completion of every 15th
sample/conversion operation
0001 = Increments the DMA address or generates interrupt after completion of every 2nd
sample/conversion operation
0000 = Increments the DMA address or generates interrupt after completion of every
sample/conversion operation
bit 1
bit 0
Preliminary
DS70175D-page 215
PIC24H
REGISTER 19-3:
U-0
U-0
U-0
ADRC
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
SAMC<4:0>
bit 15
bit 8
R/W-0
U-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
ADCS<5:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14-13
Unimplemented: Read as 0
bit 12-8
00001 = 1 TAD
00000 = 0 TAD
bit 7-6
Unimplemented: Read as 0
bit 5-0
DS70175D-page 216
Preliminary
x = Bit is unknown
PIC24H
REGISTER 19-4:
U-0
U-0
U-0
U-0
U-0
U-0
U-0
U-0
bit 15
bit 8
U-0
U-0
U-0
U-0
U-0
R/W-0
R/W-0
R/W-0
DMABL<2:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-3
Unimplemented: Read as 0
bit 2-0
DMABL<2:0>: Selects Number of DMA Buffer Locations per Analog Input bits
111 =Allocates 128 words of buffer to each analog input
110 =Allocates 64 words of buffer to each analog input
101 =Allocates 32 words of buffer to each analog input
100 =Allocates 16 words of buffer to each analog input
011 =Allocates 8 words of buffer to each analog input
010 =Allocates 4 words of buffer to each analog input
001 =Allocates 2 words of buffer to each analog input
000 =Allocates 1 word of buffer to each analog input
Preliminary
DS70175D-page 217
PIC24H
REGISTER 19-5:
U-0
U-0
U-0
U-0
U-0
R/W-0
R/W-0
CH123NB<1:0>
R/W-0
CH123SB
bit 15
bit 8
U-0
U-0
U-0
U-0
U-0
R/W-0
R/W-0
CH123NA<1:0>
R/W-0
CH123SA
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
x = Bit is unknown
bit 15-11
Unimplemented: Read as 0
bit 10-9
bit 8
bit 7-3
Unimplemented: Read as 0
bit 2-1
bit 0
DS70175D-page 218
Preliminary
PIC24H
REGISTER 19-6:
R/W-0
U-0
U-0
CH0NB
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
CH0SB<4:0>
bit 15
bit 8
R/W-0
U-0
U-0
CH0NA
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
CH0SA<4:0>
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15
bit 14-13
Unimplemented: Read as 0
bit 12-8
bit 7
bit 6-5
Unimplemented: Read as 0
bit 4-0
Preliminary
x = Bit is unknown
DS70175D-page 219
PIC24H
REGISTER 19-7:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
CSS31
CSS30
CSS29
CSS28
CSS27
CSS26
CSS25
CSS24
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
CSS23
CSS22
CSS21
CSS20
CSS19
CSS18
CSS17
CSS16
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
Note 1:
x = Bit is unknown
REGISTER 19-8:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
CSS15
CSS14
CSS13
CSS12
CSS11
CSS10
CSS9
CSS8
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
CSS7
CSS6
CSS5
CSS4
CSS3
CSS2
CSS1
CSS0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
Note 1:
x = Bit is unknown
DS70175D-page 220
Preliminary
PIC24H
REGISTER 19-9:
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
PCFG31
PCFG30
PCFG29
PCFG28
PCFG27
PCFG26
PCFG25
PCFG24
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
PCFG23
PCFG22
PCFG21
PCFG20
PCFG19
PCFG18
PCFG17
PCFG16
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
Note 1:
2:
x = Bit is unknown
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
PCFG15
PCFG14
PCFG13
PCFG12
PCFG11
PCFG10
PCFG9
PCFG8
bit 15
bit 8
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
PCFG7
PCFG6
PCFG5
PCFG4
PCFG3
PCFG2
PCFG1
PCFG0
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
-n = Value at POR
1 = Bit is set
0 = Bit is cleared
bit 15-0
Note 1:
2:
x = Bit is unknown
Preliminary
DS70175D-page 221
PIC24H
NOTES:
DS70175D-page 222
Preliminary
PIC24H
20.0
SPECIAL FEATURES
Note:
Flexible Configuration
Watchdog Timer (WDT)
Code Protection and CodeGuard Security
JTAG Boundary Scan Interface
In-Circuit Serial Programming (ICSP)
programming capability
In-Circuit Emulation
20.1
Configuration Bits
TABLE 20-1:
Address
Bit 7
RBS<1:0>
0xF80000 FBS
Bit 4
Bit 3
Bit 2
Bit 1
BSS<2:0>
Bit 0
BWRP
IESO
TEMP
FNOSC<2:0>
OSCIOFNC POSCMD<1:0>
WDTPRE
RSS<1:0>
0xF80004 FGS
0xF80008 FOSC
0xF8000A FWDT
Bit 5
0xF80002 FSS
0xF80006 FOSCSEL
Bit 6
FCKSM<1:0>
FWDTEN
0xF8000C FPOR
WINDIS
Reserved(2)
0xF8000E RESERVED3
SSS<2:0>
SWRP
GSS<1:0>
GWRP
WDTPOST<3:0>
FPWRT<2:0>
Reserved
0xF80010 FUID0
0xF80012 FUID1
0xF80014 FUID2
0xF80016 FUID3
Preliminary
DS70175D-page 223
PIC24H
TABLE 20-2:
Bit Field
Register
Description
BWRP
FBS
BSS<2:0>
FBS
RBS<1:0>
FBS
SWRP
FSS
DS70175D-page 224
Preliminary
PIC24H
TABLE 20-2:
Bit Field
Register
SSS<2:0>
FSS
Description
Secure Segment Program Flash Code Protection Size
(FOR 128K and 256K DEVICES)
X11 = No Secure program Flash segment
Secure space is 8K IW less BS
110 = Standard security; secure program Flash segment starts at End
of BS, ends at 0x003FFE
010 = High security; secure program Flash segment starts at End of
BS, ends at 0x003FFE
Secure space is 16K IW less BS
101 = Standard security; secure program Flash segment starts at End
of BS, ends at 0x007FFE
001 = High security; secure program Flash segment starts at End of
BS, ends at 0x007FFE
Secure space is 32K IW less BS
100 = Standard security; secure program Flash segment starts at End
of BS, ends at 0x00FFFE
000 = High security; secure program Flash segment starts at End of
BS, ends at 0x00FFFE
(FOR 64K DEVICES)
X11 = No Secure program Flash segment
Secure space is 4K IW less BS
110 = Standard security; secure program Flash segment starts at End
of BS, ends at 0x001FFE
010 = High security; secure program Flash segment starts at End of
BS, ends at 0x001FFE
Secure space is 8K IW less BS
101 = Standard security; secure program Flash segment starts at End
of BS, ends at 0x003FFE
001 = High security; secure program Flash segment starts at End of
BS, ends at 0x003FFE
Secure space is 16K IW less BS
100 = Standard security; secure program Flash segment starts at End
of BS, ends at 0x007FFE
000 = High security; secure program Flash segment starts at End of
BS, ends at 0x007FFE
RSS<1:0>
FSS
GSS<1:0>
FGS
Preliminary
DS70175D-page 225
PIC24H
TABLE 20-2:
Bit Field
Register
GWRP
FGS
IESO
FOSCSEL
TEMP
FOSCSEL
FNOSC<2:0>
FOSCSEL
FCKSM<1:0>
FOSC
OSCIOFNC
FOSC
POSCMD<1:0>
FOSC
FWDTEN
FWDT
WINDIS
FWDT
WDTPRE
FWDT
WDTPOST
FWDT
DS70175D-page 226
Description
General Segment Write-Protect bit
1 = User program memory is not write-protected
0 = User program memory is write-protected
Preliminary
PIC24H
TABLE 20-2:
20.2
Bit Field
Register
FPWRT<2:0>
FPOR
Reserved
FPOR,
RESERVED3
FGS, FOSCSEL,
FOSC, FWDT,
FPOR
Description
Power-on Reset Timer Value Select bits
111 = PWRT = 128 ms
110 = PWRT = 64 ms
101 = PWRT = 32 ms
100 = PWRT = 16 ms
011 = PWRT = 8 ms
010 = PWRT = 4 ms
001 = PWRT = 2 ms
000 = PWRT = Disabled
Reserved (read as 1 and must be programmed as 1)
Unimplemented (read as 0, write as 0)
FIGURE 20-1:
3.3V
PIC24H
VDD
10 F
VDDCORE/VCAP
VSS
Note 1:
Preliminary
DS70175D-page 227
PIC24H
20.3
FIGURE 20-2:
SWDTEN
FWDTEN
LPRC Control
WDTPOST<3:0>
WDTPRE
WDT
Counter
Prescaler
LPRC Input
32.768 kHz
Postscaler
WDT Overflow
Reset
1 ms/4 ms
DS70175D-page 228
Preliminary
PIC24H
20.4
JTAG Interface
20.7
In-Circuit Debugger
20.5
The PIC24H product families offer advanced implementation of CodeGuard Security. CodeGuard
Security enables multiple parties to securely share
resources (memory, interrupts and peripherals) on a
single chip. This feature helps protect individual
Intellectual Property in collaborative system designs.
When coupled with software encryption libraries,
CodeGuard Security can be used to securely update
Flash even when multiple IP are resident on the single
chip. The code protection features vary depending on
the actual PIC24H implemented. The following
sections provide an overview these features.
20.6
Preliminary
DS70175D-page 229
PIC24H
NOTES:
DS70175D-page 230
Preliminary
PIC24H
21.0
Note:
Preliminary
DS70175D-page 231
PIC24H
All instructions are a single word, except for certain
double word instructions, which were made double
word instructions so that all the required information is
available in these 48 bits. In the second word, the
8 MSbs are 0s. If this second word is executed as an
instruction (by itself), it will execute as a NOP.
Most single-word instructions are executed in a single
instruction cycle, unless a conditional test is true, or the
program counter is changed as a result of the instruction. In these cases, the execution takes two instruction
cycles with the additional instruction cycle(s) executed
as a NOP. Notable exceptions are the BRA (unconditional/computed branch), indirect CALL/GOTO, all table
TABLE 21-1:
Field
#text
Description
Means literal defined by text
(text)
[text]
{ }
<n:m>
.b
.d
.S
.w
bit4
C, DC, N, OV, Z
MCU Status bits: Carry, Digit Carry, Negative, Overflow, Sticky Zero
Expr
lit1
lit4
lit5
lit8
lit10
10-bit unsigned literal {0...255} for Byte mode, {0:1023} for Word mode
lit14
lit16
lit23
None
PC
Program Counter
Slit10
Slit16
Slit6
Wb
Wd
Wdo
Destination W register
{ Wnd, [Wnd], [Wnd++], [Wnd--], [++Wnd], [--Wnd], [Wnd+Wb] }
Wm,Wn
Wm*Wm
Wm*Wn
Wn
DS70175D-page 232
Preliminary
PIC24H
TABLE 21-1:
Field
Description
Wnd
Wns
WREG
Ws
Wso
Source W register
{ Wns, [Wns], [Wns++], [Wns--], [++Wns], [--Wns], [Wns+Wb] }
Preliminary
DS70175D-page 233
PIC24H
TABLE 21-2:
Base
Instr
#
1
10
11
Assembly
Mnemonic
ADD
ADDC
AND
ASR
BCLR
BRA
BSET
BSW
BTG
BTSC
BTSS
Assembly Syntax
ADD
Description
# of
# of
Words Cycles
Status Flags
Affected
f = f + WREG
C,DC,N,OV,Z
ADD
f,WREG
WREG = f + WREG
C,DC,N,OV,Z
ADD
#lit10,Wn
Wd = lit10 + Wd
C,DC,N,OV,Z
ADD
Wb,Ws,Wd
Wd = Wb + Ws
C,DC,N,OV,Z
ADD
Wb,#lit5,Wd
Wd = Wb + lit5
C,DC,N,OV,Z
ADDC
f = f + WREG + (C)
C,DC,N,OV,Z
ADDC
f,WREG
C,DC,N,OV,Z
ADDC
#lit10,Wn
Wd = lit10 + Wd + (C)
C,DC,N,OV,Z
ADDC
Wb,Ws,Wd
Wd = Wb + Ws + (C)
C,DC,N,OV,Z
ADDC
Wb,#lit5,Wd
Wd = Wb + lit5 + (C)
C,DC,N,OV,Z
AND
f = f .AND. WREG
N,Z
AND
f,WREG
N,Z
AND
#lit10,Wn
Wd = lit10 .AND. Wd
N,Z
AND
Wb,Ws,Wd
Wd = Wb .AND. Ws
N,Z
AND
Wb,#lit5,Wd
Wd = Wb .AND. lit5
N,Z
ASR
C,N,OV,Z
ASR
f,WREG
C,N,OV,Z
ASR
Ws,Wd
C,N,OV,Z
ASR
Wb,Wns,Wnd
N,Z
ASR
Wb,#lit5,Wnd
N,Z
BCLR
f,#bit4
Bit Clear f
None
BCLR
Ws,#bit4
Bit Clear Ws
None
BRA
C,Expr
Branch if Carry
1 (2)
None
BRA
GE,Expr
1 (2)
None
BRA
GEU,Expr
1 (2)
None
BRA
GT,Expr
1 (2)
None
BRA
GTU,Expr
1 (2)
None
BRA
LE,Expr
1 (2)
None
BRA
LEU,Expr
1 (2)
None
BRA
LT,Expr
1 (2)
None
BRA
LTU,Expr
1 (2)
None
BRA
N,Expr
Branch if Negative
1 (2)
None
BRA
NC,Expr
1 (2)
None
BRA
NN,Expr
1 (2)
None
BRA
NZ,Expr
1 (2)
None
BRA
Expr
Branch Unconditionally
None
BRA
Z,Expr
Branch if Zero
1 (2)
None
BRA
Wn
Computed Branch
None
BSET
f,#bit4
Bit Set f
None
BSET
Ws,#bit4
Bit Set Ws
None
BSW.C
Ws,Wb
None
BSW.Z
Ws,Wb
None
None
BTG
f,#bit4
Bit Toggle f
BTG
Ws,#bit4
Bit Toggle Ws
None
BTSC
f,#bit4
1
(2 or 3)
None
BTSC
Ws,#bit4
1
(2 or 3)
None
BTSS
f,#bit4
1
(2 or 3)
None
BTSS
Ws,#bit4
1
(2 or 3)
None
DS70175D-page 234
Preliminary
PIC24H
TABLE 21-2:
Base
Instr
#
12
13
Assembly
Mnemonic
BTST
BTSTS
14
CALL
15
CLR
16
CLRWDT
17
COM
18
19
20
CP
CP0
CPB
Assembly Syntax
Description
# of
# of
Words Cycles
Status Flags
Affected
BTST
f,#bit4
Bit Test f
BTST.C
Ws,#bit4
Bit Test Ws to C
BTST.Z
Ws,#bit4
Bit Test Ws to Z
BTST.C
Ws,Wb
BTST.Z
Ws,Wb
BTSTS
f,#bit4
BTSTS.C
Ws,#bit4
BTSTS.Z
Ws,#bit4
CALL
lit23
Call subroutine
None
CALL
Wn
None
CLR
f = 0x0000
None
CLR
WREG
WREG = 0x0000
None
CLR
Ws
CLRWDT
Ws = 0x0000
None
WDTO,Sleep
COM
f=f
N,Z
COM
f,WREG
WREG = f
N,Z
COM
Ws,Wd
Wd = Ws
N,Z
CP
C,DC,N,OV,Z
CP
Wb,#lit5
C,DC,N,OV,Z
CP
Wb,Ws
C,DC,N,OV,Z
CP0
C,DC,N,OV,Z
CP0
Ws
C,DC,N,OV,Z
CPB
C,DC,N,OV,Z
CPB
Wb,#lit5
C,DC,N,OV,Z
CPB
Wb,Ws
C,DC,N,OV,Z
21
CPSEQ
CPSEQ
Wb, Wn
1
(2 or 3)
None
22
CPSGT
CPSGT
Wb, Wn
1
(2 or 3)
None
23
CPSLT
CPSLT
Wb, Wn
1
(2 or 3)
None
24
CPSNE
CPSNE
Wb, Wn
1
(2 or 3)
None
25
DAW
DAW
Wn
Wn = decimal adjust Wn
26
DEC
DEC
f=f1
C,DC,N,OV,Z
DEC
f,WREG
WREG = f 1
C,DC,N,OV,Z
DEC
Ws,Wd
Wd = Ws 1
C,DC,N,OV,Z
DEC2
f=f2
C,DC,N,OV,Z
27
DEC2
DEC2
f,WREG
WREG = f 2
C,DC,N,OV,Z
DEC2
Ws,Wd
Wd = Ws 2
C,DC,N,OV,Z
28
DISI
DISI
#lit14
None
29
DIV
DIV.S
Wm,Wn
18
N,Z,C,OV
DIV.SD
Wm,Wn
18
N,Z,C,OV
DIV.U
Wm,Wn
18
N,Z,C,OV
DIV.UD
Wm,Wn
18
N,Z,C,OV
None
30
EXCH
EXCH
Wns,Wnd
31
FBCL
FBCL
Ws,Wnd
32
FF1L
FF1L
Ws,Wnd
33
FF1R
FF1R
Ws,Wnd
34
GOTO
GOTO
Expr
Go to address
None
GOTO
Wn
Go to indirect
None
Preliminary
DS70175D-page 235
PIC24H
TABLE 21-2:
Base
Instr
#
35
36
37
Assembly
Mnemonic
INC
INC2
IOR
38
LNK
39
LSR
40
41
42
43
44
MOV
MUL
NEG
NOP
POP
Assembly Syntax
PUSH
f=f+1
C,DC,N,OV,Z
INC
f,WREG
WREG = f + 1
C,DC,N,OV,Z
INC
Ws,Wd
Wd = Ws + 1
C,DC,N,OV,Z
INC2
f=f+2
C,DC,N,OV,Z
INC2
f,WREG
WREG = f + 2
C,DC,N,OV,Z
INC2
Ws,Wd
Wd = Ws + 2
C,DC,N,OV,Z
IOR
f = f .IOR. WREG
N,Z
IOR
f,WREG
N,Z
IOR
#lit10,Wn
Wd = lit10 .IOR. Wd
N,Z
IOR
Wb,Ws,Wd
Wd = Wb .IOR. Ws
N,Z
IOR
Wb,#lit5,Wd
Wd = Wb .IOR. lit5
N,Z
LNK
#lit14
None
LSR
C,N,OV,Z
LSR
f,WREG
C,N,OV,Z
LSR
Ws,Wd
C,N,OV,Z
LSR
Wb,Wns,Wnd
N,Z
LSR
Wb,#lit5,Wnd
N,Z
MOV
f,Wn
Move f to Wn
None
MOV
Move f to f
N,Z
MOV
f,WREG
Move f to WREG
N,Z
MOV
#lit16,Wn
None
MOV.b
#lit8,Wn
None
MOV
Wn,f
Move Wn to f
None
MOV
Wso,Wdo
Move Ws to Wd
None
MOV
WREG,f
Move WREG to f
N,Z
MOV.D
Wns,Wd
None
MOV.D
Ws,Wnd
None
MUL.SS
Wb,Ws,Wnd
None
MUL.SU
Wb,Ws,Wnd
None
MUL.US
Wb,Ws,Wnd
None
MUL.UU
Wb,Ws,Wnd
None
MUL.SU
Wb,#lit5,Wnd
None
MUL.UU
Wb,#lit5,Wnd
None
MUL
W3:W2 = f * WREG
None
NEG
f=f+1
C,DC,N,OV,Z
NEG
f,WREG
WREG = f + 1
C,DC,N,OV,Z
NEG
Ws,Wd
Wd = Ws + 1
C,DC,N,OV,Z
NOP
No Operation
None
NOPR
No Operation
None
None
POP
POP
Wdo
None
POP.D
Wnd
None
All
PUSH
None
PUSH
Wso
None
PUSH.D
Wns
None
None
WDTO,Sleep
PUSH.S
46
PWRSAV
Status Flags
Affected
INC
POP.S
45
# of
# of
Words Cycles
Description
PWRSAV
DS70175D-page 236
#lit1
Preliminary
PIC24H
TABLE 21-2:
Base
Instr
#
47
48
Assembly
Mnemonic
RCALL
REPEAT
Assembly Syntax
Description
# of
# of
Words Cycles
Status Flags
Affected
RCALL
Expr
Relative Call
None
RCALL
Wn
Computed Call
None
REPEAT
#lit14
None
REPEAT
Wn
None
None
49
RESET
RESET
50
RETFIE
RETFIE
3 (2)
None
51
RETLW
RETLW
3 (2)
None
52
RETURN
RETURN
53
RLC
RLC
54
55
56
RLNC
RRC
RRNC
#lit10,Wn
3 (2)
None
C,N,Z
RLC
f,WREG
C,N,Z
RLC
Ws,Wd
C,N,Z
RLNC
N,Z
RLNC
f,WREG
N,Z
RLNC
Ws,Wd
N,Z
RRC
C,N,Z
RRC
f,WREG
C,N,Z
RRC
Ws,Wd
C,N,Z
RRNC
N,Z
RRNC
f,WREG
N,Z
RRNC
Ws,Wd
N,Z
57
SE
SE
Ws,Wnd
Wnd = sign-extended Ws
C,N,Z
58
SETM
SETM
f = 0xFFFF
None
SETM
WREG
WREG = 0xFFFF
None
SETM
Ws
Ws = 0xFFFF
None
59
60
61
62
63
64
65
SL
SUB
SUBB
SUBR
SUBBR
SWAP
TBLRDH
SL
f = Left Shift f
C,N,OV,Z
SL
f,WREG
C,N,OV,Z
SL
Ws,Wd
Wd = Left Shift Ws
C,N,OV,Z
SL
Wb,Wns,Wnd
N,Z
SL
Wb,#lit5,Wnd
N,Z
SUB
f = f WREG
C,DC,N,OV,Z
SUB
f,WREG
WREG = f WREG
C,DC,N,OV,Z
SUB
#lit10,Wn
Wn = Wn lit10
C,DC,N,OV,Z
SUB
Wb,Ws,Wd
Wd = Wb Ws
C,DC,N,OV,Z
SUB
Wb,#lit5,Wd
Wd = Wb lit5
C,DC,N,OV,Z
SUBB
f = f WREG (C)
C,DC,N,OV,Z
SUBB
f,WREG
C,DC,N,OV,Z
SUBB
#lit10,Wn
Wn = Wn lit10 (C)
C,DC,N,OV,Z
SUBB
Wb,Ws,Wd
Wd = Wb Ws (C)
C,DC,N,OV,Z
SUBB
Wb,#lit5,Wd
Wd = Wb lit5 (C)
SUBR
f = WREG f
C,DC,N,OV,Z
C,DC,N,OV,Z
SUBR
f,WREG
WREG = WREG f
C,DC,N,OV,Z
SUBR
Wb,Ws,Wd
Wd = Ws Wb
C,DC,N,OV,Z
SUBR
Wb,#lit5,Wd
Wd = lit5 Wb
C,DC,N,OV,Z
SUBBR
f = WREG f (C)
C,DC,N,OV,Z
SUBBR
f,WREG
C,DC,N,OV,Z
SUBBR
Wb,Ws,Wd
Wd = Ws Wb (C)
C,DC,N,OV,Z
SUBBR
Wb,#lit5,Wd
Wd = lit5 Wb (C)
C,DC,N,OV,Z
SWAP.b
Wn
Wn = nibble swap Wn
None
SWAP
Wn
Wn = byte swap Wn
None
TBLRDH
Ws,Wd
None
Preliminary
DS70175D-page 237
PIC24H
TABLE 21-2:
Base
Instr
#
Assembly
Mnemonic
Assembly Syntax
Description
# of
# of
Words Cycles
Status Flags
Affected
66
TBLRDL
TBLRDL
Ws,Wd
Read Prog<15:0> to Wd
67
TBLWTH
TBLWTH
Ws,Wd
None
68
TBLWTL
TBLWTL
Ws,Wd
Write Ws to Prog<15:0>
None
69
ULNK
ULNK
None
70
XOR
XOR
f = f .XOR. WREG
N,Z
XOR
f,WREG
N,Z
XOR
#lit10,Wn
Wd = lit10 .XOR. Wd
N,Z
XOR
Wb,Ws,Wd
Wd = Wb .XOR. Ws
N,Z
XOR
Wb,#lit5,Wd
Wd = Wb .XOR. lit5
N,Z
ZE
Ws,Wnd
Wnd = Zero-extend Ws
C,Z,N
71
ZE
DS70175D-page 238
Preliminary
None
PIC24H
22.0
DEVELOPMENT SUPPORT
22.1
Preliminary
DS70175D-page 239
PIC24H
22.2
MPASM Assembler
22.5
22.6
22.3
22.4
DS70175D-page 240
Preliminary
PIC24H
22.7
22.9
22.8
Preliminary
DS70175D-page 241
PIC24H
22.11 PICSTART Plus Development
Programmer
DS70175D-page 242
Preliminary
PIC24H
23.0
ELECTRICAL CHARACTERISTICS
This section provides an overview of PIC24H electrical characteristics. Additional information will be provided in future
revisions of this document as it becomes available.
Absolute maximum ratings for the PIC24H family are listed below. Exposure to these maximum rating conditions for
extended periods may affect device reliability. Functional operation of the device at these or any other conditions above
the parameters indicated in the operation listings of this specification is not implied.
Preliminary
DS70175D-page 243
PIC24H
23.1
DC Characteristics
TABLE 23-1:
Characteristic
DC5
TABLE 23-2:
VDD Range
(in Volts)
Temp Range
(in C)
Max MIPS
3.0-3.6V
-40C to +85C
40
PIC24H
Symbol
Min
Typ
Max
Unit
TJ
-40
+125
TA
-40
+85
PIC24H
Power Dissipation:
Internal chip power dissipation:
PINT = VDD x (IDD IOH)
PD
PINT + PI/O
PDMAX
(TJ TA)/JA
TABLE 23-3:
Symbol
JA
JA
JA
JA
Typ
Max
Unit
Notes
48.4
C/W
52.3
C/W
38.7
C/W
38.3
C/W
TABLE 23-4:
DC CHARACTERISTICS
Param
Symbol
No.
Characteristic
Min
Typ(1)
Max
Units
Conditions
Operating Voltage
DC10
Supply Voltage
3.0
3.6
DC12
VDR
2.8
DC16
VPOR
VSS
DC17
SVDD
0.05
VDD
Note 1:
2:
Data in Typ column is at 3.3V, 25C unless otherwise stated. Parameters are for design guidance only
and are not tested.
This is the limit to which VDD can be lowered without losing RAM data.
DS70175D-page 244
Preliminary
PIC24H
TABLE 23-5:
DC CHARACTERISTICS
Parameter
No.
Typical(1)
Max
Units
Conditions
27
mA
+25C
DC20a
26
mA
+85C
DC21
33
mA
+25C
DC21a
32
mA
+85C
DC22
44
mA
+25C
DC22a
43
mA
+85C
DC23
60
mA
+25C
DC23a
58
mA
+85C
DC24
74
mA
+25C
DC24a
72
mA
+85C
3.3V
10 MIPS
3.3V
16 MIPS
3.3V
20 MIPS
3.3V
30 MIPS
3.3V
40 MIPS
Preliminary
DS70175D-page 245
PIC24H
TABLE 23-6:
DC CHARACTERISTICS
Parameter
No.
Typical(1)
Max
Units
Conditions
TBD
mA
+25C
DC40a
TBD
mA
+85C
DC41
TBD
mA
+25C
DC41a
TBD
mA
+85C
DC42
TBD
mA
+25C
DC42a
TBD
mA
+85C
DC43
TBD
mA
+25C
DC43a
TBD
mA
+85C
DC44
16.5
mA
+25C
DC44a
16
mA
+85C
3.3V
10 MIPS
3.3V
16 MIPS
3.3V
20 MIPS
3.3V
30 MIPS
3.3V
40 MIPS
TABLE 23-7:
DC CHARACTERISTICS
Parameter
No.
Typical(1)
Max
Units
Conditions
200
+25C
DC60a
TBD
+85C
DC61
TBD
+25C
DC61a
TBD
+85C
3.0V
3.0V
DS70175D-page 246
Preliminary
PIC24H
TABLE 23-8:
DC CHARACTERISTICS
Doze
Ratio
Typical(1)
Max
DC70a
42
1:2
DC70f
26
1:64
DC70g
25
1:128
DC71a
41
1:2
DC71f
25
1:64
DC71g
24
1:128
Parameter No.
Note 1:
Units
Conditions
mA
25C
3.3V
40 MIPS
mA
85C
Data in the Typical column is at 3.3V, 25C unless otherwise stated. Parameters are for design guidance
only and are not tested.
Preliminary
DS70175D-page 247
PIC24H
TABLE 23-9:
DC CHARACTERISTICS
Param
Symbol
No.
VIL
Characteristic
Min
Typ(1)
Max
Units
Conditions
DI10
I/O pins
VSS
0.2 VDD
DI15
MCLR
VSS
0.2 VDD
DI16
VSS
0.2 VDD
DI17
VSS
0.2 VDD
DI18
SDAx, SCLx
VSS
0.3 VDD
SMBus disabled
DI19
SDAx, SCLx
VSS
0.2 VDD
SMBus enabled
I/O pins:
with analog functions
digital-only
0.8 VDD
0.8 VDD
VDD
5.5
V
V
DI25
MCLR
0.8 VDD
VDD
DI26
0.7 VDD
VDD
DI27
0.7 VDD
VDD
DI28
SDAx, SCLx
0.7 VDD
VDD
SMBus disabled
DI29
SDAx, SCLx
0.8 VDD
VDD
SMBus enabled
50
250
400
VIH
DI20
ICNPU
DI30
IIL
Input Leakage
Current(2)(3)
DI50
I/O ports
TBD
TBD
DI51
TBD
TBD
DI55
MCLR
TBD
TBD
DI56
OSC1
TBD
TBD
DS70175D-page 248
Preliminary
PIC24H
TABLE 23-10: DC CHARACTERISTICS: I/O PIN OUTPUT SPECIFICATIONS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C for Industrial
DC CHARACTERISTICS
Param
Symbol
No.
VOL
Characteristic
Typ(1)
Min
Max
Units
Conditions
DO10
I/O ports
0.4
DO16
OSC2/CLKO
0.4
VOH
DO20
I/O ports
2.4
DO26
OSC2/CLKO
2.4
DC CHARACTERISTICS
Param
Symbol
No.
Characteristic
Min
Typ(1)
Max
Units
Conditions
EP
Cell Endurance
100
1000
D131
VPR
VMIN
3.6
D132B
VPEW
VMIN
3.6
D133A
TIW
1.5
ms
D134
TRETD
Characteristic Retention
20
D135
IDDP
10
mA
D136
TRW
1.6
ms
D137
TPE
20.5
ms
D138
TWW
20
40
Note 1:
Symbol
CEFC
Characteristics
External Filter Capacitor
Value
Min
Typ
Max
Units
Comments
10
Preliminary
DS70175D-page 249
PIC24H
23.2
AC CHARACTERISTICS
FIGURE 23-1:
VDD/2
CL
Pin
RL
VSS
CL
Pin
RL = 464
CL = 50 pF for all pins except OSC2
15 pF for OSC2 output
VSS
Characteristic
Min
Typ(1)
Max
Units
Conditions
15
pF
COSC2
OSC2/SOSC2 pin
DO56
CIO
50
pF
EC mode
DO58
CB
SCLx, SDAx
400
pF
In I2C mode
DO50
Note 1:
Data in Typ column is at 3.3V, 25C unless otherwise stated. Parameters are for design guidance only
and are not tested.
DS70175D-page 250
Preliminary
PIC24H
FIGURE 23-2:
Q2
Q3
Q4
Q1
Q2
Q3
Q4
OSC1
OS20
OS30
OS25
OS31
OS30
OS31
CLKO
OS41
OS40
AC CHARACTERISTICS
Param
No.
OS10
OS20
Symb
FIN
TOSC
Min
Typ(1)
Max
Units
0.8
4
64
8
MHz
MHz
EC
ECPLL
3
3
10
10
10
10
40
40
33
MHz
MHz
MHz
MHz
kHz
XT
XTPLL
HS
HSPLL
SOSC
12.5
DC
ns
Characteristic
TOSC = 1/FOSC
Time(2)
Conditions
OS25
TCY
Instruction Cycle
25
DC
ns
OS30
TosL,
TosH
0.625 x TOSC
ns
EC
OS31
TosR,
TosF
TBD
ns
EC
OS40
TckR
TBD
ns
OS41
TckF
TBD
ns
Preliminary
DS70175D-page 251
PIC24H
TABLE 23-16: PLL CLOCK TIMING SPECIFICATIONS (VDD = 3.0V TO 3.6V)
Standard Operating Conditions: 3.0V to 3.6V (unless otherwise stated)
Operating temperature -40C TA +85C for Industrial
AC CHARACTERISTICS
Param
No.
Characteristic(1)
Symbol
Min
Typ(2)
Max
Units
OS50
FPLLI
0.8
MHz
OS51
FSYS
100
200
MHz
OS52
TLOC
TBD
100
TBD
OS53
DCLK
TBD
TBD
Conditions
ECPLL, HSPLL, XTPLL
modes
Characteristic
Typ
Max
Units
Conditions
FRC
TBD
TBD
+25C
VDD = 3.0-3.6V
TBD
TBD
-40C TA +85C
VDD = 3.0-3.6V
Characteristic
Typ
Max
Units
TBD
TBD
Conditions
TBD
TBD
+25C
-40C
TA
+85C
VDD = 3.0-3.6V
VDD = 3.0-3.6V
DS70175D-page 252
Preliminary
PIC24H
FIGURE 23-3:
I/O Pin
(Input)
DI35
DI40
I/O Pin
(Output)
New Value
Old Value
DO31
DO32
AC CHARACTERISTICS
Param
No.
Symbol
Characteristic
Min
Typ(1)
Max
Units
Conditions
10
25
ns
DO31
TIOR
DO32
TIOF
10
25
ns
DI35
TINP
20
ns
TRBP
TCY
DI40
Note 1:
Preliminary
DS70175D-page 253
PIC24H
FIGURE 23-4:
VDD
SY12
MCLR
SY10
Internal
POR
SY11
PWRT
Time-out
OSC
Time-out
SY30
Internal
Reset
Watchdog
Timer
Reset
SY13
SY20
SY13
I/O Pins
SY35
FSCM
Delay
Note: Refer to Figure 23-1 for load conditions.
DS70175D-page 254
Preliminary
PIC24H
TABLE 23-20: RESET, WATCHDOG TIMER, OSCILLATOR START-UP TIMER, POWER-UP TIMER
AND BROWN-OUT RESET TIMING REQUIREMENTS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
Symbol
No.
Characteristic(1)
Min
Typ(2)
Max
Units
-40C to +85C
0.75
1.5
3
6
12
24
48
96
1
2
4
8
16
32
64
128
1.25
2.5
5
10
20
40
80
160
ms
-40C to +85C
User programmable
-40C to +85C
Conditions
SY10
TMCL
SY11
TPWRT
SY12
TPOR
10
30
SY13
TIOZ
0.8
1.0
SY20
TWDT1
1.8
2.0
2.2
ms
1.9
2.1
2.3
ms
TWDT2
SY30
TOST
1024 TOSC
SY35
TFSCM
500
900
-40C to +85C
Note 1:
2:
3:
Preliminary
DS70175D-page 255
PIC24H
FIGURE 23-5:
TxCK
Tx11
Tx10
Tx15
OS60
Tx20
TMRx
AC CHARACTERISTICS
Param
No.
TA10
TA11
TA15
Symbol
TTXH
TTXL
TTXP
Characteristic
TxCK High Time
Min
Typ
Max
Units
Conditions
Synchronous,
no prescaler
0.5 TCY + 20
ns
Synchronous,
with prescaler
10
ns
Asynchronous
10
ns
Synchronous,
no prescaler
0.5 TCY + 20
ns
Synchronous,
with prescaler
10
ns
Asynchronous
10
ns
TCY + 10
ns
Synchronous,
with prescaler
Greater of:
20 ns or
(TCY + 40)/N
Asynchronous
20
ns
DC
50
kHz
1.5 TCY
OS60
Ft1
TA20
Note 1:
0.5 TCY
N = prescale
value
(1, 8, 64, 256)
Timer1 is a Type A.
DS70175D-page 256
Preliminary
PIC24H
TABLE 23-22: TIMER2, TIMER4, TIMER6 AND TIMER8 EXTERNAL CLOCK TIMING
REQUIREMENTS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
TB10
TB11
TB15
Symbol
TtxH
TtxL
TtxP
Characteristic
TxCK High Time
Min
Typ
Max
Units
Synchronous,
no prescaler
0.5 TCY + 20
ns
Synchronous,
with prescaler
10
ns
Synchronous,
no prescaler
0.5 TCY + 20
ns
Synchronous,
with prescaler
10
ns
TCY + 10
ns
1.5 TCY
TB20
Conditions
Must also meet
parameter TB15
N = prescale
value
(1, 8, 64, 256)
Greater of:
20 ns or
(TCY + 40)/N
0.5 TCY
TABLE 23-23: TIMER3, TIMER5, TIMER7 AND TIMER9 EXTERNAL CLOCK TIMING
REQUIREMENTS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
Symbol
Characteristic
Min
Typ
Max
Units
Conditions
TC10
TtxH
Synchronous
0.5 TCY + 20
ns
TC11
TtxL
Synchronous
0.5 TCY + 20
ns
TC15
TtxP
TCY + 10
ns
N = prescale
value
(1, 8, 64, 256)
1.5 TCY
Synchronous,
with prescaler
TC20
Greater of:
20 ns or
(TCY + 40)/N
0.5 TCY
Preliminary
DS70175D-page 257
PIC24H
FIGURE 23-6:
IC10
IC11
IC15
AC CHARACTERISTICS
Param
No.
Characteristic(1)
Symbol
IC10
TccL
IC11
TccH
IC15
TccP
No Prescaler
Min
Max
Units
0.5 TCY + 20
ns
With Prescaler
No Prescaler
10
ns
0.5 TCY + 20
ns
10
ns
(2 TCY + 40)/N
ns
With Prescaler
Note 1:
Conditions
N = prescale
value (1, 4, 16)
FIGURE 23-7:
OCx
(Output Compare
or PWM Mode)
OC10
OC11
Characteristic(1)
Typ(2)
Max
Units
Conditions
OC10
TccF
ns
OC11
TccR
ns
Note 1:
2:
DS70175D-page 258
Preliminary
PIC24H
FIGURE 23-8:
OC20
OCFA/OCFB
OC15
OCx
AC CHARACTERISTICS
Param
No.
Symbol
Characteristic(1)
Min
Typ(2)
Max
Units
Conditions
OC15
TFD
50
ns
OC20
TFLT
50
ns
Note 1:
2:
FIGURE 23-9:
SCKx
(CKP = 0)
SP11
SP10
SP21
SP20
SP20
SP21
SCKx
(CKP = 1)
SP35
MSb
SDOx
Bit 14 - - - - - -1
SP31
SDIx
MSb In
LSb
SP30
Bit 14 - - - -1
LSb In
SP40 SP41
Preliminary
DS70175D-page 259
PIC24H
TABLE 23-27: SPIx MASTER MODE (CKE = 0) TIMING REQUIREMENTS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
Characteristic(1)
Symbol
Min
Typ(2)
Max
Units
Conditions
ns
TscL
TCY/2
SP11
TscH
(3)
TCY/2
ns
SP20
TscF
ns
SP21
TscR
ns
SP30
TdoF
ns
SP10
(4)
SP31
TdoR
ns
SP35
TscH2doV,
TscL2doV
30
ns
SP40
TdiV2scH,
TdiV2scL
20
ns
SP41
TscH2diL,
TscL2diL
20
ns
Note 1:
2:
3:
4:
FIGURE 23-10:
SCKX
(CKP = 0)
SP11
SP10
SP21
SP20
SP20
SP21
SCKX
(CKP = 1)
SP35
SDOX
SP40
SDIX
Bit 14 - - - - - -1
MSb
LSb
SP30,SP31
MSb In
Bit 14 - - - -1
LSb In
SP41
Note: Refer to Figure 23-1 for load conditions.
DS70175D-page 260
Preliminary
PIC24H
TABLE 23-28: SPIx MODULE MASTER MODE (CKE = 1) TIMING REQUIREMENTS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
Characteristic(1)
Symbol
Min
Typ(2)
Max
Units
Conditions
ns
TscL
TCY/2
SP11
TscH
(3)
TCY/2
ns
SP20
TscF
ns
SP21
TscR
ns
SP30
TdoF
ns
SP31
TdoR
ns
SP35
ns
SP36
30
ns
SP40
20
ns
SP41
TscH2diL,
TscL2diL
20
ns
SP10
Note 1:
2:
3:
4:
FIGURE 23-11:
SSX
SP52
SP50
SCKX
(CKP = 0)
SP71
SP70
SP73
SP72
SP72
SP73
SCKX
(CKP = 1)
SP35
MSb
SDOX
Bit 14 - - - - - -1
LSb
SP51
SP30,SP31
SDIX
MSb In
Bit 14 - - - -1
LSb In
SP41
SP40
Note: Refer to Figure 23-1 for load conditions.
Preliminary
DS70175D-page 261
PIC24H
TABLE 23-29: SPIx MODULE SLAVE MODE (CKE = 0) TIMING REQUIREMENTS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
Symbol
Characteristic(1)
Min
Typ(2)
Max
Units
Conditions
SP70
TscL
30
ns
SP71
TscH
30
ns
SP72
TscF
10
25
ns
SP73
TscR
10
25
ns
(3)
SP30
TdoF
ns
SP31
TdoR
ns
SP35
30
ns
SP40
20
ns
SP41
TscH2diL,
TscL2diL
20
ns
SP50
120
ns
SP51
10
50
ns
SP52
ns
Note 1:
2:
3:
DS70175D-page 262
Preliminary
PIC24H
FIGURE 23-12:
SSx
SP52
SP50
SCKx
(CKP = 0)
SP71
SP70
SP73
SP72
SP72
SP73
SCKx
(CKP = 1)
SP35
SP52
MSb
SDOx
Bit 14 - - - - - -1
LSb
SP30,SP31
SDIx
SDI
MSb In
SP51
Bit 14 - - - -1
LSb In
SP41
SP40
Note: Refer to Figure 23-1 for load conditions.
Preliminary
DS70175D-page 263
PIC24H
TABLE 23-30: SPIx MODULE SLAVE MODE (CKE = 1) TIMING REQUIREMENTS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
SP70
Symbol
TscL
Characteristic(1)
Min
Typ(2)
Max
Units
Conditions
30
ns
SP71
TscH
30
ns
SP72
TscF
10
25
ns
SP73
TscR
10
25
ns
SP30
TdoF
ns
SP31
TdoR
ns
SP35
30
ns
SP40
20
ns
SP41
20
ns
SP50
120
ns
SP51
10
50
ns
SP52
1.5 TCY + 40
ns
SP60
50
ns
Note 1:
2:
3:
4:
DS70175D-page 264
Preliminary
PIC24H
FIGURE 23-13:
SCLx
IM31
IM34
IM30
IM33
SDAx
Stop
Condition
Start
Condition
Note: Refer to Figure 23-1 for load conditions.
FIGURE 23-14:
IM21
IM11
IM10
SCLx
IM11
IM26
IM10
IM25
IM33
SDAx
In
IM40
IM40
IM45
SDAx
Out
Note: Refer to Figure 23-1 for load conditions.
Preliminary
DS70175D-page 265
PIC24H
TABLE 23-31: I2Cx BUS DATA TIMING REQUIREMENTS (MASTER MODE)
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
Symbol
No.
IM10
IM11
Min(1)
Max
Units
Conditions
TCY/2 (BRG + 1)
TCY/2 (BRG + 1)
1 MHz mode(2)
TCY/2 (BRG + 1)
TCY/2 (BRG + 1)
TCY/2 (BRG + 1)
(2)
TCY/2 (BRG + 1)
300
ns
Characteristic
THI:SCL
1 MHz mode
IM20
TF:SCL
IM21
IM25
IM26
IM30
IM31
IM33
IM34
TR:SCL
TSU:STA
Start Condition
Setup Time
IM40
IM45
IM50
TAA:SCL
Output Valid
From Clock
CB
20 + 0.1 CB
300
ns
100
ns
1000
ns
20 + 0.1 CB
300
ns
1 MHz mode(2)
300
ns
250
ns
100
ns
1 MHz mode(2)
TBD
ns
ns
0.9
1 MHz mode(2)
TBD
ns
TCY/2 (BRG + 1)
TCY/2 (BRG + 1)
1 MHz mode(2)
TCY/2 (BRG + 1)
TCY/2 (BRG + 1)
TCY/2 (BRG + 1)
1 MHz mode(2)
TCY/2 (BRG + 1)
TCY/2 (BRG + 1)
TCY/2 (BRG + 1)
1 MHz mode(2)
TCY/2 (BRG + 1)
CB is specified to be
from 10 to 400 pF
CB is specified to be
from 10 to 400 pF
TCY/2 (BRG + 1)
ns
TCY/2 (BRG + 1)
ns
1 MHz mode(2)
TCY/2 (BRG + 1)
ns
3500
ns
1000
ns
1 MHz mode(2)
ns
4.7
1.3
1 MHz mode(2)
TBD
400
pF
DS70175D-page 266
Preliminary
PIC24H
FIGURE 23-15:
SCLx
IS34
IS31
IS30
IS33
SDAx
Stop
Condition
Start
Condition
FIGURE 23-16:
IS21
IS11
IS10
SCLx
IS30
IS26
IS31
IS25
IS33
SDAx
In
IS40
IS40
IS45
SDAx
Out
Preliminary
DS70175D-page 267
PIC24H
TABLE 23-32: I2Cx BUS DATA TIMING REQUIREMENTS (SLAVE MODE)
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
IS10
IS11
IS20
IS21
IS25
IS26
IS30
IS31
IS33
IS34
IS40
IS45
IS50
Note 1:
Symbol
TLO:SCL
THI:SCL
TF:SCL
TR:SCL
TSU:DAT
THD:DAT
TSU:STA
THD:STA
TSU:STO
THD:STO
TAA:SCL
TBF:SDA
CB
Characteristic
Clock Low Time
Data Input
Setup Time
Data Input
Hold Time
Start Condition
Setup Time
Start Condition
Hold Time
Stop Condition
Setup Time
Stop Condition
Hold Time
Min
Max
Units
4.7
1.3
1 MHz mode(1)
0.5
4.0
0.6
1 MHz mode(1)
0.5
300
ns
20 + 0.1 CB
300
ns
1 MHz mode(1)
100
ns
1000
ns
20 + 0.1 CB
300
ns
1 MHz mode(1)
300
ns
250
ns
100
ns
1 MHz mode(1)
100
ns
ns
0.9
1 MHz mode(1)
0.3
4.7
0.6
1 MHz mode(1)
0.25
4.0
0.6
1 MHz mode(1)
0.25
4.7
0.6
1 MHz mode(1)
0.6
4000
ns
600
1 MHz mode(1)
250
CB is specified to be from
10 to 400 pF
CB is specified to be from
10 to 400 pF
ns
ns
3500
ns
1000
ns
1 MHz mode(1)
350
ns
4.7
1.3
1 MHz mode(1)
0.5
400
pF
Conditions
Maximum pin capacitance = 10 pF for all I2Cx pins (for 1 MHz mode only).
DS70175D-page 268
Preliminary
PIC24H
FIGURE 23-17:
CiTx Pin
(output)
New Value
Old Value
CA10 CA11
CiRx Pin
(input)
CA20
AC CHARACTERISTICS
Param
No.
CA10
Characteristic(1)
Symbol
Min
Typ(2)
Max
Units
Conditions
ns
ns
ns
TioF
CA11
TioR
CA20
Tcwf
500
Note 1:
2:
Preliminary
DS70175D-page 269
PIC24H
TABLE 23-34: A/D MODULE SPECIFICATIONS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
Symbol
Characteristic
Min.
Typ
Max.
Units
Conditions
Device Supply
AD01
AVDD
AD02
AVSS
Greater of
VDD - 0.3
or 3.0
Lesser of
VDD + 0.3
or 3.6
VSS - 0.3
VSS + 0.3
Reference Inputs
AD05
VREFH
AVSS + 1.7
AVDD
AD06
VREFL
AVSS
AVDD - 1.7
AD07
VREF
Absolute Reference
Voltage
AVSS 0.3
AVDD + 0.3
AD08
IREF
Current Drain
200
.001
300
3
A
A
A/D operating
A/D off
See Note
Analog Input
AD10
AD11
VIN
AD12
Leakage Current
AD13
Leakage Current
AD17
RIN
Recommended Impedance
1K
of Analog Voltage Source
2.5K
ADC Accuracy (12-bit Mode)
VREFL
VREFH
AVSS 0.3
AVDD + 0.3
0.001
0.610
0.001
0.610
12 data bits
10-bit
12-bit
AD20a Nr
Resolution
AD21a INL
Integral Nonlinearity(2)
<2
LSb
bits
VINL = AVSS = VREFL =
0V, AVDD = VREFH = 3V
AD22a DNL
Differential Nonlinearity(2)
<1
LSb
AD23a GERR
Gain Error(2)
TBD
TBD
LSb
AD24a EOFF
Offset Error(2)
TBD
TBD
LSb
AD25a
Monotonicity(1)
AD30a THD
TBD
dB
AD31a SINAD
TBD
dB
Guaranteed
DS70175D-page 270
Preliminary
PIC24H
TABLE 23-34: A/D MODULE SPECIFICATIONS (CONTINUED)
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
Symbol
Characteristic
Min.
Typ
Max.
Units
Conditions
AD32a SFDR
TBD
dB
AD33a FNYQ
250
kHz
AD34a ENOB
TBD
TBD
bits
Resolution
AD21b INL
Integral Nonlinearity
10 data bits
TBD
<2
LSb
bits
VINL = AVSS = VREFL =
0V, AVDD = VREFH = 3V
AD22b DNL
Differential Nonlinearity
TBD
<1
LSb
AD23b GERR
Gain Error
TBD
<3
LSb
AD24b EOFF
Offset Error
TBD
<2
LSb
AD25b
Monotonicity(1)
AD30b THD
dB
AD31b SINAD
TBD
dB
AD32b SFDR
TBD
dB
AD33b FNYQ
550
kHz
AD34b ENOB
TBD
TBD
bits
Guaranteed
Preliminary
DS70175D-page 271
PIC24H
FIGURE 23-18:
ADCLK
Instruction
Execution Set SAMP
Clear SAMP
SAMP
ch0_dischrg
ch0_samp
ch1_dischrg
ch1_samp
eoc
AD61
AD60
AD55
TSAMP
AD55
CONV
ADxIF
Buffer(0)
Buffer(1)
DS70175D-page 272
Preliminary
PIC24H
FIGURE 23-19:
ADCLK
Instruction
Execution
Set ADON
SAMP
ch0_dischrg
ch0_samp
ch1_dischrg
ch1_samp
eoc
TSAMP
TSAMP
AD55
TCONV
AD55
CONV
ADxIF
Buffer(0)
Buffer(1)
5 Convert bit 0.
3 Convert bit 9.
4 Convert bit 8.
Preliminary
DS70175D-page 273
PIC24H
TABLE 23-35: A/D CONVERSION (10-BIT MODE) TIMING REQUIREMENTS
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
Symbol
No.
Characteristic
Min.
Typ(1)
Max.
Units
Conditions
Clock Parameters
(2)
AD50
TAD
70
ns
AD51
tRC
250
ns
AD55
tCONV
Conversion Time
12 TAD
AD56
FCNV
Throughput Rate
1.1
Msps
AD57
TSAMP
Sample Time
1 TAD
AD60
tPCS
AD61
tPSS
AD62
tCSS
AD63
tDPU
Conversion Rate
Timing Parameters
Note 1:
2:
3:
1.0 TAD
Auto-Convert Trigger
(SSRC<2:0> = 111) not
selected
0.5 TAD
1.5 TAD
Conversion Completion to
Sample Start (ASAM = 1)(3)
0.5 TAD
20
DS70175D-page 274
Preliminary
PIC24H
FIGURE 23-20:
ADCLK
Instruction
Execution
Set SAMP
Clear SAMP
SAMP
ch0_dischrg
ch0_samp
eoc
AD61
AD60
TSAMP
AD55
CONV
ADxIF
Buffer(0)
Preliminary
DS70175D-page 275
PIC24H
TABLE 23-36: A/D CONVERSION (12-BIT MODE) TIMING REQUIREMENTS)
Standard Operating Conditions: 3.0V to 3.6V
(unless otherwise stated)
Operating temperature -40C TA +85C
AC CHARACTERISTICS
Param
No.
Symbol
Characteristic
Min.
Typ
Max.
Units
Conditions
Clock Parameters
(1)
AD50
TAD
AD51
tRC
133
ns
250
ns
Conversion Rate
AD55
tCONV
Conversion Time
14 TAD
ns
AD56
FCNV
Throughput Rate
500
ksps
AD57
TSAMP
Sample Time
1 TAD
ns
Timing Parameters
AD60
tPCS
AD61
tPSS
AD62
AD63
1.0 TAD
ns
0.5 TAD
1.5 TAD
ns
tCSS
Conversion Completion to
Sample Start (ASAM = 1)
ns
tDPU
20
DS70175D-page 276
Preliminary
PIC24H
24.0
PACKAGING INFORMATION
24.1
Example
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
YYWWNNN
PIC24HJ
256GP706
-I/PT e3
0510017
Example
XXXXXXXXXXXX
XXXXXXXXXXXX
YYWWNNN
PIC24HJ256
GP710-I/PT e3
0510017
XXXXXXXXXXXX
XXXXXXXXXXXX
YYWWNNN
Legend: XX...X
Y
YY
WW
NNN
e3
Note:
PIC24HJ256
GP710-I/PF e3
0510017
Customer-specific information
Year code (last digit of calendar year)
Year code (last 2 digits of calendar year)
Week code (week of January 1 is week 01)
Alphanumeric traceability code
Pb-free JEDEC designator for Matte Tin (Sn)
This package is Pb-free. The Pb-free JEDEC designator ( e3 )
can be found on the outer packaging for this package.
In the event the full Microchip part number cannot be marked on one line, it will
be carried over to the next line, thus limiting the number of available
characters for customer-specific information.
Preliminary
DS70175D-page 277
PIC24H
24.2
Package Details
64-Lead Plastic Thin-Quad Flatpack (PT) 10x10x1 mm Body, 1.0/0.10 mm Lead Form (TQFP)
E
E1
#leads=n1
D1
2
1
B
n
CH x 45
A2
A1
F
Units
Dimension Limits
n
p
INCHES
NOM
64
.020
16
.043
.039
.006
.024
.039 REF.
3.5
.472
.472
.394
.394
.007
.009
.035
10
10
Preliminary
MAX
MILLIMETERS*
NOM
64
0.50
16
1.00
1.10
0.95
1.00
0.05
0.15
0.45
0.60
1.00 REF.
0
3.5
11.75
12.00
11.75
12.00
9.90
10.00
9.90
10.00
0.13
0.18
0.17
0.22
0.64
0.89
5
10
5
10
MAX
Number of Pins
Pitch
Pins per Side
n1
Overall Height
A
.039
.047
1.20
Molded Package Thickness
A2
.037
.041
1.05
Standoff
A1
.002
.010
0.25
Foot Length
L
.018
.030
0.75
Footprint
F
Foot Angle
0
7
7
Overall Width
E
.463
.482
12.25
Overall Length
D
.463
.482
12.25
Molded Package Width
E1
.390
.398
10.10
Molded Package Length
D1
.390
.398
10.10
c
Lead Thickness
.005
.009
0.23
Lead Width
B
.007
.011
0.27
Pin 1 Corner Chamfer
CH
.025
.045
1.14
DS70175D-page 278
MIN
MIN
PIC24H
100-Lead Plastic Thin-Quad Flatpack (PT) 12x12x1 mm Body, 1.0/0.10 mm Lead Form (TQFP)
E
E1
#leads=n1
p
D1
2
1
B
n
CH x 45
c
A
L
Units
Dimension Limits
A1
A2
INCHES
MIN
NOM
MILLIMETERS*
MAX
MIN
NOM
MAX
Pitch
n
p
n1
Overall Height
.039
.043
.047
1.00
1.10
1.20
A2
.037
.039
.041
0.95
1.00
1.05
Standoff
A1
.002
.004
.006
0.05
0.10
0.15
Foot Length
.018
.024
.030
0.45
0.60
0.75
Footprint (Reference)
Foot Angle
Overall Width
Number of Pins
100
100
.016 BSC
0.40 BSC
25
25
.039 REF.
0
3.5
1.00 REF.
7
.551 BSC
3.5
Overall Length
.551 BSC
14.00 BSC
E1
.472 BSC
12.00 BSC
D1
c
Lead Thickness
14.00 BSC
.472 BSC
12.00 BSC
.004
.006
.008
0.09
0.15
0.20
.005
.007
.009
0.13
0.18
0.23
10
15
10
15
10
15
10
15
Lead Width
* Controlling Parameter
Notes:
Dimensions D1 and E1 do not include mold flash or protrusions. Mold flash or protrusions shall not exceed .010" (0.254mm) per side.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
See ASME Y14.5M
REF: Reference Dimension, usually without tolerance, for information purposes only.
See ASME Y14.5M
JEDEC Equivalent: MS-026
Revised 07-22-05
Drawing No. C04-100
Preliminary
DS70175D-page 279
PIC24H
100-Lead Plastic Thin-Quad Flatpack (PF) 14x14x1 mm Body, 1.0/0.10 mm Lead Form (TQFP)
E
E1
#leads=n1
D1
D
B
2
1
A2
L
Units
Dimension Limits
A1
F
MILLIMETERS*
INCHES
MIN
MAX
NOM
Number of Pins
Pitch
n
p
100
.020 BSC
n1
25
Overall Height
MIN
MAX
NOM
100
0.50 BSC
25
.047
1.20
A2
A1
.037
.002
.039
.041
.006
0.95
0.05
1.00
1.05
0.15
Foot Length
.018
.024
.030
0.45
0.60
0.75
Footprint
Foot Angle
.039 REF
0
3.5
Overall Width
Overall Length
E
D
.630 BSC
.630 BSC
16.00 BSC
16.00 BSC
E1
.551 BSC
14.00 BSC
D1
c
.551 BSC
.004
Lead Width
Mold Draft Angle Top
.007
11
11
1.00 REF
0
3.5
14.00 BSC
.008
0.09
.009
12
.011
13
0.17
11
0.22
12
0.27
13
12
13
11
12
13
0.20
* Controlling Parameter
Notes:
Dimensions D1 and E1 do not include mold flash or protrusions. Mold flash or protrusions shall not exceed .010" (0.254mm) per side.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
See ASME Y14.5M
REF: Reference Dimension, usually without tolerance, for information purposes only.
See ASME Y14.5M
JEDEC Equivalent: MS-026
Revised 07-21-05
Drawing No. C04-110
DS70175D-page 280
Preliminary
PIC24H
APPENDIX A:
REVISION HISTORY
Preliminary
DS70175D-page 281
PIC24H
NOTES:
DS70175D-page 282
Preliminary
PIC24H
INDEX
A
Block Diagrams
16-bit Timer1 Module ................................................ 139
A/D Module ....................................................... 210, 211
Connections for On-Chip Voltage Regulator............. 227
ECAN Module ........................................................... 180
Input Capture ............................................................ 147
Output Compare ....................................................... 151
PIC24H ....................................................................... 14
PIC24H CPU Core ...................................................... 18
PIC24H Oscillator System Diagram.......................... 127
PIC24H PLL .............................................................. 129
Reset System.............................................................. 61
Shared Port Structure ............................................... 137
SPI ............................................................................ 154
Timer2 (16-bit) .......................................................... 143
Timer2/3 (32-bit) ....................................................... 142
UART ........................................................................ 171
Watchdog Timer (WDT) ............................................ 228
C Compilers
MPLAB C18 .............................................................. 240
MPLAB C30 .............................................................. 240
Clock Switching................................................................. 134
Enabling .................................................................... 134
Sequence.................................................................. 134
Code Examples
DMA Sample Initialization Method ............................ 117
Erasing a Program Memory Page............................... 58
Initiating a Programming Sequence............................ 59
Loading Write Buffers ................................................. 59
Port Write/Read ........................................................ 138
PWRSAV Instruction Syntax..................................... 135
Code Protection ........................................................ 223, 229
Configuration Bits.............................................................. 223
Description (Table).................................................... 224
Configuration Register Map .............................................. 223
Configuring Analog Port Pins ............................................ 138
CPU
Control Register .......................................................... 20
CPU Clocking System....................................................... 128
PLL Configuration ..................................................... 128
Selection ................................................................... 128
Sources..................................................................... 128
Customer Change Notification Service ............................. 287
Customer Support ............................................................. 287
ECAN Module
Baud Rate Setting .................................................... 184
ECAN1 Register Map (C1CTRL1.WIN = 0 or 1)......... 39
ECAN1 Register Map (C1CTRL1.WIN = 0)................ 40
ECAN1 Register Map (C1CTRL1.WIN = 1)................ 40
ECAN2 Register Map (C2CTRL1.WIN = 0 or 1)......... 42
ECAN2 Register Map (C2CTRL1.WIN = 0)................ 42
ECAN2 Register Map (C2CTRL1.WIN = 1)................ 43
Frame Types ............................................................ 179
Message Reception.................................................. 181
Message Transmission............................................. 183
Modes of Operation .................................................. 181
Overview................................................................... 179
Electrical Characteristics .................................................. 243
AC............................................................................. 250
Enhanced CAN Module .................................................... 179
Equations
A/D Conversion Clock Period ................................... 212
Calculating the PWM Period..................................... 150
Calculation for Maximum PWM Resolution .............. 150
Device Operating Frequency.................................... 128
FOSC Calculation..................................................... 128
Relationship Between Device and
SPI Clock Speed .............................................. 156
Serial Clock Rate...................................................... 161
Preliminary
DS70175D-page 283
PIC24H
Time Quantum for Clock Generation ........................ 185
UART Baud Rate with BRGH = 0 ............................. 172
UART Baud Rate with BRGH = 1 ............................. 172
XT with PLL Mode Example...................................... 129
Errata .................................................................................. 11
F
Flash Program Memory....................................................... 55
Control Registers ........................................................ 56
Operations .................................................................. 56
Programming Algorithm .............................................. 58
RTSP Operation.......................................................... 56
Table Instructions........................................................ 55
Flexible Configuration ....................................................... 223
FSCM
Delay for Crystal and PLL Clock Sources ................... 65
Device Resets ............................................................. 65
I
I/O Ports ............................................................................ 137
Parallel I/O (PIO)....................................................... 137
Write/Read Timing .................................................... 138
I2C
Addresses ................................................................. 163
Baud Rate Generator ................................................ 161
General Call Address Support .................................. 163
Interrupts ................................................................... 161
IPMI Support ............................................................. 163
Master Mode Operation
Clock Arbitration................................................ 164
Multi-Master Communication, Bus
Collision and Bus Arbitration..................... 164
Operating Modes ...................................................... 161
Registers ................................................................... 161
Slave Address Masking ............................................ 163
Slope Control ............................................................ 164
Software Controlled Clock Stretching (STREN = 1).. 163
I2C Module
I2C1 Register Map ...................................................... 35
I2C2 Register Map ...................................................... 35
In-Circuit Debugger ........................................................... 229
In-Circuit Emulation........................................................... 223
In-Circuit Serial Programming (ICSP) ....................... 223, 229
Infrared Support
Built-in IrDA Encoder and Decoder ........................... 173
External IrDA, IrDA Clock Output.............................. 173
Input Capture
Registers ................................................................... 148
Input Change Notification Module ..................................... 138
Instruction Addressing Modes............................................. 48
File Register Instructions ............................................ 48
Fundamental Modes Supported.................................. 49
MCU Instructions ........................................................ 48
Move and Accumulator Instructions ............................ 49
Other Instructions........................................................ 49
Instruction Set
Overview ................................................................... 234
Summary................................................................... 231
Instruction-Based Power-Saving Modes ........................... 135
Idle ............................................................................ 136
Sleep ......................................................................... 135
Internal RC Oscillator
Use with WDT ........................................................... 228
Internet Address................................................................ 287
Interrupt Control and Status Registers................................ 71
IECx ............................................................................ 71
DS70175D-page 284
IFSx ............................................................................ 71
INTCON1 .................................................................... 71
INTCON2 .................................................................... 71
INTTREG .................................................................... 71
IPCx ............................................................................ 71
Interrupt Setup Procedures............................................... 111
Initialization ............................................................... 111
Interrupt Disable ....................................................... 111
Interrupt Service Routine .......................................... 111
Trap Service Routine ................................................ 111
Interrupt Vector Table (IVT) ................................................ 67
Interrupts Coincident with Power Save Instructions ......... 136
J
JTAG Boundary Scan Interface ........................................ 223
M
Memory Organization ......................................................... 25
Microchip Internet Web Site.............................................. 287
Modes of Operation
Disable...................................................................... 181
Initialization ............................................................... 181
Listen All Messages.................................................. 181
Listen Only................................................................ 181
Loopback .................................................................. 181
Normal Operation ..................................................... 181
MPLAB ASM30 Assembler, Linker, Librarian ................... 240
MPLAB ICD 2 In-Circuit Debugger ................................... 241
MPLAB ICE 2000 High-Performance Universal
In-Circuit Emulator .................................................... 241
MPLAB ICE 4000 High-Performance Universal
In-Circuit Emulator .................................................... 241
MPLAB Integrated Development Environment Software.. 239
MPLAB PM3 Device Programmer .................................... 241
MPLINK Object Linker/MPLIB Object Librarian ................ 240
Multi-Bit Data Shifter........................................................... 23
N
NVM Module
Register Map .............................................................. 47
O
Open-Drain Configuration................................................. 138
Output Compare ............................................................... 149
Registers .................................................................. 152
P
Packaging ......................................................................... 277
Details....................................................................... 278
Marking ..................................................................... 277
Peripheral Module Disable (PMD) .................................... 136
PICSTART Plus Development Programmer..................... 242
Pinout I/O Descriptions (table)............................................ 15
PMD Module
Register Map .............................................................. 47
POR and Long Oscillator Start-up Times ........................... 65
PORTA
Register Map .............................................................. 45
PORTB
Register Map .............................................................. 45
PORTC
Register Map .............................................................. 45
PORTD
Register Map .............................................................. 45
PORTE
Register Map .............................................................. 46
Preliminary
PIC24H
PORTF
Register Map............................................................... 46
PORTG
Register Map............................................................... 46
Power-Saving Features .................................................... 135
Clock Frequency and Switching................................ 135
Program Address Space ..................................................... 25
Construction................................................................ 50
Data Access from Program Memory
Using Program Space Visibility........................... 53
Data Access from Program Memory Using
Table Instructions ............................................... 52
Data Access from, Address Generation...................... 51
Memory Map ............................................................... 25
Table Read Instructions
TBLRDH ............................................................. 52
TBLRDL .............................................................. 52
Visibility Operation ...................................................... 53
Program Memory
Interrupt Vector ........................................................... 26
Organization................................................................ 26
Reset Vector ............................................................... 26
Pulse-Width Modulation Mode .......................................... 150
PWM
Duty Cycle................................................................. 150
Period........................................................................ 150
R
Reader Response ............................................................. 288
Registers
ADxCHS0 (ADCx Input Channel 0 Select................. 219
ADxCHS123 (ADCx Input Channel 1, 2, 3 Select) ... 218
ADxCON1 (ADCx Control 1)..................................... 213
ADxCON2 (ADCx Control 2)..................................... 215
ADxCON3 (ADCx Control 3)..................................... 216
ADxCON4 (ADCx Control 4)..................................... 217
ADxCSSH (ADCx Input Scan Select High)............... 220
ADxCSSL (ADCx Input Scan Select Low) ................ 220
ADxPCFGH (ADCx Port Configuration High) ........... 221
ADxPCFGL (ADCx Port Configuration Low)............. 221
CiBUFPNT1 (ECAN Filter 0-3 Buffer Pointer)........... 196
CiBUFPNT2 (ECAN Filter 4-7 Buffer Pointer)........... 197
CiBUFPNT3 (ECAN Filter 8-11 Buffer Pointer)......... 197
CiBUFPNT4 (ECAN Filter 12-15 Buffer Pointer)....... 198
CiCFG1 (ECAN Baud Rate Configuration 1) ............ 194
CiCFG2 (ECAN Baud Rate Configuration 2) ............ 195
CiCTRL1 (ECAN Control 1) ...................................... 186
CiCTRL2 (ECAN Control 2) ...................................... 187
CiEC (ECAN Transmit/Receive Error Count)............ 193
CiFCTRL (ECAN FIFO Control)................................ 189
CiFEN1 (ECAN Acceptance Filter Enable) ............... 196
CiFIFO (ECAN FIFO Status)..................................... 190
CiFMSKSEL1 (ECAN Filter 7-0 Mask Selection)...... 200
CiINTE (ECAN Interrupt Enable) .............................. 192
CiINTF (ECAN Interrupt Flag)................................... 191
CiRXFnEID (ECAN Acceptance Filter n
Extended Identifier)........................................... 199
CiRXFnSID (ECAN Acceptance Filter n
Standard Identifier) ........................................... 199
CiRXFUL1 (ECAN Receive Buffer Full 1) ................. 202
CiRXFUL2 (ECAN Receive Buffer Full 2) ................. 202
CiRXMnEID (ECAN Acceptance Filter Mask n
Extended Identifier)........................................... 201
CiRXMnSID (ECAN Acceptance Filter Mask n
Standard Identifier) ........................................... 201
CiRXOVF1 (ECAN Receive Buffer Overflow 1) ........ 203
Preliminary
DS70175D-page 285
PIC24H
TyCON (T3CON, T5CON, T7CON or
T9CON Control) ................................................ 145
UxMODE (UARTx Mode) .......................................... 174
UxSTA (UARTx Status and Control) ......................... 176
Reset
Clock Source Selection ............................................... 64
Special Function Register Reset States ..................... 65
Times .......................................................................... 64
Reset Sequence.................................................................. 67
Resets ................................................................................. 61
S
Serial Peripheral Interface (SPI) ....................................... 153
Setup for Continuous Output Pulse Generation................ 149
Setup for Single Output Pulse Generation ........................ 149
Software Simulator (MPLAB SIM)..................................... 240
Software Stack Pointer, Frame Pointer
CALL Stack Frame...................................................... 48
Special Features ............................................................... 223
SPI
Master, Frame Master Connection ........................... 155
Master/Slave Connection .......................................... 155
Slave, Frame Master Connection ............................. 156
Slave, Frame Slave Connection ............................... 156
SPI Module
Operating Function Description ................................ 153
SPI1 Register Map ...................................................... 36
SPI2 Register Map ...................................................... 36
Symbols Used in Opcode Descriptions............................. 232
System Control
Register Map............................................................... 47
T
Temperature and Voltage Specifications
AC ............................................................................. 250
Timer1 ............................................................................... 139
Timer2/3, Timer4/5, Timer6/7 and Timer8/9 ..................... 141
Timing Characteristics
CLKO and I/O ........................................................... 253
Timing Diagrams
10-bit A/D Conversion (CHPS = 01, SIMSAM = 0,
ASAM = 0, SSRC = 000) .................................. 272
10-bit A/D Conversion (CHPS = 01, SIMSAM =
U
UART
Baud Rate
Generator (BRG) .............................................. 172
Break and Sync Transmit Sequence ........................ 173
Flow Control Using UxCTS and UxRTS Pins ........... 173
Receiving in 8-bit or 9-bit Data Mode ....................... 173
Transmitting in 8-bit Data Mode................................ 173
Transmitting in 9-bit Data Mode................................ 173
UART Module
UART1 Register Map.................................................. 35
UART2 Register Map.................................................. 36
V
Voltage Regulator (On-Chip) ............................................ 227
W
Watchdog Timer (WDT)............................................ 223, 228
Programming Considerations ................................... 228
WWW Address ................................................................. 287
WWW, On-Line Support ..................................................... 11
DS70175D-page 286
Preliminary
PIC24H
THE MICROCHIP WEB SITE
CUSTOMER SUPPORT
Product Support Data sheets and errata, application notes and sample programs, design
resources, users guides and hardware support
documents, latest software releases and archived
software
General Technical Support Frequently Asked
Questions (FAQ), technical support requests,
online discussion groups, Microchip consultant
program member listing
Business of Microchip Product selector and
ordering guides, latest Microchip press releases,
listing of seminars and events, listings of Microchip sales offices, distributors and factory representatives
Distributor or Representative
Local Sales Office
Field Application Engineer (FAE)
Technical Support
Customers should contact their distributor, representative or field application engineer (FAE) for support.
Local sales offices are also available to help customers. A listing of sales offices and locations is included
in the back of this document.
Technical support is available through the web site
at: http://support.microchip.com
Preliminary
DS70175D-page 287
PIC24H
READER RESPONSE
It is our intention to provide you with the best documentation possible to ensure successful use of your Microchip product. If you wish to provide your comments on organization, clarity, subject matter, and ways in which our documentation
can better serve you, please FAX your comments to the Technical Publications Manager at (480) 792-4150.
Please list the following information, and use this outline to provide us with your comments about this document.
To:
RE:
Reader Response
From: Name
Company
Address
City / State / ZIP / Country
Telephone: (_______) _________ - _________
Application (optional):
Would you like a reply?
Device: PIC24H
N
Literature Number: DS70175D
Questions:
1. What are the best features of this document?
2. How does this document meet your hardware and software development needs?
3. Do you find the organization of this document easy to follow? If not, why?
4. What additions to the document do you think would enhance the structure and subject?
5. What deletions from the document could be made without affecting the overall usefulness?
DS70175D-page 288
Preliminary
PIC24H
PRODUCT IDENTIFICATION SYSTEM
To order or obtain information, e.g., on pricing or delivery, refer to the factory or the listed sales office.
PIC 24 HJ 256 GP6 10 T I / PT - XXX
Examples:
a)
Microchip Trademark
Architecture
Flash Memory Family
b)
PIC24HJ256GP210I/PT:
General-purpose PIC24H, 256 KB program
memory, 100-pin, Industrial temp.,
TQFP package.
PIC24HJ64GP506I/PT-ES:
General-purpose PIC24H, 64 KB program
memory, 64-pin, Industrial temp.,
TQFP package, Engineering Sample.
Pin Count
Tape and Reel Flag (if applicable)
Temperature Range
Package
Pattern
Architecture:
24
16-bit Microcontroller
HJ
Product Group:
GP2
GP3
GP5
GP6
=
=
=
=
Pin Count:
06
10
=
=
64-pin
100-pin
Temperature Range:
= -40C to
Package:
PT
PF
=
=
Pattern:
+85C
(Industrial)
Preliminary
DS70175D-page 289
ASIA/PACIFIC
ASIA/PACIFIC
EUROPE
Corporate Office
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200
Fax: 480-792-7277
Technical Support:
http://support.microchip.com
Web Address:
www.microchip.com
Australia - Sydney
Tel: 61-2-9868-6733
Fax: 61-2-9868-6755
India - Bangalore
Tel: 91-80-4182-8400
Fax: 91-80-4182-8422
China - Beijing
Tel: 86-10-8528-2100
Fax: 86-10-8528-2104
Austria - Wels
Tel: 43-7242-2244-3910
Fax: 43-7242-2244-393
Denmark - Copenhagen
Tel: 45-4450-2828
Fax: 45-4485-2829
China - Chengdu
Tel: 86-28-8676-6200
Fax: 86-28-8676-6599
India - Pune
Tel: 91-20-2566-1512
Fax: 91-20-2566-1513
France - Paris
Tel: 33-1-69-53-63-20
Fax: 33-1-69-30-90-79
China - Fuzhou
Tel: 86-591-8750-3506
Fax: 86-591-8750-3521
Japan - Yokohama
Tel: 81-45-471- 6166
Fax: 81-45-471-6122
Germany - Munich
Tel: 49-89-627-144-0
Fax: 49-89-627-144-44
Korea - Gumi
Tel: 82-54-473-4301
Fax: 82-54-473-4302
China - Qingdao
Tel: 86-532-8502-7355
Fax: 86-532-8502-7205
Korea - Seoul
Tel: 82-2-554-7200
Fax: 82-2-558-5932 or
82-2-558-5934
China - Shanghai
Tel: 86-21-5407-5533
Fax: 86-21-5407-5066
Malaysia - Penang
Tel: 60-4-646-8870
Fax: 60-4-646-5086
China - Shenyang
Tel: 86-24-2334-2829
Fax: 86-24-2334-2393
China - Shenzhen
Tel: 86-755-8203-2660
Fax: 86-755-8203-1760
China - Shunde
Tel: 86-757-2839-5507
Fax: 86-757-2839-5571
China - Wuhan
Tel: 86-27-5980-5300
Fax: 86-27-5980-5118
China - Xian
Tel: 86-29-8833-7250
Fax: 86-29-8833-7256
Philippines - Manila
Tel: 63-2-634-9065
Fax: 63-2-634-9069
Italy - Milan
Tel: 39-0331-742611
Fax: 39-0331-466781
Netherlands - Drunen
Tel: 31-416-690399
Fax: 31-416-690340
Spain - Madrid
Tel: 34-91-708-08-90
Fax: 34-91-708-08-91
UK - Wokingham
Tel: 44-118-921-5869
Fax: 44-118-921-5820
Singapore
Tel: 65-6334-8870
Fax: 65-6334-8850
Taiwan - Hsin Chu
Tel: 886-3-572-9526
Fax: 886-3-572-6459
Taiwan - Kaohsiung
Tel: 886-7-536-4818
Fax: 886-7-536-4803
Taiwan - Taipei
Tel: 886-2-2500-6610
Fax: 886-2-2508-0102
Thailand - Bangkok
Tel: 66-2-694-1351
Fax: 66-2-694-1350
San Jose
Mountain View, CA
Tel: 650-215-1444
Fax: 650-961-0286
Toronto
Mississauga, Ontario,
Canada
Tel: 905-673-0699
Fax: 905-673-6509
06/08/06
DS70175D-page 290
Preliminary