电子工程世界电子工程世界电子工程世界

产品描述

搜索

PIC32MX170F512L-V/GJX

器件型号:PIC32MX170F512L-V/GJX
器件类别:半导体    嵌入式处理器和控制器    微控制器 - MCU    32位微控制器 - MCU   
厂商名称:Microchip
厂商官网:https://www.microchip.com
下载文档

器件描述

32位微控制器 - MCU

参数
产品属性属性值
制造商:Microchip
产品种类:32位微控制器 - MCU
安装风格:SMD/SMT
封装 / 箱体:TFBGA-100
系列:PIC32MX1xx
核心:MIPS32 M4K
数据总线宽度:32 bit
最大时钟频率:40 MHz
程序存储器大小:512 kB
数据 RAM 大小:64 kB
ADC分辨率:10 bit
输入/输出端数量:85 I/O
工作电源电压:2.3 V to 3.6 V
最小工作温度:- 40 C
最大工作温度:+ 105 C
接口类型:CAN, I2C, UART, USB
封装:Tray
产品:MCU
程序存储器类型:Flash
商标:Microchip Technology
数据 Ram 类型:SRAM
模拟电源电压:2.3 V to 3.6 V
ADC通道数量:48 Channel
产品类型:32-bit Microcontrollers - MCU
工厂包装数量:260
子类别:Microcontrollers - MCU
电源电压-最大:3.6 V
电源电压-最小:2.3 V
商标名:MIPS32
看门狗计时器:Watchdog Timer

PIC32MX170F512L-V/GJX器件文档内容

                                            PIC32MX1XX/2XX/5XX 64/100-PIN

32-bit Microcontrollers (up to 512 KB Flash and 64 KB SRAM) with

      Audio/Graphics/Touch (HMI), CAN, USB, and Advanced Analog

Operating Conditions                                                              Timers/Output Compare/Input Capture

•  2.3V to 3.6V, -40ºC to +105ºC (DC to 40 MHz),                                 •  Five General Purpose Timers:

   -40ºC to +85ºC (DC to 50 MHz)                                                     -  Five 16-bit and up to two 32-bit Timers/Counters

Core: 50 MHz/83 DMIPS MIPS32® M4K®                                                •  Five Output Compare (OC) modules

•  MIPS16e® mode for up to 40% smaller code size                                  •  Five Input Capture (IC) modules

•  Code-efficient (C and Assembly) architecture                                   •  Peripheral Pin Select (PPS) to allow function remap

•  Single-cycle (MAC) 32x16 and two-cycle 32x32 multiply                          •  Real-Time Clock and Calendar (RTCC) module

Clock Management                                                                  Communication Interfaces

•  0.9% internal oscillator                                                       •  USB 2.0-compliant Full-speed OTG controller

•  Programmable PLLs and oscillator clock sources                                 •  Up to five UART modules (12.5 Mbps):

•  Fail-Safe Clock Monitor (FSCM)                                                    -  LIN 1.2 protocols and IrDA® support

•  Independent Watchdog Timer                                                     •  Four 4-wire SPI modules (25 Mbps)

•  Fast wake-up and start-up                                                      •  Two I2C modules (up to 1 Mbaud) with SMBus support

                                                                                  •  PPS to allow function remap

Power Management                                                                  •  Parallel Master Port (PMP) with dual read/write buffers

•  Low-power management modes (Sleep and Idle)                                    •  Controller Area Network (CAN) 2.0B Compliant with

•  Integrated Power-on Reset, Brown-out Reset, and High                              DeviceNet™ addressing support

   Voltage Detect                                                                 Direct Memory Access (DMA)

•  0.5 mA/MHz dynamic current (typical)                                           •  Four channels of hardware DMA with automatic data

•  44 μA IPD current (typical)                                                       size detection

Audio/Graphics/Touch HMI Features                                                 •  32-bit Programmable Cyclic Redundancy Check (CRC)

•  External graphics interface with up to 34 PMP pins                             •  Two additional channels dedicated to USB

•  Audio data communication: I2S, LJ, RJ, USB                                     •  Two additional channels dedicated to CAN

•  Audio data control interface: SPI and I2C                                      Input/Output

•  Audio data master clock:                                                       •  10 mA or 15 mA source/sink for standard VOH/VOL and

   -  Generation of fractional clock frequencies                                     up to 22 mA for non-standard VOH1

   -  Can be synchronized with USB clock

   -  Can be tuned in run-time                                                    •  5V-tolerant pins

•  Charge Time Measurement Unit (CTMU):                                           •  Selectable open drain, pull-ups, and pull-downs

   -  Supports mTouch® capacitive touch sensing                                   •  External interrupts on all I/O pins

   -  Provides high-resolution time measurement (1 ns)                            Qualification and Class B Support

Advanced Analog Features                                                          •  AEC-Q100 REVG (Grade 2 -40ºC to +105ºC)

•  ADC Module:                                                                    •  Class B Safety Library, IEC 60730

   -  10-bit 1 Msps rate with one Sample and Hold (S&H)                           Debugger Development Support

   -  Up to 48 analog inputs

   -  Can operate during Sleep mode                                               •  In-circuit and in-application programming

•  Flexible and independent ADC trigger sources                                   •  4-wire MIPS® Enhanced JTAG interface

•  On-chip temperature measurement capability                                     •  Unlimited program and six complex data breakpoints

•  Comparators:                                                                   •  IEEE 1149.2-compatible (JTAG) boundary scan

   -  Three dual-input Comparator modules

   -  Programmable reference with 32 voltage points

Packages

          Type                       QFN                                                TQFP                                              TFBGA (see Note 1)

          Pin Count                    64                 64                            100                       100                     100

      I/O Pins (up to)                 53                 53                            85                        85                      85

      Contact/Lead Pitch           0.50 mm                0.50 mm                       0.40 mm                   0.50 mm                 0.65 mm

      Dimensions                   9x9x0.9 mm             10x10x1 mm                    12x12x1 mm                14x14x1 mm              7x7x1.2 mm

Note  1:  Please contact     your  local Microchip Sales  Office for information  regarding the availability  of  devices in the 100-pin  TFBGA package.

 2014-2017 Microchip Technology Inc.                                                                                         DS60001290E-page 1
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 1:         PIC32MX1XX/2XX/5XX 64/100-PIN CONTROLLER FAMILY FEATURES

                                                                                 Remappable Peripherals                                                                                                                                                                           Channels (Programmable/Dedicated)

      Device        Pins  Packages(4)  Program Memory (KB)(1)  Data Memory (KB)  Remappable Pins  Timers/Capture/Compare(2)  UART  SPI/I2S  External Interrupts(3)  10-bit 1 Msps ADC (Channels)  Analog Comparators  USB On-The-Go (OTG)      CAN  CTMU      I2C  PMP      RTCC                                     I/O Pins  JTAG

                                                                                                                                                                                                                                                                                  DMA

PIC32MX120F064H     64    QFN,         64+3                    8                 37               5/5/5                      4     3        5                       28                            3                   N                        0    Y         2    Y        Y     4/0                                53        Y

                          TQFP

PIC32MX130F128H     64    QFN,         128+3                   16                37               5/5/5                      4     3        5                       28                            3                   N                        0    Y         2    Y        Y     4/0                                53        Y

                          TQFP

PIC32MX130F128L     100   TQFP         128+3                   16                54               5/5/5                      5     4        5                       48                            3                   N                        0    Y         2    Y        Y     4/0                                85        Y

                    100   TFBGA

PIC32MX230F128H     64    QFN,         128+3                   16                37               5/5/5                      4     3        5                       28                            3                   Y                        0    Y         2    Y        Y     4/2                                49        Y

                          TQFP

PIC32MX230F128L     100   TQFP         128+3                   16                54               5/5/5                      5     4        5                       48                            3                   Y                        0    Y         2    Y        Y     4/2                                81        Y

                    100   TFBGA

PIC32MX530F128H     64    QFN,         128+3                   16                37               5/5/5                      4     3        5                       28                            3                   Y                        1    Y         2    Y        Y     4/4                                49        Y

                          TQFP

PIC32MX530F128L     100   TQFP         128+3                   16                54               5/5/5                      5     4        5                       48                            3                   Y                        1    Y         2    Y        Y     4/4                                81        Y

                    100   TFBGA

PIC32MX150F256H     64    QFN,         256+3                   32                37               5/5/5                      4     3        5                       28                            3                   N                        0    Y         2    Y        Y     4/0                                53        Y

                          TQFP

PIC32MX150F256L     100   TQFP         256+3                   32                54               5/5/5                      5     4        5                       48                            3                   N                        0    Y         2    Y        Y     4/0                                85        Y

                    100   TFBGA

PIC32MX250F256H     64    QFN,         256+3                   32                37               5/5/5                      4     3        5                       28                            3                   Y                        0    Y         2    Y        Y     4/2                                49        Y

                          TQFP

PIC32MX250F256L     100   TQFP         256+3                   32                54               5/5/5                      5     4        5                       48                            3                   Y                        0    Y         2    Y        Y     4/2                                81        Y

                    100   TFBGA

PIC32MX550F256H     64    QFN,         256+3                   32                37               5/5/5                      4     3        5                       28                            3                   Y                        1    Y         2    Y        Y     4/4                                49        Y

                          TQFP

PIC32MX550F256L     100   TQFP         256+3                   32                54               5/5/5                      5     4        5                       48                            3                   Y                        1    Y         2    Y        Y     4/4                                81        Y

                    100   TFBGA

PIC32MX170F512H     64    QFN,         512+3                   64                37               5/5/5                      4     3        5                       28                            3                   N                        0    Y         2    Y        Y     4/0                                53        Y

                          TQFP

PIC32MX170F512L     100   TQFP         512+3                   64                54               5/5/5                      5     4        5                       48                            3                   N                        0    Y         2    Y        Y     4/0                                85        Y

                    100   TFBGA

PIC32MX270F512H     64    QFN,         512+3                   64                37               5/5/5                      4     3        5                       28                            3                   Y                        0    Y         2    Y        Y     4/2                                49        Y

                          TQFP

PIC32MX270F512L     100   TQFP         512+3                   64                54               5/5/5                      5     4        5                       48                            3                   Y                        0    Y         2    Y        Y     4/2                                81        Y

                    100   TFBGA

PIC32MX570F512H     64    QFN,         512+3                   64                37               5/5/5                      4     3        5                       28                            3                   Y                        1    Y         2    Y        Y     4/4                                49        Y

                          TQFP

PIC32MX570F512L     100   TQFP         512+3                   64                54               5/5/5                      5     4        5                       48                            3                   Y                        1    Y         2    Y        Y     4/4                                81        Y

                    100   TFBGA

Note  1:      All devices feature 3 KB of Boot Flash memory.

      2:      Four out of five timers are remappable.

      3:      Four out of five external interrupts are remappable.

      4:      Please contact your local Microchip Sales Office for information regarding                                                                            the                           availability                             of  devices    in  the  100-pin  TFBGA package.

DS60001290E-page 2                                                                                                                                                                                                                          2014-2017 Microchip Technology                                                    Inc.
             PIC32MX1XX/2XX/5XX 64/100-PIN                                                        FAMILY

Device Pin Tables

TABLE 2:     PIN NAMES FOR 64-PIN GENERAL PURPOSE DEVICES

64-PIN QFN(4) AND TQFP (TOP VIEW)

           PIC32MX120F064H

           PIC32MX130F128H

           PIC32MX150F256H

           PIC32MX170F512H                        64          1

                                                                                   64             1

                                                      QFN(4)                           TQFP

Pin #                       Full Pin Name             Pin #                        Full Pin Name

1      AN22/RPE5/PMD5/RE5                             33      RPF3/RF3

2      AN23/PMD6/RE6                                  34      RPF2/RF2

3      AN27/PMD7/RE7                                  35      RPF6/SCK1/INT0/RF6

4      AN16/C1IND/RPG6/SCK2/PMA5/RG6                  36      SDA1/RG3

5      AN17/C1INC/RPG7/PMA4/RG7                       37      SCL1/RG2

6      AN18/C2IND/RPG8/PMA3/RG8                       38      VDD

7      MCLR                                           39      OSC1/CLKI/RC12

8      AN19/C2INC/RPG9/PMA2/RG9                       40      OSC2/CLKO/RC15

9      VSS                                            41      VSS

10     VDD                                            42      RPD8/RTCC/RD8

11     AN5/C1INA/RPB5/RB5                             43      RPD9/RD9

12     AN4/C1INB/RB4                                  44      RPD10/PMA15/RD10

13     PGED3/AN3/C2INA/RPB3/RB3                       45      RPD11/PMA14/RD11

14     PGEC3/AN2/CTCMP/C2INB/RPB2/CTED13/RB2          46      RPD0/RD0

15     PGEC1/VREF-/AN1/RPB1/CTED12/RB1                47      SOSCI/RPC13/RC13

16     PGED1/VREF+/AN0/RPB0/PMA6/RB0                  48      SOSCO/RPC14/T1CK/RC14

17     PGEC2/AN6/RPB6/RB6                             49      AN24/RPD1/RD1

18     PGED2/AN7/RPB7/CTED3/RB7                       50      AN25/RPD2/RD2

19     AVDD                                           51      AN26/C3IND/RPD3/RD3

20     AVSS                                           52      RPD4/PMWR/RD4

21     AN8/RPB8/CTED10/RB8                            53      RPD5/PMRD/RD5

22     AN9/RPB9/CTED4/PMA7/RB9                        54      C3INC/RD6

23     TMS/CVREFOUT/AN10/RPB10/CTED11/PMA13/RB10      55      C3INB/RD7

24     TDO/AN11/PMA12/RB11                            56      VCAP

25     VSS                                            57      VDD

26     VDD                                            58      C3INA/RPF0/RF0

27     TCK/AN12/PMA11/RB12                            59      RPF1/RF1

28     TDI/AN13/PMA10/RB13                            60      PMD0/RE0

29     AN14/RPB14/SCK3/CTED5/PMA1/RB14                61      PMD1/RE1

30     AN15/RPB15/OCFB/CTED6/PMA0/RB15                62      AN20/PMD2/RE2

31     RPF4/SDA2/PMA9/RF4                             63      RPE3/CTPLS/PMD3/RE3

32     RPF5/SCL2/PMA8/RF5                             64      AN21/PMD4/RE4

Note   1:   The RPn pins can be used by remappable peripherals. See Table 1 for the available peripherals and Section 11.3 “Peripheral Pin

            Select” for restrictions.

       2:   Every I/O port pin (RBx-RGx) can be used as a change notification pin (CNBx-CNGx). See Section 11.0 “I/O Ports” for more information.

       3:   Shaded pins are 5V tolerant.

       4:   The metal plane at the bottom of the device is not connected to any pins and is recommended to be connected to VSS externally.

 2014-2017 Microchip Technology Inc.                                                  DS60001290E-page 3
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 3:     PIN NAMES FOR 64-PIN USB DEVICES

64-PIN QFN(4) AND TQFP (TOP VIEW)

           PIC32MX230F128H

           PIC32MX530F128H

           PIC32MX250F256H

           PIC32MX550F256H

           PIC32MX270F512H                        64

           PIC32MX570F512H                                    1

                                                                                   64             1

                                                      QFN(4)                           TQFP

Pin #                       Full Pin Name             Pin #                        Full Pin Name

1      AN22/RPE5/PMD5/RE5                             33      USBID/RPF3/RF3

2      AN23/PMD6/RE6                                  34      VBUS

3      AN27/PMD7/RE7                                  35      VUSB3V3

4      AN16/C1IND/RPG6/SCK2/PMA5/RG6                  36      D-

5      AN17/C1INC/RPG7/PMA4/RG7                       37      D+

6      AN18/C2IND/RPG8/PMA3/RG8                       38      VDD

7      MCLR                                           39      OSC1/CLKI/RC12

8      AN19/C2INC/RPG9/PMA2/RG9                       40      OSC2/CLKO/RC15

9      VSS                                            41      VSS

10     VDD                                            42      RPD8/RTCC/RD8

11     AN5/C1INA/RPB5/VBUSON/RB5                      43      RPD9/SDA1/RD9

12     AN4/C1INB/RB4                                  44      RPD10/SCL1/PMA15/RD10

13     PGED3/AN3/C2INA/RPB3/RB3                       45      RPD11/PMA14/RD11

14     PGEC3/AN2/CTCMP/C2INB/RPB2/CTED13/RB2          46      RPD0/INT0/RD0

15     PGEC1/VREF-/AN1/RPB1/CTED12/RB1                47      SOSCI/RPC13/RC13

16     PGED1/VREF+/AN0/RPB0/PMA6/RB0                  48      SOSCO/RPC14/T1CK/RC14

17     PGEC2/AN6/RPB6/RB6                             49      AN24/RPD1/RD1

18     PGED2/AN7/RPB7/CTED3/RB7                       50      AN25/RPD2/SCK1/RD2

19     AVDD                                           51      AN26/C3IND/RPD3/RD3

20     AVSS                                           52      RPD4/PMWR/RD4

21     AN8/RPB8/CTED10/RB8                            53      RPD5/PMRD/RD5

22     AN9/RPB9/CTED4/PMA7/RB9                        54      C3INC/RD6

23     TMS/CVREFOUT/AN10/RPB10/CTED11/PMA13/RB10      55      C3INB/RD7

24     TDO/AN11/PMA12/RB11                            56      VCAP

25     VSS                                            57      VDD

26     VDD                                            58      C3INA/RPF0/RF0

27     TCK/AN12/PMA11/RB12                            59      RPF1/RF1

28     TDI/AN13/PMA10/RB13                            60      PMD0/RE0

29     AN14/RPB14/SCK3/CTED5/PMA1/RB14                61      PMD1/RE1

30     AN15/RPB15/OCFB/CTED6/PMA0/RB15                62      AN20/PMD2/RE2

31     RPF4/SDA2/PMA9/RF4                             63      RPE3/CTPLS/PMD3/RE3

32     RPF5/SCL2/PMA8/RF5                             64      AN21/PMD4/RE4

Note   1:   The RPn pins can be used by remappable peripherals. See Table 1 for the available peripherals and Section 11.3 “Peripheral Pin

            Select” for restrictions.

       2:   Every I/O port pin (RBx-RGx) can be used as a change notification pin (CNBx-CNGx). See Section 11.0 “I/O Ports” for more information.

       3:   Shaded pins are 5V tolerant.

       4:   The metal plane at the bottom of the QFN device is not connected to any pins and is recommended to be connected to VSS externally.

DS60001290E-page 4                                                            2014-2017 Microchip Technology Inc.
                      PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 4:          PIN NAMES FOR 100-PIN GENERAL PURPOSE DEVICES

100-PIN TQFP (TOP VIEW)

             PIC32MX130F128L

             PIC32MX150F256L

             PIC32MX170F512L

                                                                               100

                                                                                                     1

Pin #                      Full Pin Name                           Pin #                             Full Pin Name

1      AN28/RG15                                                        36     VSS

2      VDD                                                              37     VDD

3      AN22/RPE5/PMD5/RE5                                               38     TCK/CTED2/RA1

4      AN23/PMD6/RE6                                                    39     AN34/RPF13/SCK3/RF13

5      AN27/PMD7/RE7                                                    40     AN35/RPF12/RF12

6      AN29/RPC1/RC1                                                    41     AN12/PMA11/RB12

7      AN30/RPC2/RC2                                                    42     AN13/PMA10/RB13

8      AN31/RPC3/RC3                                                    43     AN14/RPB14/CTED5/PMA1/RB14

9      RPC4/CTED7/RC4                                                   44     AN15/RPB15/OCFB/CTED6/PMA0/RB15

10     AN16/C1IND/RPG6/SCK2/PMA5/RG6                                    45     VSS

11     AN17/C1INC/RPG7/PMA4/RG7                                         46     VDD

12     AN18/C2IND/RPG8/PMA3/RG8                                         47     AN36/RPD14/RD14

13     MCLR                                                             48     AN37/RPD15/SCK4/RD15

14     AN19/C2INC/RPG9/PMA2/RG9                                         49     RPF4/PMA9/RF4

15     VSS                                                              50     RPF5/PMA8/RF5

16     VDD                                                              51     RPF3/RF3

17     TMS/CTED1/RA0                                                    52     AN38/RPF2/RF2

18     AN32/RPE8/RE8                                                    53     AN39/RPF8/RF8

19     AN33/RPE9/RE9                                                    54     RPF7/RF7

20     AN5/C1INA/RPB5/RB5                                               55     RPF6/SCK1/INT0/RF6

21     AN4/C1INB/RB4                                                    56     SDA1/RG3

22     PGED3/AN3/C2INA/RPB3/RB3                                         57     SCL1/RG2

23     PGEC3/AN2/CTCMP/C2INB/RPB2/CTED13/RB2                            58     SCL2/RA2

24     PGEC1/AN1/RPB1/CTED12/RB1                                        59     SDA2/RA3

25     PGED1/AN0/RPB0/RB0                                               60     TDI/CTED9/RA4

26     PGEC2/AN6/RPB6/RB6                                               61     TDO/RA5

27     PGED2/AN7/RPB7/CTED3/RB7                                         62     VDD

28     VREF-/PMA7/RA9                                                   63     OSC1/CLKI/RC12

29     VREF+/PMA6/RA10                                                  64     OSC2/CLKO/RC15

30     AVDD                                                             65     VSS

31     AVSS                                                             66     RPA14/RA14

32     AN8/RPB8/CTED10/RB8                                              67     RPA15/RA15

33     AN9/RPB9/CTED4/RB9                                               68     RPD8/RTCC/RD8

34     CVREFOUT/AN10/RPB10/CTED11/PMA13/RB10                            69     RPD9/RD9

35     AN11/PMA12/RB11                                                  70     RPD10/PMA15/RD10

Note   1:    The RPn pins can be used by remappable peripherals.   See  Table  1 for the available peripherals and Section  11.3 “Peripheral  Pin

             Select” for restrictions.

       2:    Every I/O port pin (RAx-RGx) can be used as a change  notification pin (CNAx-CNGx). See Section 11.0 “I/O      Ports” for more

             information.

       3:    Shaded pins are 5V tolerant.

 2014-2017 Microchip Technology Inc.                                                                                       DS60001290E-page 5
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 4:         PIN NAMES FOR 100-PIN GENERAL PURPOSE DEVICES (CONTINUED)

100-PIN TQFP (TOP VIEW)

             PIC32MX130F128L

             PIC32MX150F256L

             PIC32MX170F512L

                                                                                100

                                                                                                           1

Pin #                      Full Pin Name                             Pin #                           Full Pin Name

71     RPD11/PMA14/RD11                                              86         VDD

72     RPD0/RD0                                                      87         AN44/C3INA/RPF0/PMD11/RF0

73     SOSCI/RPC13/RC13                                              88         AN45/RPF1/PMD10/RF1

74     SOSCO/RPC14/T1CK/RC14                                         89         RPG1/PMD9/RG1

75     VSS                                                           90         RPG0/PMD8/RG0

76     AN24/RPD1/RD1                                                 91         RA6

77     AN25/RPD2/RD2                                                 92         CTED8/RA7

78     AN26/C3IND/RPD3/RD3                                           93         AN46/PMD0/RE0

79     AN40/RPD12/PMD12/RD12                                         94         AN47/PMD1/RE1

80     AN41/PMD13/RD13                                               95         RG14

81     RPD4/PMWR/RD4                                                 96         RG12

82     RPD5/PMRD/RD5                                                 97         RG13

83     AN42/C3INC/PMD14/RD6                                          98         AN20/PMD2/RE2

84     AN43/C3INB/PMD15/RD7                                          99         RPE3/CTPLS/PMD3/RE3

85     VCAP                                                          100        AN21/PMD4/RE4

Note   1:    The RPn pins can be used by remappable    peripherals.  See Table  1 for the available peripherals and Section  11.3 “Peripheral  Pin

             Select” for restrictions.

       2:    Every I/O port pin (RAx-RGx) can be used  as a change   notification pin (CNAx-CNGx). See Section 11.0 “I/O     Ports” for more

             information.

       3:    Shaded pins are 5V tolerant.

DS60001290E-page 6                                                                                    2014-2017 Microchip Technology               Inc.
                      PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 5:          PIN NAMES FOR 100-PIN USB DEVICES

100-PIN TQFP (TOP VIEW)

                  PIC32MX230F128L

                  PIC32MX530F128L

                  PIC32MX250F256L

                  PIC32MX550F256L

                  PIC32MX270F512L

                  PIC32MX570F512L

                                                     100

                                                                            1

Pin #                      Full Pin Name      Pin #                         Full Pin Name

1      AN28/RG15                              36     VSS

2      VDD                                    37     VDD

3      AN22/RPE5/PMD5/RE5                     38     TCK/CTED2/RA1

4      AN23/PMD6/RE6                          39     AN34/RPF13/SCK3/RF13

5      AN27/PMD7/RE7                          40     AN35/RPF12/RF12

6      AN29/RPC1/RC1                          41     AN12/PMA11/RB12

7      AN30/RPC2/RC2                          42     AN13/PMA10/RB13

8      AN31/RPC3/RC3                          43     AN14/RPB14/CTED5/PMA1/RB14

9      RPC4/CTED7/RC4                         44     AN15/RPB15/OCFB/CTED6/PMA0/RB15

10     AN16/C1IND/RPG6/SCK2/PMA5/RG6          45     VSS

11     AN17/C1INC/RPG7/PMA4/RG7               46     VDD

12     AN18/C2IND/RPG8/PMA3/RG8               47     AN36/RPD14/RD14

13     MCLR                                   48     AN37/RPD15/SCK4/RD15

14     AN19/C2INC/RPG9/PMA2/RG9               49     RPF4/PMA9/RF4

15     VSS                                    50     RPF5/PMA8/RF5

16     VDD                                    51     USBID/RPF3/RF3

17     TMS/CTED1/RA0                          52     AN38/RPF2/RF2

18     AN32/RPE8/RE8                          53     AN39/RPF8/RF8

19     AN33/RPE9/RE9                          54     VBUS

20     AN5/C1INA/RPB5/VBUSON/RB5              55     VUSB3V3

21     AN4/C1INB/RB4                          56     D-

22     PGED3/AN3/C2INA/RPB3/RB3               57     D+

23     PGEC3/AN2/CTCMP/C2INB/RPB2/CTED13/RB2  58     SCL2/RA2

24     PGEC1/AN1/RPB1/CTED12/RB1              59     SDA2/RA3

25     PGED1/AN0/RPB0/RB0                     60     TDI/CTED9/RA4

26     PGEC2/AN6/RPB6/RB6                     61     TDO/RA5

27     PGED2/AN7/RPB7/CTED3/RB7               62     VDD

28     VREF-/PMA7/RA9                         63     OSC1/CLKI/RC12

29     VREF+/PMA6/RA10                        64     OSC2/CLKO/RC15

30     AVDD                                   65     VSS

31     AVSS                                   66     RPA14/SCL1/RA14

32     AN8/RPB8/CTED10/RB8                    67     RPA15/SDA1/RA15

33     AN9/RPB9/CTED4/RB9                     68     RPD8/RTCC/RD8

34     CVREFOUT/AN10/RPB10/CTED11/PMA13/RB10  69     RPD9/RD9

35     AN11/PMA12/RB11                        70     RPD10/SCK1/PMA15/RD10

Note   1:    The RPn pins can be used by remappable peripherals. See Table 1 for the available peripherals and Section  11.3 “Peripheral  Pin

             Select” for restrictions.

       2:    Every I/O port pin (RAx-RGx) can be used as a change notification pin (CNAx-CNGx). See Section 11.0 “I/O   Ports” for more

             information.

       3:    Shaded pins are 5V tolerant.

 2014-2017 Microchip Technology Inc.                                                                                   DS60001290E-page 7
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 5:     PIN NAMES FOR 100-PIN USB DEVICES (CONTINUED)

100-PIN TQFP (TOP VIEW)

             PIC32MX230F128L

             PIC32MX530F128L

             PIC32MX250F256L

             PIC32MX550F256L

             PIC32MX270F512L

             PIC32MX570F512L

                                                                                100

                                                                                                           1

Pin #                      Full Pin Name                             Pin #                           Full Pin Name

71     RPD11/PMA14/RD11                                              86         VDD

72     RPD0/INT0/RD0                                                 87         AN44/C3INA/RPF0/PMD11/RF0

73     SOSCI/RPC13/RC13                                              88         AN45/RPF1/PMD10/RF1

74     SOSCO/RPC14/T1CK/RC14                                         89         RPG1/PMD9/RG1

75     VSS                                                           90         RPG0/PMD8/RG0

76     AN24/RPD1/RD1                                                 91         RA6

77     AN25/RPD2/RD2                                                 92         CTED8/RA7

78     AN26/C3IND/RPD3/RD3                                           93         AN46/PMD0/RE0

79     AN40/RPD12/PMD12/RD12                                         94         AN47/PMD1/RE1

80     AN41/PMD13/RD13                                               95         RG14

81     RPD4/PMWR/RD4                                                 96         RG12

82     RPD5/PMRD/RD5                                                 97         RG13

83     AN42/C3INC/PMD14/RD6                                          98         AN20/PMD2/RE2

84     AN43/C3INB/PMD15/RD7                                          99         RPE3/CTPLS/PMD3/RE3

85     VCAP                                                          100        AN21/PMD4/RE4

Note   1:    The RPn pins can be used by remappable    peripherals.  See Table  1 for the available peripherals and Section  11.3 “Peripheral  Pin

             Select” for restrictions.

       2:    Every I/O port pin (RAx-RGx) can be used  as a change   notification pin (CNAx-CNGx). See Section 11.0 “I/O     Ports” for more

             information.

       3:    Shaded pins are 5V tolerant.

DS60001290E-page 8                                                                                    2014-2017 Microchip Technology               Inc.
      PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

Table of Contents

1.0   Device Overview ........................................................................................................................................................................ 13

2.0   Guidelines for Getting Started with 32-bit MCUs........................................................................................................................ 25

3.0   CPU............................................................................................................................................................................................ 35

4.0   Memory Organization ................................................................................................................................................................. 39

5.0   Interrupt Controller ..................................................................................................................................................................... 53

6.0   Flash Program Memory.............................................................................................................................................................. 63

7.0   Resets ........................................................................................................................................................................................ 69

8.0   Oscillator Configuration .............................................................................................................................................................. 73

9.0   Direct Memory Access (DMA) Controller ................................................................................................................................... 85

10.0  USB On-The-Go (OTG)............................................................................................................................................................ 105

11.0  I/O Ports ................................................................................................................................................................................... 129

12.0  Timer1 ...................................................................................................................................................................................... 159

13.0  Timer2/3, Timer4/5 ................................................................................................................................................................... 163

14.0  Watchdog Timer (WDT) ........................................................................................................................................................... 169

15.0  Input Capture............................................................................................................................................................................ 173

16.0  Output Compare....................................................................................................................................................................... 177

17.0  Serial Peripheral Interface (SPI)............................................................................................................................................... 181
      Inter-Integrated Circuit (I2C) ..................................................................................................................................................... 191
18.0

19.0  Universal Asynchronous Receiver Transmitter (UART) ........................................................................................................... 199

20.0  Parallel Master Port (PMP)....................................................................................................................................................... 207

21.0  Real-Time Clock and Calendar (RTCC)................................................................................................................................... 221

22.0  10-bit Analog-to-Digital Converter (ADC) ................................................................................................................................. 231

23.0  Controller Area Network (CAN) ................................................................................................................................................ 243

24.0  Comparator .............................................................................................................................................................................. 271

25.0  Comparator Voltage Reference (CVREF) ................................................................................................................................. 275

26.0  Charge Time Measurement Unit (CTMU)  ............................................................................................................................... 279

27.0  Power-Saving Features ........................................................................................................................................................... 285

28.0  Special Features ...................................................................................................................................................................... 291

29.0  Instruction Set .......................................................................................................................................................................... 303

30.0  Development Support............................................................................................................................................................... 305

31.0  40 MHz Electrical Characteristics............................................................................................................................................. 309

32.0  50 MHz Electrical Characteristics............................................................................................................................................. 353

33.0  DC and AC Device Characteristics Graphs.............................................................................................................................. 359

34.0  Packaging Information.............................................................................................................................................................. 361

The Microchip Web Site ..................................................................................................................................................................... 379

Customer Change Notification Service .............................................................................................................................................. 379

Customer Support .............................................................................................................................................................................. 379

Product Identification System ............................................................................................................................................................ 380

 2014-2017 Microchip Technology Inc.      DS60001290E-page 9
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

                              TO OUR VALUED CUSTOMERS

It is our intention to provide our valued customers with the best documentation possible to ensure successful use of your Microchip

products. To this end, we will continue to improve our publications to better suit your needs. Our publications will be refined and

enhanced as new volumes and updates are introduced.

If you have any questions or comments regarding this publication, please contact the Marketing Communications Department via

E-mail at docerrors@microchip.com. We welcome your feedback.

Most Current Data Sheet

To obtain the most up-to-date version of this data sheet, please register at our Worldwide Web site at:

   http://www.microchip.com

You can determine the version of a data sheet by examining its literature number found on the bottom outside corner of any page.

The last character of the literature number is the version number, (e.g., DS30000000A is version A of document DS30000000).

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:

•  Microchip’s 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.

Customer Notification System

Register on our web site at www.microchip.com to receive the most current information on all of our products.

DS60001290E-page 10                                            2014-2017 Microchip Technology Inc.
                      PIC32MX1XX/2XX/5XX 64/100-PIN                               FAMILY

Referenced Sources

This  device  data    sheet    is  based  on  the     following

individual  sections  of  the  “PIC32     Family   Reference

Manual”. These documents should be considered as

the general reference for the operation of a particular

module or device feature.

   Note:    To   access   the      documents  listed  below,

            browse to the documentation section of

            the       Microchip               web     site

            (www.microchip.com).

•  Section 1. “Introduction” (DS60001127)

•  Section 2. “CPU” (DS60001113)

•  Section 3. “Memory Organization” (DS60001115)

•  Section 5. “Flash Program Memory” (DS60001121)

•  Section 6. “Oscillator Configuration” (DS60001112)

•  Section 7. “Resets” (DS60001118)

•  Section 8. “Interrupt Controller” (DS60001108)

•  Section 9. “Watchdog Timer and Power-up Timer” (DS60001114)

•  Section 10. “Power-Saving Features” (DS60001130)

•  Section 12. “I/O Ports” (DS60001120)

•  Section 13. “Parallel Master Port (PMP)” (DS60001128)

•  Section 14. “Timers” (DS60001105)

•  Section 15. “Input Capture” (DS60001122)

•  Section 16. “Output Compare” (DS60001111)

•  Section 17. “10-bit Analog-to-Digital Converter (ADC)” (DS60001104)

•  Section 19. “Comparator” (DS60001110)

•  Section 20. “Comparator Voltage Reference (CVREF)” (DS60001109)

•  Section 21. “Universal Asynchronous Receiver Transmitter (UART)” (DS60001107)

•  Section 23. “Serial Peripheral Interface (SPI)” (DS60001106)

•  Section 24. “Inter-Integrated Circuit (I2C)” (DS60001116)

•  Section 27. “USB On-The-Go (OTG)” (DS60001126)

•  Section 29. “Real-Time Clock and Calendar (RTCC)” (DS60001125)

•  Section 31. “Direct Memory Access (DMA) Controller” (DS60001117)

•  Section 32. “Configuration” (DS60001124)

•  Section 33. “Programming and Diagnostics” (DS60001129)

•  Section 34. “Controller Area Network (CAN)” (DS60001123)

•  Section 37. “Charge Time Measurement Unit (CTMU)” (DS60001167)

 2014-2017 Microchip Technology Inc.                                             DS60001290E-page 11
PIC32MX1XX/2XX/5XX   64/100-PIN  FAMILY

NOTES:

DS60001290E-page 12               2014-2017 Microchip  Technology  Inc.
           PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

1.0        DEVICE OVERVIEW                                                      This document contains device-specific information for

                                                                                PIC32MX1XX/2XX/5XX 64/100-pin devices.

Note   1:   This data sheet summarizes the features                             Figure 1-1 illustrates a general block diagram of the

            of   the  PIC32MX1XX/2XX/5XX                 64/100-                core and peripheral modules in the PIC32MX1XX/2XX/

            pin family of devices. It is not intended to                        5XX 64/100-pin family of devices.

            be   a  comprehensive        reference        source.               Table 1-1 lists the functions of the various pins shown

            To   complement  the         information      in  this              in the pinout diagrams.

            data sheet, refer to the related section of

            the  “PIC32   Family     Reference         Manual”,

            which     is  available  from     the     Microchip

            web site (www.microchip.com/PIC32).

FIGURE 1-1:               PIC32MX1XX/2XX/5XX                  64/100-PIN BLOCK           DIAGRAM

           OSC2/CLKO                                                       VCAP

           OSC1/CLKI                 OSC/SOSC                                            Power-up

                                     Oscillators                                         Timer               VDD, VSS

                                     FRC/LPRC                                            Oscillator                MCLR

                                     Oscillators                        Voltage          Start-up Timer
                                                                        Regulator

                                         PLL                                             Power-on

                                     DIVIDERS                           Precision        Reset
                                                                        Band Gap
                                                                        Reference
                                                                                         Watchdog
                                     PLL-USB                                             Timer

                                                              USBCLK

                                     Timing                   SYSCLK                     Brown-out

                                     Generation               PBCLK                      Reset

                             Peripheral Bus Clocked by SYSCLK                                                                                     CTMU

PORTA/CNA

                             JTAG             Priority                                                                                            Timer1-5

PORTB/CNB                    BSCAN            Interrupt

                                              Controller

                                                              USB       DMAC        ICD  CAN                 Peripheral Bus Clocked by PBCLK      PWM

                                                                                                         32                                       OC1-5

PORTC/CNC                    EJTAG                INT

                          MIPS32® M4K® CPU Core                                                                                                   IC1-5

PORTD/CND                    IS                   DS                                                                                          32

                                                                    32          32  32   32                                                       SPI1-4

PORTE/CNE             32             32            32

                                                       Bus  Matrix                                                                                I2C1,2

PORTF/CNF                                                                                                                                         PMP

                                         32                         32                   32

PORTG/CNG                                                                                                                                         10-bit ADC

                                                              Data RAM              Peripheral Bridge

Remappable                                                                                                                                        UART1-5

     Pins

                                         32-bit wide                Flash                                                                         RTCC

                             Program Flash Memory                   Controller

                                                                                                                                                  Comparators

                                                                                                                                                  1-3

Note:       Not all features are available on all devices. Refer to TABLE 1: “PIC32MX1XX/2XX/5XX             64/100-pin                           Controller
            Family Features” for the list of features by device.

 2014-2017 Microchip Technology Inc.                                                                                                         DS60001290E-page 13
          PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS

            Pin Number

Pin Name    64-pin                     Pin   Buffer                            Description

            QFN/    100-pin            Type  Type

            TQFP    TQFP

AN0         16      25                 I     Analog

AN1         15      24                 I     Analog

AN2         14      23                 I     Analog

AN3         13      22                 I     Analog

AN4         12      21                 I     Analog

AN5         11      20                 I     Analog

AN6         17      26                 I     Analog

AN7         18      27                 I     Analog

AN8         21      32                 I     Analog

AN9         22      33                 I     Analog

AN10        23      34                 I     Analog

AN11        24      35                 I     Analog

AN12        27      41                 I     Analog

AN13        28      42                 I     Analog

AN14        29      43                 I     Analog

AN15        30      44                 I     Analog

AN16        4       10                 I     Analog

AN17        5       11                 I     Analog    Analog input channels.

AN18        6       12                 I     Analog

AN19        8       14                 I     Analog

AN20        62      98                 I     Analog

AN21        64      100                I     Analog

AN22        1       3                  I     Analog

AN23        2       4                  I     Analog

AN24        49      76                 I     Analog

AN25        50      77                 I     Analog

AN26        51      78                 I     Analog

AN27        3       5                  I     Analog

AN28        —       1                  I     Analog

AN29        —       6                  I     Analog

AN30        —       7                  I     Analog

AN31        —       8                  I     Analog

AN32        —       18                 I     Analog

AN33        —       19                 I     Analog

AN34        —       39                 I     Analog

AN35        —       40                 I     Analog

Legend:   CMOS = CMOS compatible input or output       Analog = Analog input   I = Input    O = Output

          ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer  P = Power

Note  1:  This pin is only available on devices without a USB module.

      2:  This pin is only available on devices with a USB module.

      3:  This pin is not available on 64-pin devices with a USB module.

      4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                       DS60001290E-page  14
          PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                            Description

            QFN/    100-pin            Type  Type

            TQFP    TQFP

AN36        —       47                 I     Analog

AN37        —       48                 I     Analog

AN38        —       52                 I     Analog

AN39        —       53                 I     Analog

AN40        —       79                 I     Analog

AN41        —       80                 I     Analog    Analog input channels.

AN42        —       83                 I     Analog

AN43        —       84                 I     Analog

AN44        —       87                 I     Analog

AN45        —       88                 I     Analog

AN46        —       93                 I     Analog

AN47        —       94                 I     Analog

CLKI        39      63                 I     ST/CMOS   External clock source input. Always associated with OSC1 pin

                                                       function.

                                                       Oscillator crystal output. Connects to crystal or resonator in

CLKO        40      64                 O     —         Crystal Oscillator mode. Optionally functions as CLKO in RC

                                                       and EC modes. Always associated with the OSC2 pin

                                                       function.

OSC1        39      63                 I     ST/CMOS   Oscillator crystal input. ST buffer when configured in RC

                                                       mode; CMOS otherwise.

                                                       Oscillator crystal output. Connects to crystal or resonator in

OSC2        40      64                 O     —         Crystal Oscillator mode. Optionally functions as CLKO in RC

                                                       and EC modes.

SOSCI       47      73                 I     ST/CMOS   32.768 kHz low-power oscillator crystal input; CMOS

                                                       otherwise.

SOSCO       48      74                 O     —         32.768 kHz low-power oscillator crystal output.

IC1         PPS     PPS                I     ST

IC2         PPS     PPS                I     ST

IC3         PPS     PPS                I     ST        Capture Input 1-5

IC4         PPS     PPS                I     ST

IC5         PPS     PPS                I     ST

OC1         PPS     PPS                O     ST        Output Compare Output 1

OC2         PPS     PPS                O     ST        Output Compare Output 2

OC3         PPS     PPS                O     ST        Output Compare Output 3

OC4         PPS     PPS                O     ST        Output Compare Output 4

OC5         PPS     PPS                O     ST        Output Compare Output 5

OCFA        PPS     PPS                I     ST        Output Compare Fault A Input

OCFB        30      44                 I     ST        Output Compare Fault B Input

Legend:   CMOS = CMOS compatible input or output       Analog = Analog input         I = Input          O = Output

          ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer        P = Power

Note  1:  This pin is only available on devices without a USB module.

      2:  This pin is only available on devices with a USB module.

      3:  This pin is not available on 64-pin devices with a USB module.

      4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                           DS60001290E-page 15
          PIC32MX1XX/2XX/5XX 64/100-PIN                                                     FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                            Description

            QFN/        100-pin        Type  Type

            TQFP        TQFP

INT0      35(1), 46(2)  55(1), 72(2)   I     ST        External Interrupt 0

INT1        PPS         PPS            I     ST        External Interrupt 1

INT2        PPS         PPS            I     ST        External Interrupt 2

INT3        PPS         PPS            I     ST        External Interrupt 3

INT4        PPS         PPS            I     ST        External Interrupt 4

RA0         —           17             I/O   ST

RA1         —           38             I/O   ST

RA2         —           58             I/O   ST

RA3         —           59             I/O   ST

RA4         —           60             I/O   ST

RA5         —           61             I/O   ST        PORTA is a bidirectional I/O port

RA6         —           91             I/O   ST

RA7         —           92             I/O   ST

RA9         —           28             I/O   ST

RA10        —           29             I/O   ST

RA14        —           66             I/O   ST

RA15        —           67             I/O   ST

RB0         16          25             I/O   ST

RB1         15          24             I/O   ST

RB2         14          23             I/O   ST

RB3         13          22             I/O   ST

RB4         12          21             I/O   ST

RB5         11          20             I/O   ST

RB6         17          26             I/O   ST

RB7         18          27             I/O   ST        PORTB is a bidirectional I/O port

RB8         21          32             I/O   ST

RB9         22          33             I/O   ST

RB10        23          34             I/O   ST

RB11        24          35             I/O   ST

RB12        27          41             I/O   ST

RB13        28          42             I/O   ST

RB14        29          43             I/O   ST

RB15        30          44             I/O   ST

Legend:   CMOS = CMOS compatible input or output       Analog = Analog input   I = Input    O = Output

          ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer  P = Power

Note  1:  This pin is only available on devices without a USB module.

      2:  This pin is only available on devices with a USB module.

      3:  This pin is not available on 64-pin devices with a USB module.

      4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                       DS60001290E-page 16
          PIC32MX1XX/2XX/5XX 64/100-PIN                                                     FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                            Description

            QFN/    100-pin            Type  Type

            TQFP    TQFP

RC1         —       6                  I/O   ST

RC2         —       7                  I/O   ST

RC3         —       8                  I/O   ST

RC4         —       9                  I/O   ST        PORTC is a bidirectional I/O port

RC12        39      63                 I/O   ST

RC13        47      73                 I/O   ST

RC14        48      74                 I/O   ST

RC15        40      64                 I/O   ST

RD0         46      72                 I/O   ST

RD1         49      76                 I/O   ST

RD2         50      77                 I/O   ST

RD3         51      78                 I/O   ST

RD4         52      81                 I/O   ST

RD5         53      82                 I/O   ST

RD6         54      83                 I/O   ST

RD7         55      84                 I/O   ST        PORTD is a bidirectional I/O port

RD8         42      68                 I/O   ST

RD9         43      69                 I/O   ST

RD10        44      70                 I/O   ST

RD11        45      71                 I/O   ST

RD12        —       79                 I/O   ST

RD13        —       80                 I/O   ST

RD14        —       47                 I/O   ST

RD15        —       48                 I/O   ST

RE0         60      93                 I/O   ST

RE1         61      94                 I/O   ST

RE2         62      98                 I/O   ST

RE3         63      99                 I/O   ST

RE4         64      100                I/O   ST        PORTE is a bidirectional I/O port

RE5         1       3                  I/O   ST

RE6         2       4                  I/O   ST

RE7         3       5                  I/O   ST

RE8         —       18                 I/O   ST

RE9         —       19                 I/O   ST

Legend:   CMOS = CMOS compatible input or output       Analog = Analog input   I = Input    O = Output

          ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer  P = Power

Note  1:  This pin is only available on devices without a USB module.

      2:  This pin is only available on devices with a USB module.

      3:  This pin is not available on 64-pin devices with a USB module.

      4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                       DS60001290E-page 17
          PIC32MX1XX/2XX/5XX 64/100-PIN                                                        FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                            Description

            QFN/    100-pin            Type  Type

            TQFP    TQFP

RF0         58      87                 I/O   ST

RF1         59      88                 I/O   ST

RF2         34(3)   52                 I/O   ST

RF3         33      51                 I/O   ST

RF4         31      49                 I/O   ST

RF5         32      50                 I/O   ST        PORTF is a bidirectional I/O port

RF6         35(1)   55(1)              I/O   ST

RF7         —       54(4)              I/O   ST

RF8         —       53                 I/O   ST

RF12        —       40                 I/O   ST

RF13        —       39                 I/O   ST

RG0         —       90                 I/O   ST

RG1         —       89                 I/O   ST

RG2         37(1)   57(1)              I/O   ST

RG3         36(1)   56(1)              I/O   ST

RG6         4       10                 I/O   ST

RG7         5       11                 I/O   ST        PORTG is a bidirectional I/O port

RG8         6       12                 I/O   ST

RG9         8       14                 I/O   ST

RG12        —       96                 I/O   ST

RG13        —       97                 I/O   ST

RG14        —       95                 I/O   ST

RG15        —       1                  I/O   ST

T1CK        48      74                 I     ST        Timer1 External Clock Input

T2CK        PPS     PPS                I     ST        Timer2 External Clock Input

T3CK        PPS     PPS                I     ST        Timer3 External Clock Input

T4CK        PPS     PPS                I     ST        Timer4 External Clock Input

T5CK        PPS     PPS                I     ST        Timer5 External Clock Input

U1CTS       PPS     PPS                I     ST        UART1 Clear to Send

U1RTS       PPS     PPS                O     —         UART1 Ready to Send

U1RX        PPS     PPS                I     ST        UART1 Receive

U1TX        PPS     PPS                O     —         UART1 Transmit

U2CTS       PPS     PPS                I     ST        UART2 Clear to Send

U2RTS       PPS     PPS                O     —         UART2 Ready to Send

U2RX        PPS     PPS                I     ST        UART2 Receive

U2TX        PPS     PPS                O     —         UART2 Transmit

Legend:   CMOS = CMOS compatible input or output       Analog = Analog input        I = Input  O = Output

          ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer       P = Power

Note  1:  This pin is only available on devices without a USB module.

      2:  This pin is only available on devices with a USB module.

      3:  This pin is not available on 64-pin devices with a USB module.

      4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                          DS60001290E-page 18
          PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                            Description

            QFN/        100-pin        Type  Type

            TQFP        TQFP

U3CTS       PPS         PPS            I     ST        UART3 Clear to Send

U3RTS       PPS         PPS            O     —         UART3 Ready to Send

U3RX        PPS         PPS            I     ST        UART3 Receive

U3TX        PPS         PPS            O     —         UART3 Transmit

U4CTS       PPS         PPS            I     ST        UART4 Clear to Send

U4RTS       PPS         PPS            O     —         UART4 Ready to Send

U4RX        PPS         PPS            I     ST        UART4 Receive

U4TX        PPS         PPS            O     —         UART4 Transmit

U5CTS       —           PPS            I     ST        UART5 Clear to Send

U5RTS       —           PPS            O     —         UART5 Ready to Send

U5RX        —           PPS            I     ST        UART5 Receive

U5TX        —           PPS            O     —         UART5 Transmit

SCK1      35(1), 50(2)  55(1), 70(2)   I/O   ST        Synchronous Serial Clock Input/Output for SPI1

SDI1        PPS         PPS            I     —         SPI1 Data In

SDO1        PPS         PPS            O     ST        SPI1 Data Out

SS1         PPS         PPS            I/O   —         SPI1 Slave Synchronization for Frame Pulse I/O

SCK2        4           10             I/O   ST        Synchronous Serial Clock Input/Output for SPI2

SDI2        PPS         PPS            I     —         SPI2 Data In

SDO2        PPS         PPS            O     ST        SPI2 Data Out

SS2         PPS         PPS            I/O   —         SPI2 Slave Synchronization for Frame Pulse I/O

SCK3        29          39             I/O   ST        Synchronous Serial Clock Input/Output for SPI3

SDI3        PPS         PPS            I     —         SPI3 Data In

SDO3        PPS         PPS            O     ST        SPI3 Data Out

SS3         PPS         PPS            I/O   —         SPI3 Slave Synchronization for Frame Pulse I/O

SCK4        —           48             I/O   ST        Synchronous Serial Clock Input/Output for SPI4

SDI4        —           PPS            I     —         SPI4 Data In

SDO4        —           PPS            O     ST        SPI4 Data Out

SS4         —           PPS            I/O   —         SPI4 Slave Synchronization for Frame Pulse I/O

SCL1      37(1), 44(2)  57(1), 66(2)   I/O   ST        Synchronous Serial Clock Input/Output for I2C1

SDA1      36(1), 43(2)  56(1), 67(2)   I/O   ST        Synchronous Serial Data Input/Output for I2C1

SCL2        32          58             I/O   ST        Synchronous Serial Clock Input/Output for I2C2

SDA2        31          59             I/O   ST        Synchronous Serial Data Input/Output for I2C2

TMS         23          17             I     ST        JTAG Test Mode Select Pin

TCK         27          38             I     ST        JTAG Test Clock Input Pin

TDI         28          60             I     —         JTAG Test Clock Input Pin

TDO         24          61             O     —         JTAG Test Clock Output Pin

Legend:   CMOS = CMOS compatible input or output       Analog = Analog input       I = Input           O=  Output

          ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer      P = Power

Note  1:  This pin is only available on devices without a USB module.

      2:  This pin is only available on devices with a USB module.

      3:  This pin is not available on 64-pin devices with a USB module.

      4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                         DS60001290E-page 19
           PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                             Description

            QFN/    100-pin            Type  Type

            TQFP    TQFP

RTCC        42      68                 O     —          Real-Time Clock Alarm Output

CVREFOUT    23      34                 O     Analog     Comparator Voltage Reference (Output)

C1INA       11      20                 I     Analog

C1INB       12      21                 I     Analog     Comparator 1 Inputs

C1INC       5       11                 I     Analog

C1IND       4       10                 I     Analog

C2INA       13      22                 I     Analog

C2INB       14      23                 I     Analog     Comparator 2 Inputs

C2INC       8       14                 I     Analog

C2IND       6       12                 I     Analog

C3INA       58      87                 I     Analog

C3INB       55      84                 I     Analog     Comparator 3 Inputs

C3INC       54      83                 I     Analog

C3IND       51      78                 I     Analog

C1OUT       PPS     PPS                O     —          Comparator 1 Output

C2OUT       PPS     PPS                O     —          Comparator 2 Output

C3OUT       PPS     PPS                O     —          Comparator 3 Output

PMALL       30      44                 O     TTL/ST     Parallel Master Port Address Latch Enable Low Byte

PMALH       29      43                 O     TTL/ST     Parallel Master Port Address Latch Enable High Byte

PMA0        30      44                 O     TTL/ST     Parallel Master Port Address bit 0 Input (Buffered Slave

                                                        modes) and Output (Master modes)

PMA1        29      43                 O     TTL/ST     Parallel Master Port Address bit 0 Input (Buffered Slave

                                                        modes) and Output (Master modes)

Legend:    CMOS = CMOS compatible input or output       Analog = Analog input         I = Input  O = Output

           ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer        P = Power

Note   1:  This pin is only available on devices without a USB module.

       2:  This pin is only available on devices with a USB module.

       3:  This pin is not available on 64-pin devices with a USB module.

       4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                            DS60001290E-page 20
          PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                             Description

            QFN/    100-pin            Type  Type

            TQFP    TQFP

PMA2        8       14                 O     TTL/ST

PMA3        6       12                 O     TTL/ST

PMA4        5       11                 O     TTL/ST

PMA5        4       10                 O     TTL/ST

PMA6        16      29                 O     TTL/ST

PMA7        22      28                 O     TTL/ST

PMA8        32      50                 O     TTL/ST    Parallel Master Port data (Demultiplexed Master mode) or

PMA9        31      49                 O     TTL/ST    Address/Data (Multiplexed Master modes)

PMA10       28      42                 O     TTL/ST

PMA11       27      41                 O     TTL/ST

PMA12       24      35                 O     TTL/ST

PMA13       23      34                 O     TTL/ST

PMA14       45      71                 O     TTL/ST

PMA15       44      70                 O     TTL/ST

PMCS1       45      71                 O     TTL/ST

PMCS2       44      70                 O     TTL/ST

PMD0        60      93                 I/O   TTL/ST

PMD1        61      94                 I/O   TTL/ST

PMD2        62      98                 I/O   TTL/ST

PMD3        63      99                 I/O   TTL/ST

PMD4        64      100                I/O   TTL/ST

PMD5        1       3                  I/O   TTL/ST

PMD6        2       4                  I/O   TTL/ST    Parallel  Master   Port  data  (Demultiplexed  Master  mode)  or

PMD7        3       5                  I/O   TTL/ST    Address/Data (Multiplexed Master modes)

PMD8        —       90                 I/O   TTL/ST

PMD9        —       89                 I/O   TTL/ST

PMD10       —       88                 I/O   TTL/ST

PMD11       —       87                 I/O   TTL/ST

PMD12       —       79                 I/O   TTL/ST

PMD13       —       80                 I/O   TTL/ST

PMD14       —       83                 I/O   TTL/ST

PMD15       —       84                 I/O   TTL/ST

PMRD        53      82                 O     —         Parallel Master Port Read Strobe

PMWR        52      81                 O     —         Parallel Master Port Write Strobe

VBUS(2)     34      54                 I     Analog    USB Bus Power Monitor

Legend:   CMOS = CMOS compatible input or output       Analog = Analog input          I = Input       O = Output

          ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer         P = Power

Note  1:  This pin is only available on devices without a USB module.

      2:  This pin is only available on devices with a USB module.

      3:  This pin is not available on 64-pin devices with a USB module.

      4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                            DS60001290E-page 21
           PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                              Description

            QFN/    100-pin            Type  Type

            TQFP    TQFP

VUSB3V3(2)  35      55                 P     —           USB internal transceiver supply. If the USB module is not

                                                         used, this pin must be connected to VDD.

VBUSON(2)   11      20                 O     —           USB Host and OTG bus power control Output

D+(2)       37      57                 I/O   Analog      USB D+

D-(2)       36      56                 I/O   Analog      USB D-

USBID(2)    33      51                 I     ST          USB OTG ID Detect

PGED1       16      25                 I/O   ST          Data I/O pin for Programming/Debugging Communication

                                                         Channel 1

PGEC1       15      24                 I     ST          Clock Input pin for Programming/Debugging Communication

                                                         Channel 1

PGED2       18      27                 I/O   ST          Data I/O Pin for Programming/Debugging Communication

                                                         Channel 2

PGEC2       17      26                 I     ST          Clock Input Pin for Programming/Debugging Communication

                                                         Channel 2

PGED3       13      22                 I/O   ST          Data I/O Pin for Programming/Debugging Communication

                                                         Channel 3

PGEC3       14      23                 I     ST          Clock Input Pin for Programming/Debugging Communication

                                                         Channel 3

CTED1       —       17                 I     ST          CTMU External Edge Input 1

CTED2       —       38                 I     ST          CTMU External Edge Input 2

CTED3       18      27                 I     ST          CTMU External Edge Input 3

CTED4       22      33                 I     ST          CTMU External Edge Input 4

CTED5       29      43                 I     ST          CTMU External Edge Input 5

CTED6       30      44                 I     ST          CTMU External Edge Input 6

CTED7       —       9                  I     ST          CTMU External Edge Input 7

CTED8       —       92                 I     ST          CTMU External Edge Input 8

CTED9       —       60                 I     ST          CTMU External Edge Input 9

CTED10      21      32                 I     ST          CTMU External Edge Input 10

CTED11      23      34                 I     ST          CTMU External Edge Input 11

CTED12      15      24                 I     ST          CTMU External Edge Input 12

CTED13      14      23                 I     ST          CTMU External Edge Input 13

C1RX        PPS     PPS                I     ST          Enhanced CAN Receive

C1TX        PPS     PPS                O     ST          Enhanced CAN Transmit

Legend:     CMOS = CMOS compatible input or output       Analog = Analog input        I = Input     O = Output

            ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer       P = Power

Note   1:   This pin is only available on devices without a USB module.

       2:   This pin is only available on devices with a USB module.

       3:   This pin is not available on 64-pin devices with a USB module.

       4:   This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                              DS60001290E-page 22
           PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 1-1:  PINOUT I/O DESCRIPTIONS (CONTINUED)

            Pin Number

Pin Name    64-pin                     Pin   Buffer                              Description

            QFN/        100-pin        Type  Type

            TQFP        TQFP

MCLR        7           13             I     ST         Master Clear (Reset) input. This pin is an active-low Reset     to

                                                        the device.

AVDD        19          30             P     P          Positive supply for analog modules. This pin must be

                                                        connected at all times.

AVSS        20          31             P     P          Ground reference for analog modules

VDD        10, 26, 38,  2, 16, 37,     P     —          Positive supply for peripheral logic and I/O pins

            57          46, 62, 86

VCAP        56          85             P     —          Capacitor for Internal Voltage Regulator

VSS         9, 25, 41   15, 36, 45,    P     —          Ground reference for logic and I/O pins

                        65, 75

VREF+       16          29             P     Analog     Analog Voltage Reference (High) Input

VREF-       15          28             P     Analog     Analog Voltage Reference (Low) Input

Legend:    CMOS = CMOS compatible input or output       Analog = Analog input    I = Input                 O = Output

           ST = Schmitt Trigger input with CMOS levels  TTL = TTL input buffer   P = Power

Note   1:  This pin is only available on devices without a USB module.

       2:  This pin is only available on devices with a USB module.

       3:  This pin is not available on 64-pin devices with a USB module.

       4:  This pin is only available on 100-pin devices without a USB module.

 2014-2017 Microchip Technology Inc.                                                             DS60001290E-page 23
PIC32MX1XX/2XX/5XX                     64/100-PIN FAMILY

NOTES:

 2014-2017 Microchip Technology Inc.  DS60001290E-page 24
          PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

2.0       GUIDELINES FOR GETTING                                  2.2       Decoupling Capacitors

          STARTED WITH 32-BIT MCUS                                The  use  of  decoupling  capacitors  on  power       supply

            This data sheet summarizes the features               pins, such as VDD, VSS, AVDD and AVSS is required.

   Note:                                                          See Figure 2-1.

            of the PIC32MX1XX/2XX/5XX 64/100-pin                  Consider the following criteria when using decoupling

            family of devices. It is not intended to be a         capacitors:

            comprehensive            reference  source.      To

            complement the information in this data               •  Value and type of capacitor: A value of 0.1 µF

            sheet, refer to the related section of the               (100 nF), 10-20V is recommended. The capacitor

            “PIC32 Family Reference Manual”, which                   should be a low Equivalent Series Resistance

            is available from the Microchip web site                 (low-ESR) capacitor and have resonance

            (www.microchip.com/PIC32).                               frequency in the range of 20 MHz and higher. It is

                                                                     further recommended that ceramic capacitors be

2.1       Basic Connection Requirements                              used.

Getting   started  with    the  PIC32MX1XX/2XX/5XX           64/  •  Placement on the printed circuit board: The

100-pin   family   of     32-bit     Microcontrollers  (MCUs)        decoupling capacitors should be placed as close

requires  attention    to  a    minimal    set  of   device  pin     to the pins as possible. It is recommended that

connections before proceeding with development. The                  the capacitors be placed on the same side of the

following is a list of pin names, which must always be               board as the device. If space is constricted, the

connected:                                                           capacitor can be placed on another layer on the

•  All VDD and VSS pins (see 2.2 “Decoupling                         PCB using a via; however, ensure that the trace

   Capacitors”)                                                      length from the pin to the capacitor is within one-

                                                                     quarter inch (6 mm) in length.

•  All AVDD and AVSS pins, even if the ADC module is              •  Handling high frequency noise: If the board is

   not used (see 2.2 “Decoupling Capacitors”)                        experiencing high frequency noise, upward of

•  VCAP pin (see 2.3 “Capacitor on Internal Voltage                  tens of MHz, add a second ceramic-type capacitor

   Regulator (VCAP)”)                                                in parallel to the above described decoupling

•  MCLR pin (see 2.4 “Master Clear (MCLR) Pin”)                      capacitor. The value of the second capacitor can

•  PGECx/PGEDx pins, used for In-Circuit Serial                      be in the range of 0.01 µF to 0.001 µF. Place this

   Programming (ICSP™) and debugging purposes                        second capacitor next to the primary decoupling

   (see 2.5 “ICSP Pins”)                                             capacitor. In high-speed circuit designs, consider

•  OSC1 and OSC2 pins, when external oscillator                      implementing a decade pair of capacitances as

   source is used (see 2.7 “External Oscillator Pins”)               close to the power and ground pins as possible.

The following pins may be required:                                  For example, 0.1 µF in parallel with 0.001 µF.

                                                                  •  Maximizing performance: On the board layout

   VREF+/VREF-     pins,   used      when  external    voltage       from the power supply circuit, run the power and

   reference for the ADC module is implemented.                      return traces to the decoupling capacitors first,

   Note:    The    AVDD         and  AVSS      pins    must  be      and then to the device pins. This ensures that the

            connected,     regardless      of   ADC    use   and     decoupling capacitors are first in the power chain.

            the ADC voltage reference source.                        Equally important is to keep the trace length

                                                                     between the capacitor and the power pins to a

                                                                     minimum thereby reducing PCB track inductance.

 2014-2017 Microchip Technology Inc.                                                                DS60001290E-page 25
PIC32MX1XX/2XX/5XX                                                                                  64/100-PIN FAMILY

FIGURE 2-1:                                   RECOMMENDED                                           2.4             Master Clear (MCLR) Pin

                                              MINIMUM CONNECTION                                    The         MCLR       pin     provides           two   specific    device

VDD             Tantalum or                                                       0.1 µF            functions:

                ceramic 10 µF                                                     Ceramic           •  Device Reset
                ESR  3(3)
                                                                                                    •  Device programming and debugging
     10K
                                              VCAP                    VDD  VSS                      Pulling The MCLR pin low generates a device Reset.
          R1
                      MCLR                                                                          Figure 2-2       illustrates    a   typical       MCLR   circuit.   During

          1K                                                                                        device      programming         and    debugging,        the    resistance

       C                                                               VUSB3V3(1)                   and capacitance that can be added to the pin must

       0.1 µF                                                                                       be considered. Device programmers and debuggers

                                                     PIC32                      VDD                 drive       the  MCLR     pin.  Consequently,           specific    voltage

                      VSS                                                                           levels (VIH and VIL) and fast signal transitions must

                                                                                VSS     0.1 µF      not be adversely affected. Therefore, specific values

                      VDD                                                            Ceramic        of R and C will need to be adjusted based on the

    0.1 µF                    AVDD            AVSS                    VDD  VSS                      application and PCB requirements.

Ceramic                                                                                             For    example,        as      illustrated        in   Figure 2-2,       it    is

                Connect(2)                                    0.1 µF              0.1 µF            recommended that the capacitor C, be isolated from

                                                     Ceramic                      Ceramic           the  MCLR         pin  during       programming          and    debugging

                      L1(2)                                                                         operations.

                                                                                                    Place the components illustrated in Figure 2-2 within

    Note    1:  If the USB module is not used, this pin must be                                     one-quarter inch (6 mm) from the MCLR pin.

                connected to VDD.

            2:  As an option, instead of a hard-wired connection, an                                FIGURE 2-2:                     EXAMPLE OF MCLR PIN

                inductor (L1) can be substituted between VDD and                                                                    CONNECTIONS

                AVDD to improve ADC noise rejection. The inductor

                impedance should be less than 3 and the inductor                                                     VDD

                capacity greater than 10 mA.

                                                                                                                          10k

                Where:                                                                                                R             R1(1)

                           -F----C---N----V-                                                                                                          MCLR

                   f                                          (i.e., ADC conversion rate/2)                0.1 µF(2)       C       1 k

                              2                                                                                                                            PIC32

                   f       -----------1------------                                                             1

                           2                LC                                                               5                                PGECx(3)

                                                                                                         ICSP™  4                                PGEDx(3)

                L            ---2-------f1------C-----  2                                                 2    VDD

                                                                                                               3    VSS

                                                                                                                6    NC

            2:  Aluminum            or        electrolytic            capacitors  should   not  be

                used. ESR  3 from -40ºC to 125ºC @ SYSCLK                                            Note     1:   470 R1  1      will  limit  any  current  flowing  into

                frequency (i.e., MIPS).                                                                              MCLR from the external capacitor C, in the event of

2.2.1           BULK CAPACITORS                                                                                      MCLR pin breakdown, due to Electrostatic Discharge

                                                                                                                     (ESD) or Electrical Overstress (EOS). Ensure that the

The use of a bulk capacitor is recommended to improve                                                                MCLR pin VIH and VIL specifications are met without

                                                                                                                     interfering with the Debug/Programmer tools.

power supply stability. Typical values range from 4.7 µF                                                        2:   The capacitor can be sized to prevent unintentional

to 47 µF. This capacitor should be located as close to                                                               Resets from brief glitches or to extend the device

the device as possible.                                                                                              Reset period during POR.

                                                                                                                3:   No  pull-ups   or  bypass   capacitors  are    allowed  on

2.3         Capacitor on Internal Voltage                                                                            active debug/program PGECx/PGEDx pins.

            Regulator (VCAP)

2.3.1           INTERNAL REGULATOR MODE

A low-ESR (3 ohm) capacitor is required on the VCAP

pin, which is used to stabilize the internal voltage regu-

lator output. The VCAP pin must not be connected to

VDD, and must         have a CEFC capacitor, with at least a

6V   rating,    connected                     to              ground.      The    type    can   be

ceramic or tantalum. Refer to Section 31.0 “40 MHz

Electrical Characteristics” for additional information

on CEFC specifications.

DS60001290E-page 26                                                                                                              2014-2017 Microchip Technology Inc.
         PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

2.5         ICSP Pins                                                   2.7  External Oscillator Pins

The PGECx and PGEDx pins are used for In-Circuit                        Many MCUs have options for at least two oscillators: a

Serial Programming™ (ICSP™) and debugging pur-                          high-frequency primary oscillator and a low-frequency

poses.  It  is   recommended        to  keep      the   trace  length   secondary oscillator (refer to Section 8.0 “Oscillator

between the ICSP connector and the ICSP pins on the                     Configuration” for details).

device as short as possible. If the ICSP connector is                   The oscillator circuit should be placed on the same side

expected to experience an ESD event, a series resistor                  of the board as the device. Also, place the oscillator cir-

is recommended, with the value in the range of a few                    cuit close to the respective oscillator pins, not exceed-

tens of Ohms, not to exceed 100 Ohms.                                   ing one-half inch (12 mm) distance between them. The

Pull-up resistors, series diodes and capacitors on the                  load capacitors should be placed next to the oscillator,

PGECx and PGEDx pins are not recommended as they                        on the same side of the board. Use a grounded copper

will interfere with the programmer/debugger communi-                    pour around the oscillator circuit to isolate them from

cations to the device. If such discrete components are                  surrounding circuits. The grounded copper pour should

an application requirement, they should be removed                      be routed directly to the MCU ground. Do not run any

from the circuit during programming and debugging.                      signal traces or power traces inside the ground pour.

Alternatively, refer to the AC/DC characteristics and                   Also, if using a two-sided board, avoid any traces on

timing  requirements         information      in  the   respective      the other side of the board where the crystal is placed.

device Flash programming specification for information                  A suggested layout is illustrated in Figure 2-3.

on capacitive loading limits and pin input voltage high

(VIH) and input voltage low (VIL) requirements.

Ensure that the “Communication Channel Select” (i.e.,                   FIGURE 2-3:  SUGGESTED OSCILLATOR

PGECx/PGEDx           pins)  programmed           into  the    device                CIRCUIT PLACEMENT

matches     the  physical    connections       for     the  ICSP  to
MPLAB® ICD 3 or MPLAB REAL ICE™.

For more information on MPLAB ICD 3 and MPLAB

REAL ICE connection requirements, refer to the follow-

ing documents that are available on the Microchip web                                                  Oscillator

site.                                                                                                  Secondary

•  “Using MPLAB® ICD 3” (poster) DS50001765                                                            Guard Trace

•  “MPLAB® ICD 3 Design Advisory” DS50001764

•  “MPLAB® REAL ICE™ In-Circuit Debugger                                                               Guard Ring

   User’s Guide” DS50001616

•  “Using MPLAB® REAL ICE™ Emulator” (poster)                                                         Main Oscillator

   DS50001749

2.6         JTAG

The TMS, TDO, TDI and TCK pins are used for testing

and    debugging      according     to  the    Joint    Test Action

Group (JTAG) standard. It is recommended to keep the

trace   length   between     the  JTAG       connector       and  the

JTAG pins on the device as short as possible. If the

JTAG connector is expected to experience an ESD

event, a series resistor is recommended, with the value

in the range of a few tens of Ohms, not to exceed 100

Ohms.

Pull-up resistors, series diodes and capacitors on the

TMS, TDO, TDI and TCK pins are not recommended

as they will interfere with the programmer or debugger

communications        to     the  device.     If  such       discrete

components       are  an     application      requirement,        they

should      be   removed          from    the     circuit      during

programming and debugging. Alternatively, refer to the

AC/DC       characteristics       and   timing         requirements

information      in   the         respective      device       Flash

programming          specification      for       information     on

capacitive loading limits and pin input voltage high (VIH)

and input voltage low (VIL) requirements

 2014-2017 Microchip Technology Inc.                                                                 DS60001290E-page 27
PIC32MX1XX/2XX/5XX                                                              64/100-PIN FAMILY

2.7.1          CRYSTAL OSCILLATOR DESIGN                                        FIGURE 2-4:      PRIMARY CRYSTAL

               CONSIDERATION                                                                     OSCILLATOR CIRCUIT

The  following      examples         are      used  to    calculate        the                   RECOMMENDATIONS

Primary Oscillator loading capacitor values:                                                     Circuit A

•  CIN = PIC32_OSC2_Pin Capacitance = ~4-5 pF                                                    Typical XT

•  COUT = PIC32_OSC1_Pin Capacitance = ~4-5 pF                                                   (4-10 MHz)

•  C1 and C2 = XTAL manufacturing recommended

   loading capacitance                                                                       C1                    C2

•  Estimated PCB stray capacitance, (i.e.,12 mm                                                        1M

   length) = 2.5 pF

EXAMPLE 2-1: CRYSTAL LOAD CAPACITOR                                                              OSC2        OSC1

                      CALCULATION

   Crystal manufacturer recommended: C1 = C2 = 15 pF                                             Circuit B

   Therefore:                                                                                    Typical HS

   CLOAD       = {( [CIN + C1] * [COUT + C2] ) / [CIN + C1 + C2 + COUT] }                        (10-25 MHz)

               + estimated oscillator PCB stray capacitance

               = {( [5 + 15][5 + 15] ) / [5 + 15 + 15 + 5] } + 2.5 pF                        C1                    C2

               = {( [20][20]) / [40] } + 2.5

               = 10 + 2.5 = 12.5 pF

   Rounded to the nearest standard value or 13 pF in this example for

   Primary Oscillator crystals “C1” and “C2”.                                                    OSC2        OSC1

The following tips are used to increase oscillator gain,                                         Circuit C

(i.e., to increase peak-to-peak oscillator signal):                                              Typical XT/HS

•  Select a crystal with a lower “minimum” power drive                                           (4-25 MHz)

   rating

•  Select an crystal oscillator with a lower XTAL

   manufacturing “ESR” rating.                                                               C1  Rs                C2

•  Add a parallel resistor across the crystal. The smaller

   the resistor value the greater the gain. It is recom-                                               1M

   mended to stay in the range of 600k to 1M

•  C1 and C2 values also affect the gain of the oscillator.                                      OSC2        OSC1

   The lower the values, the higher the gain.

•  C2/C1 ratio also affects gain. To increase the gain,

   make C1 slightly smaller than C2, which will also help                                        Circuit D

   start-up performance.                                                                         Not Recommended

   Note:       Do not add excessive gain such that the

               oscillator signal is clipped, flat on top of

               the sine wave. If so, you need to reduce

               the gain or add a series resistor, RS, as

               shown in circuit “C” in Figure 2-4. Failure                                             1M

               to do so will stress and age the crystal,                                         Rs

               which can result in an early failure. Adjust

               the gain to trim the max peak-to-peak to

               ~VDD-0.6V. When measuring the oscilla-                                            OSC2        OSC1

               tor  signal  you      must      use     a  FET          scope

               probe  or    a  probe          with    1.5   pF        or  the                   Circuit E

               scope probe itself will unduly change the                                         Not Recommended

               gain and peak-to-peak levels.

2.7.1.1        Additional Microchip References

•  AN588 “PICmicro® Microcontroller Oscillator                                                             Rs

   Design Guide”

•  AN826 “Crystal Oscillator Basics and Crystal                                                        1M

   Selection for rfPIC™ and PICmicro® Devices”

•  AN849 “Basic PICmicro® Oscillator Design”                                                     OSC2        OSC1

DS60001290E-page 28                                                                               2014-2017 Microchip  Technology  Inc.
        PIC32MX1XX/2XX/5XX                                      64/100-PIN FAMILY

2.8     Unused I/Os

Unused  I/O  pins      should  not  be  allowed  to  float  as

inputs. They can be configured as outputs and driven

to a logic-low state.

Alternatively, inputs can be reserved by connecting the

pin to VSS through a 1k to 10k resistor and configuring

the pin as an input.

 2014-2017 Microchip Technology Inc.                           DS60001290E-page 29
PIC32MX1XX/2XX/5XX 64/100-PIN                                                           FAMILY

2.9    Considerations When Interfacing

       to Remotely Powered Circuits

2.9.1  NON-5V TOLERANT INPUT PINS

A quick review of the absolute maximum rating section

in 31.0 “40 MHz Electrical Characteristics” will indi-

cate that the voltage on any non-5v tolerant pin may not

exceed AVDD/VDD + 0.3V. Figure 2-5 shows an exam-

ple of a remote circuit using an independent power

source, which is powered while connected to a PIC32

non-5V tolerant circuit that is not powered.

FIGURE 2-5:             PIC32 NON-5V TOLERANT CIRCUIT EXAMPLE

       Note:   When VDD power is OFF.                     PIC32                         On/Off

                                                                            VDD

                                                          Non-5V Tolerant

                                                          Pin Architecture

                                                            ANSEL

                                                            I/O IN

       Remote           AN2/RB0                                                                 PIC32

     0.3V dVIH d 3.6V                                      I/O OUT                             POWER

       Remote                                                                    LOGIC          SUPPLY

              GND                                           TRIS

                                                                                 CPU

                                              Current Flow

                                                                                 VSS

DS60001290E-page 30                                                               2014-2017 Microchip Technology  Inc.
          PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

Without     proper  signal     isolation,    on   non-5V     tolerant      TABLE 2-1:           EXAMPLES OF DIGITAL/

pins, the remote signal can power the PIC32 device                                              ANALOG ISOLATORS WITH

through     the     high  side      ESD       protection      diodes.                           OPTIONAL LEVEL

Besides     violating     the   absolute         maximum      rating                            TRANSLATION

specification     when    VDD       of  the   PIC32     device         is                                                                                                          Analog/Digital Switch

restored    and   ramping      up   or   ramping   down,      it  can                                                      Inductive Coupling  Capacitive Coupling

also  negatively    affect     the  internal      Power-on    Reset                                                                                                 Opto Coupling

(POR)    and     Brown-out     Reset     (BOR)     circuits,  which

can   lead  to   improper     initialization  of   internal   PIC32                       Example Digital/Analog

logic circuits. In these cases, it is recommended to                                     Signal Isolation Circuits

implement       digital   or   analog      signal      isolation   as

depicted    in    Figure 2-6,       as   appropriate.     This         is

indicative of all industry microcontrollers and not just

Microchip products.                                                        ADuM7241 / 40 ARZ (1 Mbps)                      X                   —                    —              —

                                                                           ADuM7241 / 40 CRZ (25 Mbps)                     X                   —                    —              —

                                                                           ISO721                                          —                   X                    —              —

                                                                           LTV-829S (2 Channel)                            —                   —                    X              —

                                                                           LTV-849S (4 Channel)                            —                   —                    X              —

                                                                           FSA266 / NC7WB66                                —                   —                    —              X

FIGURE 2-6:                   DIGITAL/ANALOG SIGNAL                        ISOLATION CIRCUITS

                                                                                          Conn  Digital Isolator           PIC32 VDD

                                Digital Isolator        PIC32 VDD          External VDD

      External VDD                                                         REMOTE_IN                                 IN1

                                                   IN                                                                         PIC32

         REMOTE_IN                                        PIC32            REMOTE_OUT                                OUT1

                                                              VSS

                                                                                                                                               VSS

                                                        PIC32 VDD                                                                              PIC32 VDD

                           Opto Digital                                                   Analog / Digital Isolator

                              ISOLATOR                                                    Conn  ENB

                                                   IN1                     Analog_OUT2                            Analog_IN2

External VDD                                              PIC32            External_VDD1

                                                                                                ENB                                               PIC32

                                                                           Analog_IN1                             S

       REMOTE_IN                                                                                Analog Switch

                                                                  VSS

                                                                                                                                                                    VSS

 2014-2017 Microchip Technology Inc.                                                                                DS60001290E-page 31
PIC32MX1XX/2XX/5XX 64/100-PIN                                                                          FAMILY

2.9.2        5V TOLERANT INPUT PINS

The internal high side diode on 5V tolerant pins are

bussed to an internal floating node, rather than being

connected to VDD, as shown in Figure 2-7. Voltages

on  these    pins,   if  VDD   <   2.3V,     should    not      exceed

roughly  3.2V  relative    to     VSS    of  the  PIC32         device.

Voltage  of  3.6V    or    higher  will     violate    the  absolute

maximum      specification,     and    will  stress     the     oxide

layer    separating  the   high    side   floating     node,    which

impacts    device    reliability.  If    a   remotely       powered

“digital-only” signal can be guaranteed to always be

 3.2V relative to Vss on the PIC32 device side, a

5V tolerant pin could be used without the need for a

digital  isolator.   This  is     assuming       there      is  not  a

ground   loop  issue,    logic     ground    of   the  two      circuits

not at the same absolute level, and a remote logic

low input is not less than VSS - 0.3V.

FIGURE 2-7:                PIC32 5V TOLERANT PIN ARCHITECTURE EXAMPLE

                                                                          PIC32                        On/Off

                                                                                           VDD

                                                                          5V Tolerant Pin

                                                                          Architecture

                           Floating Bus

                          Oxide BV = 3.6V                       OXIDE

                           if VDD < 2.3V                                  ANSEL

                                                                          I/O IN

             Remote

           VIH = 2.5V              RG10                                                                        PIC32

                                                                          I/O OUT                              POWER

           Remote                                                                               LOGIC          SUPPLY

             GND                                                          TRIS

                                                                                                CPU

                                                                                                VSS

DS60001290E-page 32                                                                                     2014-2017 Microchip Technology  Inc.
      PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

2.10  Typical Application Connection

      Examples

Examples of typical application connections are shown

in Figure 2-8, Figure 2-9, and Figure 2-10.

FIGURE 2-8:        CAPACITIVE TOUCH SENSING                    WITH GRAPHICS APPLICATION

             PIC32MX1XX/2XX/5XX

                   Current Source

                                                                         To  AN6      To  AN7          To AN8      To  AN9        To  AN11

                   CTMU                                To AN0

                                             AN0                     R1           R1               R1          R1             R1

                                                                     C1           C2           C3              C4             C5

      ADC                                    AN1       To AN1

                                                                     R2           R2               R2          R2             R2

             Read the Touch Sensors                                  C1           C2           C3              C4             C5

      Microchip

      mTouch ®                               AN9

      Library

             Process Samples                           To AN5

                                             AN11                    R3           R3           R3              R3             R3

      User                                                           C1           C2           C3              C4             C5

      Application

             Display Data

                                             PMD<7:0>                        LCD Controller

      Microchip               Parallel                               Frame                Display                       LCD

      Graphics                Master         PMWR                    Buffer           Controller                       Panel

      Library                      Port

FIGURE 2-9:        AUDIO      PLAYBACK APPLICATION

             USB                                           PMD<7:0>

             Host                      USB         PMP                       Display

                                                           PMWR

                                       PIC32MX1XX/2XX/5XX

                                                   I2S         3                                               Stereo Headphones

                                                                             Audio

                                                           REFCLKO           Codec

                                                   SPI         3                                               Speaker

                                                                  3

                                                                             MMC SD

                                                               SDI

 2014-2017 Microchip Technology Inc.                                                                          DS60001290E-page 33
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

FIGURE 2-10:         LOW-COST CONTROLLERLESS (LCC) GRAPHICS APPLICATION WITH

                     PROJECTED CAPACITIVE TOUCH

                     PIC32MX1XX/2XX/5XX

                     CTMU               ADC  ANx

                     Microchip mTouch®

                     GFX Libraries                      LCD Display

                     DMA                PMP             Projected Capacitive

                                                        Touch Overlay

                                                  SRAM  External Frame Buffer

DS60001290E-page 34                                      2014-2017 Microchip Technology  Inc.
                     PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

3.0        CPU                                                      •  MIPS16e® Code Compression:

                                                                       -   16-bit encoding of 32-bit instructions to

   Note:     This data sheet summarizes the features                       improve code density

             of the PIC32MX1XX/2XX/5XX 64/100-pin                      -   Special PC-relative instructions for efficient

             family of devices. It is not intended to be a                 loading of addresses and constants

             comprehensive          reference  source.      To         -   SAVE and RESTORE macro instructions for

             complement the information in this data                       setting up and tearing down stack frames

             sheet,     refer  to    Section       2.  “CPU”               within subroutines

             (DS60001113)      in    the      “PIC32   Family          -   Improved support for handling 8 and 16-bit

             Reference     Manual”,    which   is      available           data types

             from       the         Microchip          web site     •  Simple Fixed Mapping Translation (FMT)

             (www.microchip.com/PIC32).            Resources           Mechanism:
             for the MIPS32® M4K® Processor Core
                                                                    •  Simple Dual Bus Interface:
             are available at http://www.imgtec.com.
                                                                       -   Independent 32-bit address and data buses

The the MIPS32® M4K® Processor Core is the heart of                    -   Transactions can be aborted to improve

the PIC32MX1XX/2XX/5XX 64/100-pin device proces-                           interrupt latency

sor.  The    CPU    fetches    instructions,   decodes  each        •  Autonomous Multiply/Divide Unit (MDU):

instruction, fetches source operands, executes each                    -   Maximum issue rate of one 32x16 multiply

instruction  and     writes    the   results   of      instruction         per clock

execution to the proper destinations.                                  -   Maximum issue rate of one 32x32 multiply

                                                                           every other clock

3.1        Features                                                    -   Early-in iterative divide. Minimum 11 and

                                                                           maximum 33 clock latency (dividend (rs) sign

•  5-stage pipeline                                                        extension-dependent)

•  32-bit address and data paths                                    •  Power Control:

•  MIPS32® Enhanced Architecture (Release 2):                          -   Minimum frequency: 0 MHz

   -  Multiply-accumulate and multiply-subtract                        -   Low-Power mode (triggered by WAIT instruction)

      instructions                                                     -   Extensive use of local gated clocks

   -  Targeted multiply instruction                                 •  EJTAG Debug:

   -  Zero/One detect instructions                                     -   Support for single stepping

   -  WAIT instruction                                                 -   Virtual instruction and data address/value

   -  Conditional move instructions (MOVN, MOVZ)                       -   Breakpoints

   -  Vectored interrupts

   -  Programmable exception vector base

   -  Atomic interrupt enable/disable

   -  Bit field manipulation instructions

FIGURE 3-1:                MIPS32® M4K® PROCESSOR CORE BLOCK DIAGRAM

             CPU                                                    EJTAG

                               MDU

                                                                          TAP           Off-chip Debug Interface

                             Execution Core            FMT          Bus Interface  Dual Bus Interface   Bus Matrix

                             (RF/ALU/Shift)

                               System                               Power

                               Co-processor                         Management

 2014-2017 Microchip Technology Inc.                                                                   DS60001290E-page 35
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

3.2         Architecture Overview                                 3.2.2        MULTIPLY/DIVIDE UNIT (MDU)

The MIPS32® M4K® processor core contains several                  The MIPS32® M4K® processor core includes a Multi-

logic blocks working together in parallel, providing an           ply/Divide Unit (MDU) that contains a separate pipeline

efficient   high-performance     computing    engine.    The      for multiply and divide operations. This pipeline oper-

following blocks are included with the core:                      ates in parallel with the Integer Unit (IU) pipeline and

•  Execution Unit                                                 does not stall when the IU pipeline stalls. This allows

•  Multiply/Divide Unit (MDU)                                     MDU operations to be partially masked by system stalls

•  System Control Coprocessor (CP0)                               and/or other integer unit instructions.

•  Fixed Mapping Translation (FMT)                                The high-performance MDU consists of a 32x16 booth

•  Dual Internal Bus interfaces                                   recoded     multiplier,  result/accumulation         registers      (HI

•  Power Management                                               and LO), a divide state machine, and the necessary

•  MIPS16e® Support                                               multiplexers and control logic. The first number shown

•  Enhanced JTAG (EJTAG) Controller                               (‘32’ of 32x16) represents the rs operand. The second

                                                                  number (‘16’ of 32x16) represents the rt operand. The

3.2.1        EXECUTION UNIT                                       PIC32 core only checks the value of the latter (rt) oper-

The     MIPS32®     M4K®  processor     core  execution  unit     and to determine how many times the operation must

implements a load/store architecture with single-cycle            pass   through   the     multiplier.  The    16x16       and    32x16

ALU operations (logical, shift, add, subtract) and an             operations pass through the multiplier once. A 32x32

autonomous     multiply/divide   unit.  The   core  contains      operation passes through the multiplier twice.

thirty-two  32-bit  General   Purpose   Registers     (GPRs)      The MDU supports execution of one 16x16 or 32x16

used for integer operations and address calculation.              multiply    operation    every   clock  cycle;  32x32         multiply

The execution unit includes:                                      operations   can  be     issued       every  other   clock      cycle.

                                                                  Appropriate      interlocks  are  implemented        to      stall  the

•  32-bit adder used for calculating the data address             issuance of back-to-back 32x32 multiply operations.

•  Address unit for calculating the next instruction              The multiply operand size is automatically determined

   address                                                        by logic built into the MDU.

•  Logic for branch determination and branch target               Divide operations are implemented with a simple 1 bit

   address calculation                                            per   clock  iterative   algorithm.     An   early-in       detection

•  Load aligner                                                   checks the sign extension of the dividend (rs) operand.

•  Bypass multiplexers used to avoid stalls when                  If rs is 8 bits wide, 23 iterations are skipped. For a 16-bit

   executing instruction streams where data                       wide rs, 15 iterations are skipped and for a 24-bit wide

   producing instructions are followed closely by                 rs, 7 iterations are skipped. Any attempt to issue a sub-

   consumers of their results                                     sequent     MDU  instruction     while  a    divide  is  still  active

•  Leading Zero/One detect unit for implementing                  causes an IU pipeline stall until the divide operation is

   the CLZ and CLO instructions                                   completed.

•  Arithmetic Logic Unit (ALU) for performing bitwise             Table 3-1 lists the repeat rate (peak issue rate of cycles

   logical operations                                             until the operation can be reissued) and latency (num-

•  Shifter and store aligner                                      ber of cycles until a result is available) for the PIC32

                                                                  core multiply and divide instructions. The approximate

                                                                  latency and repeat rates are listed in terms of pipeline

                                                                  clocks.

TABLE 3-1:          MIPS32® M4K® PROCESSOR CORE HIGH-PERFORMANCE INTEGER                                       MULTIPLY/

                    DIVIDE UNIT LATENCIES AND REPEAT RATES

               Op code                        Operand Size (mul rt) (div rs)               Latency                Repeat Rate

   MULT/MULTU,      MADD/MADDU,                          16 bits                               1                           1

   MSUB/MSUBU                                            32 bits                               2                           2

   MUL                                                   16 bits                               2                           1

                                                         32 bits                               3                           2

   DIV/DIVU                                              8 bits                                12                          11

                                                         16 bits                               19                          18

                                                         24 bits                               26                          25

                                                         32 bits                               33                          32

DS60001290E-page 36                                                                         2014-2017 Microchip Technology Inc.
                       PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

The  MIPS      architecture       defines  that   the  result   of  a       3.2.3      SYSTEM CONTROL 

multiply or divide operation be placed in the HI and LO                                COPROCESSOR (CP0)

registers. Using the Move-From-HI (MFHI) and Move-                          In the MIPS architecture, CP0 is responsible for the

From-LO       (MFLO)   instructions,       these  values  can       be      virtual-to-physical  address     translation,  the  exception

transferred to the General Purpose Register file.                           control system, the processor’s diagnostics capability,

In  addition       to  the   HI/LO  targeted      operations,   the         the operating modes (Kernel, User and Debug) and
MIPS32® architecture also defines a multiply instruction,
                                                                            whether interrupts are enabled or disabled. Configura-
MUL, which places the least significant results in the pri-
                                                                            tion  information,   such  as    presence      of  options  like
mary register file instead of the HI/LO register pair. By                   MIPS16e®,
                                                                                       is  also  available   by  accessing      the     CP0
avoiding      the  explicit         instruction   required     when
                             MFLO                                           registers, listed in Table 3-2.

using the LO register, and by supporting multiple desti-

nation    registers,   the   throughput    of     multiply-intensive

operations is increased.

Two     other      instructions,    Multiply-Add      (MADD)    and

Multiply-Subtract      (MSUB),      are    used   to   perform  the

multiply-accumulate and multiply-subtract operations.

The MADD instruction multiplies two numbers and then

adds the product to the current contents of the HI and

LO registers. Similarly, the MSUB instruction multiplies

two operands and then subtracts the product from the

HI and LO registers. The MADD and MSUB operations

are commonly used in DSP algorithms.

TABLE 3-2:             COPROCESSOR 0 REGISTERS

Register               Register                                                    Function

Number                    Name

     0-6       Reserved                    Reserved in the PIC32MX1XX/2XX/5XX 64/100-pin family core.

     7         HWREna                      Enables access via the RDHWR instruction to selected hardware registers.

     8         BadVAddr(1)                 Reports the address for the most recent address-related exception.

     9         Count(1)                    Processor cycle count.

     10        Reserved                    Reserved in the PIC32MX1XX/2XX/5XX 64/100-pin family core.

     11        Compare(1)                  Timer interrupt control.

     12        Status(1)                   Processor status and control.

     12        IntCtl(1)                   Interrupt system status and control.

     13        Cause(1)                    Cause of last general exception.

     14        EPC(1)                      Program counter at last exception.

     15        PRId                        Processor identification and revision.

     15        EBASE                       Exception vector base register.

     16        Config                      Configuration register.

     16        Config1                     Configuration register 1.

     16        Config2                     Configuration register 2.

     16        Config3                     Configuration register 3.

    17-22      Reserved                    Reserved in the PIC32MX1XX/2XX/5XX 64/100-pin family core.

     23        Debug(2)                    Debug control and exception status.

     24        DEPC(2)                     Program counter at last debug exception.

    25-29      Reserved                    Reserved in the PIC32MX1XX/2XX/5XX 64/100-pin family core.

     30        ErrorEPC(1)                 Program counter at last error.

     31        DESAVE(2)                   Debug handler scratchpad register.

Note      1:   Registers used       in exception processing.

          2:   Registers used       during debug.

 2014-2017 Microchip Technology Inc.                                                                            DS60001290E-page 37
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

Coprocessor 0 also contains the logic for identifying

and managing exceptions. Exceptions can be caused

by a variety of sources, including alignment errors in

data, external events or program errors. Table 3-3 lists

the exception types in order of priority.

TABLE 3-3:           MIPS32® M4K® PROCESSOR CORE EXCEPTION TYPES

    Exception                                                 Description

Reset            Assertion MCLR or a Power-on Reset (POR).

DSS              EJTAG debug single step.

DINT             EJTAG debug interrupt. Caused by the assertion of the external EJ_DINT input or by setting the

                 EjtagBrk bit in the ECR register.

NMI              Assertion of NMI signal.

Interrupt        Assertion of unmasked hardware or software interrupt signal.

DIB              EJTAG debug hardware instruction break matched.

AdEL             Fetch address alignment error. Fetch reference to protected address.

IBE              Instruction fetch bus error.

DBp              EJTAG breakpoint (execution of SDBBP instruction).

Sys              Execution of SYSCALL instruction.

Bp               Execution of BREAK instruction.

RI               Execution of a reserved instruction.

CpU              Execution of a coprocessor instruction for a coprocessor that is not enabled.

CEU              Execution of a CorExtend        instruction when CorExtend is not enabled.

Ov               Execution of an arithmetic instruction that overflowed.

Tr               Execution of a trap (when trap condition is true).

DDBL/DDBS        EJTAG Data Address Break (address only) or EJTAG data value break on store (address + value).

AdEL             Load address alignment error. Load reference to protected address.

AdES             Store address alignment error. Store to protected address.

DBE              Load or store bus error.

DDBL             EJTAG data hardware breakpoint matched in load data compare.

3.3        Power Management                                          3.4       EJTAG Debug Support

The MIPS® M4K® processor core offers a number of                     The    MIPS®  M4K®      processor      core  provides   for   an

power    management       features,  including   low-power           Enhanced JTAG (EJTAG) interface for use in the soft-

design,  active  power    management       and  power-down           ware debug of application and kernel code. In addition

modes of operation. The core is a static design that                 to standard User mode and Kernel modes of operation,
                                                                     the M4K® core provides a Debug mode that is entered
supports slowing or Halting the clocks, which reduces

system power consumption during Idle periods.                        after  a  debug      exception  (derived     from  a  hardware

3.3.1      INSTRUCTION-CONTROLLED                                    breakpoint, single-step exception, etc.) is taken and

                                                                     continues     until  a  Debug   Exception    Return    (DERET)

           POWER MANAGEMENT                                          instruction is executed. During this time, the processor

The  mechanism       for  invoking   Power-Down  mode     is         executes the debug exception handler routine.

through execution of the WAIT instruction. For more                  The EJTAG interface operates through the Test Access

information on power management, see Section 27.0                    Port (TAP), a serial communication port used for trans-

“Power-Saving Features”.                                             ferring test data in and out of the core. In addition to the

3.3.2      LOCAL CLOCK GATING                                        standard      JTAG      instructions,  special     instructions

                                                                     defined   in  the       EJTAG   specification   define  which

The majority of the power consumed by the PIC32MX-                   registers are selected and how they are used.

1XX/2XX/5XX 64/100-pin family core is in the clock

tree and clocking registers. The PIC32MX family uses

extensive  use   of  local  gated-clocks   to   reduce  this

dynamic power consumption.

DS60001290E-page 38                                                                           2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

4.0       MEMORY ORGANIZATION                              4.1   Memory Layout

   Note:   This data sheet summarizes the features         PIC32MX1XX/2XX/5XX             64/100-pin    microcontrollers

           of the PIC32MX1XX/2XX/5XX 64/100-pin            implement two address schemes: virtual and physical.

           family of devices. It is not intended to be a   All  hardware      resources,  such    as  program     memory,

           comprehensive     reference        source.For   data  memory       and   peripherals,  are   located   at  their

           detailed information, refer to Section 3.       respective physical addresses. Virtual addresses are

           “Memory     Organization”     (DS60001115)      exclusively   used  by    the  CPU     to  fetch  and  execute

           in the “PIC32 Family Reference Manual”,         instructions  as   well   as   access  peripherals.    Physical

           which   is  available   from  the    Microchip  addresses are used by bus master peripherals, such as

           web site (www.microchip.com/PIC32).             DMA   and     the  Flash  controller,  that  access    memory

                                                           independently of the CPU.

PIC32MX1XX/2XX/5XX           64/100-pin  microcontrollers  The memory maps for the PIC32MX1XX/2XX/5XX 64/

provide 4 GB of unified virtual memory address space.      100-pin devices are illustrated in Figure 4-1 through

All memory regions, including program, data memory,        Figure 4-4.

SFRs  and  Configuration     registers,  reside  in  this

address space at their respective unique addresses.

The program and data memories can be optionally par-

titioned into user and kernel memories. In addition, the

data  memory     can   be    made  executable,   allowing

PIC32MX1XX/2XX/5XX 64/100-pin devices to execute

from data memory.

The key features include:

•  32-bit native data width

•  Separate User (KUSEG) and Kernel (KSEG0/

   KSEG1) mode address space

•  Flexible program Flash memory partitioning

•  Flexible data RAM partitioning for data and

   program space

•  Separate boot Flash memory for protected code

•  Robust bus exception handling to intercept 

   runaway code

•  Simple memory mapping with Fixed Mapping

   Translation (FMT) unit

 2014-2017 Microchip Technology Inc.                                                             DS60001290E-page 39
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

FIGURE  4-1:  MEMORY      MAP FOR DEVICES                 WITH  64  KB  OF PROGRAM MEMORY + 8                      KB  RAM

                          MemVoirrytuMalap(1)                           MemPhoyrysiMcaalp(1)

              0xFFFFFFFF  Reserved                                                            0xFFFFFFFF

              0xBFC00C00

              0xBFC00BFF  Device

                          Configuration

              0xBFC00BF0  Registers

              0xBFC00BEF

                          Boot Flash

              0xBFC00000

              0xBF900000  Reserved

              0xBF8FFFFF

                          SFRs                 KSEG1                    Reserved

              0xBF800000

              0xBD010000  Reserved

              0xBD00FFFF

                          Program Flash(2)

              0xBD000000

              0xA0002000  Reserved

              0xA0001FFF

                          RAM(2)

              0xA0000000                                                                      0x1FC00C00

                          Reserved                                      Device                0x1FC00BFF

              0x9FC00C00                                                Configuration

              0x9FC00BFF  Device                                        Registers             0x1FC00BF0

                          Configuration                                                       0x1FC00BEF

              0x9FC00BF0  Registers                                     Boot Flash

              0x9FC00BEF                                                                      0x1FC00000

                          Boot Flash                                    Reserved

              0x9FC00000                                                                      0x1F900000

                                                                                              0x1F8FFFFF

                          Reserved             KSEG0                    SFRs

              0x9D010000                                                                      0x1F800000

              0x9D00FFFF

                          Program Flash(2)                              Reserved

              0x9D000000                                                                      0x1D010000

                          Reserved                                                            0x1D00FFFF

              0x80002000                                                Program Flash(2)

              0x80001FFF                                                                      0x1D000000

                          RAM(2)                                        Reserved

              0x80000000                                                                      0x00002000

                          Reserved                                      RAM(2)                0x00001FFF

              0x00000000                                                                      0x00000000

              Note   1:  Memory areas are not shown to scale.

                     2:  The size of this memory region is programmable (see Section 3. “Memory Organization”

                         (DS60001115) in the “PIC32 Family Reference Manual”) and can be changed by initializa-

                         tion code provided by end-user development tools (refer to the specific development tool

                         documentation for information).

DS60001290E-page 40                                                            2014-2017 Microchip Technology              Inc.
              PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

FIGURE  4-2:  MEMORY      MAP FOR DEVICES                WITH  128  KB  OF PROGRAM            MEMORY +            16  KB  RAM

                          MemVoirrytuMalap(1)                           MemPhoyrysiMcaalp(1)

              0xFFFFFFFF  Reserved                                                            0xFFFFFFFF

              0xBFC00C00

              0xBFC00BFF               Device

                          Configuration

              0xBFC00BF0  Registers

              0xBFC00BEF

                          Boot Flash

              0xBFC00000

              0xBF900000  Reserved

              0xBF8FFFFF

                                       SFRs    KSEG1                    Reserved

              0xBF800000

              0xBD020000  Reserved

              0xBD01FFFF

                          Program Flash(2)

              0xBD000000

              0xA0004000  Reserved

              0xA0003FFF

                                       RAM(2)

              0xA0000000                                                                      0x1FC00C00

                          Reserved                                      Device                0x1FC00BFF

              0x9FC00C00                                                Configuration

              0x9FC00BFF               Device                           Registers             0x1FC00BF0

                          Configuration                                                       0x1FC00BEF

              0x9FC00BF0  Registers                                     Boot Flash

              0x9FC00BEF                                                                      0x1FC00000

                          Boot Flash                                    Reserved

              0x9FC00000                                                                      0x1F900000

                                                                                              0x1F8FFFFF

                          Reserved             KSEG0                    SFRs

              0x9D020000                                                                      0x1F800000

              0x9D01FFFF

                          Program Flash(2)                              Reserved

              0x9D000000                                                                      0x1D020000

                          Reserved                                                            0x1D01FFFF

              0x80004000                                                Program Flash(2)

              0x80003FFF                                                                      0x1D000000

                                       RAM(2)                           Reserved

              0x80000000                                                                      0x00004000

                          Reserved                                      RAM(2)                0x00003FFF

              0x00000000                                                                      0x00000000

              Note  1:  Memory areas are not shown to scale.

                    2:  The size of this memory region is programmable (see Section 3. “Memory Organization”

                        (DS60001115) in the “PIC32 Family Reference Manual”) and can be changed by initializa-

                        tion code provided by end-user development tools (refer to the specific development tool

                        documentation for information).

 2014-2017 Microchip Technology Inc.                                                         DS60001290E-page 41
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

FIGURE  4-3:  MEMORY      MAP FOR DEVICES                 WITH  256  KB  OF PROGRAM            MEMORY +            32  KB  RAM

                          MemVoirrytuMalap(1)                            MemPhoyrysiMcaalp(1)

              0xFFFFFFFF  Reserved                                                             0xFFFFFFFF

              0xBFC00C00

              0xBFC00BFF  Device

                          Configuration

              0xBFC00BF0  Registers

              0xBFC00BEF

                          Boot Flash

              0xBFC00000

              0xBF900000  Reserved

              0xBF8FFFFF

                          SFRs                 KSEG1                     Reserved

              0xBF800000

              0xBD040000  Reserved

              0xBD03FFFF

                          Program Flash(2)

              0xBD000000

              0xA0008000  Reserved

              0xA0007FFF

                          RAM(2)

              0xA0000000                                                                       0x1FC00C00

                          Reserved                                       Device                0x1FC00BFF

              0x9FC00C00                                                 Configuration

              0x9FC00BFF  Device                                         Registers             0x1FC00BF0

                          Configuration                                                        0x1FC00BEF

              0x9FC00BF0  Registers                                      Boot Flash

              0x9FC00BEF                                                                       0x1FC00000

                          Boot Flash                                     Reserved

              0x9FC00000                                                                       0x1F900000

                                                                                               0x1F8FFFFF

                          Reserved             KSEG0                     SFRs

              0x9D040000                                                                       0x1F800000

              0x9D03FFFF

                          Program Flash(2)                               Reserved

              0x9D000000                                                                       0x1D040000

                          Reserved                                                             0x1D03FFFF

              0x80008000                                                 Program Flash(2)

              0x80007FFF                                                                       0x1D000000

                          RAM(2)                                         Reserved

              0x80000000                                                                       0x00008000

                          Reserved                                       RAM(2)                0x00007FFF

              0x00000000                                                                       0x00000000

              Note   1:  Memory areas are not shown to scale.

                     2:  The size of this memory region is programmable (see Section 3. “Memory Organization”

                         (DS60001115) in the “PIC32 Family Reference Manual”) and can be changed by initializa-

                         tion code provided by end-user development tools (refer to the specific development tool

                         documentation for information).

DS60001290E-page 42                                                             2014-2017 Microchip Technology Inc.
              PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

FIGURE  4-4:  MEMORY      MAP FOR DEVICES                WITH  512  KB  OF PROGRAM            MEMORY +            64  KB  RAM

                          MemVoirrytuMalap(1)                           MemPhoyrysiMcaalp(1)

              0xFFFFFFFF  Reserved                                                            0xFFFFFFFF

              0xBFC00C00

              0xBFC00BFF               Device

                          Configuration

              0xBFC00BF0  Registers

              0xBFC00BEF

                          Boot Flash

              0xBFC00000

              0xBF900000  Reserved

              0xBF8FFFFF

                                       SFRs    KSEG1                    Reserved

              0xBF800000

              0xBD080000  Reserved

              0xBD07FFFF

                          Program Flash(2)

              0xBD000000

              0xA0010000  Reserved

              0xA000FFFF

                                       RAM(2)

              0xA0000000                                                                      0x1FC00C00

                          Reserved                                      Device                0x1FC00BFF

              0x9FC00C00                                                Configuration

              0x9FC00BFF               Device                           Registers             0x1FC00BF0

                          Configuration                                                       0x1FC00BEF

              0x9FC00BF0  Registers                                     Boot Flash

              0x9FC00BEF                                                                      0x1FC00000

                          Boot Flash                                    Reserved

              0x9FC00000                                                                      0x1F900000

                                                                                              0x1F8FFFFF

                          Reserved             KSEG0                    SFRs

              0x9D080000                                                                      0x1F800000

              0x9D07FFFF

                          Program Flash(2)                              Reserved

              0x9D000000                                                                      0x1D080000

                          Reserved                                                            0x1D07FFFF

              0x80010000                                                Program Flash(2)

              0x8000FFFF                                                                      0x1D000000

                                       RAM(2)                           Reserved

              0x80000000                                                                      0x00010000

                          Reserved                                      RAM(2)                0x0000FFFF

              0x00000000                                                                      0x00000000

              Note  1:  Memory areas are not shown to scale.

                    2:  The size of this memory region is programmable (see Section 3. “Memory Organization”

                        (DS60001115) in the “PIC32 Family Reference Manual”) and can be changed by initializa-

                        tion code provided by end-user development tools (refer to the specific development tool

                        documentation for information).

 2014-2017 Microchip Technology Inc.                                                         DS60001290E-page 43
PIC32MX1XX/2XX/5XX 64/100-PIN                   FAMILY

TABLE 4-1:        SFR MEMORY MAP

                          Virtual Address

         Peripheral

                          Base    Offset Start

Interrupt Controller              0x1000

Bus Matrix                        0x2000

DMA                       0xBF88  0x3000

USB                               0x5000

PORTA-PORTG                       0x6000

CAN1                              0xB000

Watchdog Timer                    0x0000

RTCC                              0x0200

Timer1-Timer5                     0x0600

IC1-IC5                           0x2000

OC1-OC5                           0x3000

I2C1-I2C2                         0x5000

SPI1-SPI4                         0x5800

UART1-UART5               0xBF80  0x6000

PMP                               0x7000

ADC1                              0x9000

DAC                               0x9800

Comparator 1, 2, 3                0xA000

Oscillator                        0xF000

Device and Revision   ID          0xF200

Flash Controller                  0xF400

PPS                               0xFA00

Configuration             0xBFC0  0x0BF0

DS60001290E-page 44                              2014-2017 Microchip  Technology  Inc.
 2014-2017 Microchip Technology Inc.  4.2                            Special Function Register Maps

                                       TABLE 4-2:                                     BUS MATRIX REGISTER MAP

                                       Virtual Address                                                                                                                              Bits

                                                        (BF88_#)      Register  Name  Bit Range                                                                                                                                                                                            All  Resets

                                                                                                 31/15  30/14  29/13  28/12  27/11  26/10      25/9  24/8  23/7                     22/6      21/5  20/4       19/3       18/2       17/1      16/0                                                     PIC32MX1XX/2XX/5XX

                                       2000                       BMXCON(1)           31:16      —      —      —      —      —      BMXCHEDMA  —     —     —                        —         —     BMXERRIXI  BMXERRICD  BMXERRDMA  BMXERRDS  BMXERRIS                                    041F

                                                                                      15:0       —      —      —      —      —      —          —     —     —                        BMXWSDRM  —     —          —                BMXARB<2:0>                                                0047

                                       2010                       BMXDKPBA(1)         31:16      —      —      —      —      —      —          —     —     —                        —         —     —          —          —          —         —                                           0000

                                                                                      15:0                                                                 BMXDKPBA<15:0>                                                                                                                  0000

                                       2020                       BMXDUDBA(1)         31:16      —      —      —      —      —      —          —     —     —                        —         —     —          —          —          —         —                                           0000

                                                                                      15:0                                                                 BMXDUDBA<15:0>                                                                                                                  0000

                                       2030                       BMXDUPBA(1)         31:16      —      —      —      —      —      —          —     —     —                        —         —     —          —          —          —         —                                           0000

                                                                                      15:0                                                                 BMXDUPBA<15:0>                                                                                                                  0000

                                       2040                       BMXDRMSZ            31:16                                                                BMXDRMSZ<31:0>                                                                                                                  xxxx

                                                                                      15:0                                                                                                                                                                                                 xxxx

                                       2050                       BMXPUPBA(1)         31:16      —      —      —      —      —      —          —     —     —                        —         —     —                     BMXPUPBA<19:16>                                                  0000

                                                                                      15:0                                                                 BMXPUPBA<15:0>                                                                                                                  0000

                                       2060                       BMXPFMSZ            31:16                                                                BMXPFMSZ<31:0>                                                                                                                  xxxx

                                                                                      15:0                                                                                                                                                                                                 xxxx

                                       2070                       BMXBOOTSZ           31:16                                                                BMXBOOTSZ<31:0>                                                                                                                 0000

                                                                                      15:0                                                                                                                                                                                                 0000

                                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.                                                                                                                      64/100-PIN FAMILY

                                       Note                       1:            This register has corresponding CLR, SET and INV registers at its virtual address, plus an offset of 0x4, 0x8 and 0xC, respectively. See Section 11.2 “CLR, SET, and INV Registers” for more information.

DS60001290E-page 45
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

4.3       Control Registers

Register 4-1 through Register 4-8 are used for setting

the RAM and Flash memory partitions for data and

code.

REGISTER 4-1:          BMXCON: BUS MATRIX              CONFIGURATION REGISTER

     Bit      Bit      Bit             Bit              Bit         Bit                   Bit    Bit             Bit

Range      31/23/15/7  30/22/14/6    29/21/13/5         28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1    24/16/8/0

31:24         U-0      U-0             U-0              U-0         U-0                   U-0    U-0             U-0

              —        —               —                —           —                     —      —               —

              U-0      U-0             U-0              R/W-1       R/W-1                 R/W-1  R/W-1          R/W-1

23:16         —        —               —                BMX         BMX                   BMX    BMX            BMX

                                                        ERRIXI      ERRICD      ERRDMA           ERRDS        ERRIS

15:8          U-0      U-0             U-0              U-0         U-0                   U-0    U-0             U-0

              —        —               —                —           —                     —      —               —

              U-0      R/W-1           U-0              U-0         U-0                   R/W-0  R/W-0          R/W-1

7:0           —        BMX             —                —           —                            BMXARB<2:0>

                       WSDRM

Legend:

R = Readable bit                     W = Writable bit               U = Unimplemented bit, read as ‘0’

-n = Value at POR                    ‘1’ = Bit is set               ‘0’ = Bit is cleared

bit 31-21  Unimplemented: Read as ‘0’

bit 20     BMXERRIXI: Enable Bus Error from IXI bit

           1 = Enable bus error exceptions for unmapped address accesses initiated from IXI shared bus

           0 = Disable bus error exceptions for unmapped address accesses initiated from IXI shared bus

bit 19     BMXERRICD: Enable Bus Error from ICD Debug Unit bit

           1 = Enable bus error exceptions for unmapped address accesses initiated from ICD

           0 = Disable bus error exceptions for unmapped address accesses initiated from ICD

bit 18     BMXERRDMA: Bus Error from DMA bit

           1 = Enable bus error exceptions for unmapped address accesses initiated from DMA

           0 = Disable bus error exceptions for unmapped address accesses initiated from DMA

bit 17     BMXERRDS: Bus Error from CPU Data Access bit (disabled in Debug mode)

           1 = Enable bus error exceptions for unmapped address accesses initiated from CPU data access

           0 = Disable bus error exceptions for unmapped address accesses initiated from CPU data access

bit 16     BMXERRIS: Bus Error from CPU Instruction Access bit (disabled in Debug mode)

           1 = Enable bus error exceptions for unmapped address accesses initiated from CPU instruction access

           0 = Disable bus error exceptions for unmapped address accesses initiated from CPU instruction access

bit 15-7   Unimplemented: Read as ‘0’

bit 6      BMXWSDRM: CPU Instruction or Data Access from Data RAM Wait State bit

           1 = Data RAM accesses from CPU have one wait state for address setup

           0 = Data RAM accesses from CPU have zero wait states for address setup

bit 5-3    Unimplemented: Read as ‘0’

bit 2-0    BMXARB<2:0>: Bus Matrix Arbitration Mode bits

           111 = Reserved (using these configuration modes will produce undefined behavior)

           •

           •

           •

           011 = Reserved (using these configuration modes will produce undefined behavior)

           010 = Arbitration Mode 2

           001 = Arbitration Mode 1 (default)

           000 = Arbitration Mode 0

DS60001290E-page 46                                                                        2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 4-2:            BMXDKPBA: DATA RAM KERNEL PROGRAM                       BASE ADDRESS REGISTER

Bit          Bit         Bit             Bit             Bit         Bit                   Bit    Bit                 Bit

Range        31/23/15/7  30/22/14/6    29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1  24/16/8/0

31:24        U-0         U-0             U-0             U-0         U-0                   U-0    U-0                 U-0

             —                 —         —               —           —                     —      —                   —

23:16        U-0         U-0             U-0             U-0         U-0                   U-0    U-0                 U-0

             —                 —         —               —           —                     —      —                   —

15:8         R/W-0       R/W-0           R/W-0           R/W-0       R/W-0                 R/W-0  R-0                 R-0

                                                         BMXDKPBA<15:8>

7:0          R-0         R-0             R-0             R-0         R-0                   R-0    R-0                 R-0

                                                         BMXDKPBA<7:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-16    Unimplemented: Read as ‘0’

bit 15-10    BMXDKPBA<15:10>: DRM Kernel Program Base Address bits

             When non-zero, this value selects the relative base address for kernel program space in RAM

bit 9-0      BMXDKPBA<9:0>: Read-Only bits

             Value is always ‘0’, which forces 1 KB increments

Note     1:  At Reset, the value in this register is forced to zero, which causes all of the RAM to be allocated to Kernel

             mode data usage.

         2:  The value in this register must be less than or equal to BMXDRMSZ.

 2014-2017 Microchip Technology Inc.                                                             DS60001290E-page 47
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 4-3:            BMXDUDBA: DATA RAM USER DATA BASE ADDRESS REGISTER

Bit          Bit         Bit             Bit           Bit         Bit                   Bit    Bit                 Bit

Range        31/23/15/7  30/22/14/6  29/21/13/5        28/20/12/4  27/19/11/3    26/18/10/2     25/17/9/1  24/16/8/0

31:24        U-0         U-0             U-0           U-0         U-0                   U-0    U-0                 U-0

             —                 —         —             —           —                     —      —                   —

23:16        U-0         U-0             U-0           U-0         U-0                   U-0    U-0                 U-0

             —                 —         —             —           —                     —      —                   —

15:8         R/W-0       R/W-0           R/W-0         R/W-0       R/W-0                 R/W-0  R-0                 R-0

                                                       BMXDUDBA<15:8>

7:0          R-0         R-0             R-0           R-0         R-0                   R-0    R-0                 R-0

                                                       BMXDUDBA<7:0>

Legend:

R = Readable bit                     W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                    ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-16    Unimplemented: Read as ‘0’

bit 15-10    BMXDUDBA<15:10>: DRM User Data Base Address bits

             When non-zero, the value selects the relative base address for User mode data space in RAM, the value

             must be greater than BMXDKPBA.

bit 9-0      BMXDUDBA<9:0>: Read-Only bits

             Value is always ‘0’, which forces 1 KB increments

Note     1:  At Reset, the value in this register is forced to zero, which causes all of the RAM to be allocated to Kernel

             mode data usage.

         2:  The value in this register must be less than or equal to BMXDRMSZ.

DS60001290E-page 48                                                                       2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 4-4:            BMXDUPBA: DATA RAM USER PROGRAM BASE ADDRESS REGISTER

Bit          Bit         Bit             Bit             Bit         Bit                   Bit        Bit                 Bit

Range        31/23/15/7  30/22/14/6    29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2           25/17/9/1  24/16/8/0

31:24        U-0         U-0             U-0             U-0         U-0                   U-0        U-0                 U-0

             —                 —         —               —           —                     —          —                   —

23:16        U-0         U-0             U-0             U-0         U-0                   U-0        U-0                 U-0

             —                 —         —               —           —                     —          —                   —

15:8         R/W-0       R/W-0           R/W-0           R/W-0       R/W-0                 R/W-0      R-0                 R-0

                                                         BMXDUPBA<15:8>

7:0          R-0         R-0             R-0             R-0         R-0                   R-0        R-0                 R-0

                                                         BMXDUPBA<7:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared             x = Bit is unknown

bit 31-16    Unimplemented: Read as ‘0’

bit 15-10    BMXDUPBA<15:10>: DRM User Program Base Address bits

             When non-zero, the value selects the relative base address          for  User      mode  program  space  in    RAM,

             BMXDUPBA must be greater than BMXDUDBA.

bit 9-0      BMXDUPBA<9:0>: Read-Only bits

             Value is always ‘0’, which forces 1 KB increments

Note     1:  At Reset, the value in this register is forced to zero, which causes all of the RAM to be allocated to Kernel

             mode data usage.

         2:  The value in this register must be less than or equal to BMXDRMSZ.

 2014-2017 Microchip Technology Inc.                                                                 DS60001290E-page 49
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 4-5:          BMXDRMSZ: DATA RAM SIZE REGISTER

Bit        Bit         Bit             Bit           Bit         Bit                   Bit    Bit                 Bit

Range      31/23/15/7  30/22/14/6  29/21/13/5        28/20/12/4  27/19/11/3    26/18/10/2     25/17/9/1  24/16/8/0

31:24      R                 R         R             R                     R           R      R                   R

                                                     BMXDRMSZ<31:24>

23:16      R                 R         R             R                     R           R      R                   R

                                                     BMXDRMSZ<23:16>

15:8       R                 R         R             R                     R           R      R                   R

                                                     BMXDRMSZ<15:8>

7:0        R                 R         R             R                     R           R      R                   R

                                                     BMXDRMSZ<7:0>

Legend:

R = Readable bit                   W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                  ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-0   BMXDRMSZ<31:0>: Data RAM Memory (DRM) Size bits

           Static value that indicates the size of the Data RAM in bytes:

           0x00002000 = Device has 8 KB RAM

           0x00004000 = Device has 16 KB RAM

           0x00008000 = Device has 32 KB RAM

           0x00010000 = Device has 64 KB RAM

REGISTER 4-6:          BMXPUPBA: PROGRAM FLASH (PFM) USER                      PROGRAM BASE ADDRESS

                       REGISTER

Bit        Bit         Bit             Bit           Bit         Bit                   Bit    Bit                 Bit

Range      31/23/15/7  30/22/14/6  29/21/13/5        28/20/12/4  27/19/11/3    26/18/10/2     25/17/9/1  24/16/8/0

31:24      U-0         U-0             U-0           U-0         U-0                   U-0    U-0                 U-0

           —                 —         —             —           —                     —      —                   —

23:16      U-0         U-0             U-0           U-0         R/W-0                 R/W-0  R/W-0      R/W-0

           —                 —         —             —                         BMXPUPBA<19:16>

15:8       R/W-0       R/W-0           R/W-0         R/W-0       R/W-0                 R-0    R-0                 R-0

                                                     BMXPUPBA<15:8>

7:0        R-0         R-0             R-0           R-0         R-0                   R-0    R-0                 R-0

                                                     BMXPUPBA<7:0>

Legend:

R = Readable bit                   W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                  ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-20  Unimplemented: Read as ‘0’

bit 19-11  BMXPUPBA<19:11>: Program Flash (PFM) User Program Base Address bits

bit 10-0   BMXPUPBA<10:0>: Read-Only bits

           Value is always ‘0’, which forces 2 KB increments

Note  1:   At Reset, the value in this register is forced to zero, which causes all of the RAM to be allocated to Kernel

           mode data usage.

      2:   The value in this register must be less than or equal to BMXPFMSZ.

DS60001290E-page 50                                                                     2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 4-7:         BMXPFMSZ:        PROGRAM FLASH (PFM) SIZE                  REGISTER

Bit       Bit         Bit              Bit               Bit         Bit                   Bit  Bit                 Bit

Range     31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1  24/16/8/0

31:24     R           R                R                 R                R                R    R                   R

                                                         BMXPFMSZ<31:24>

23:16     R           R                R                 R                R                R    R                   R

                                                         BMXPFMSZ<23:16>

15:8      R           R                R                 R                R                R    R                   R

                                                         BMXPFMSZ<15:8>

7:0       R           R                R                 R                R                R    R                   R

                                                         BMXPFMSZ<7:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-0  BMXPFMSZ<31:0>: Program Flash Memory (PFM) Size bits

          Static value that indicates the size of the PFM in bytes:

          0x00010000 = Device has 64 KB Flash

          0x00020000 = Device has 128 KB Flash

          0x00040000 = Device has 256 KB Flash

          0x00080000 = Device has 512 KB Flash

REGISTER 4-8:         BMXBOOTSZ: BOOT FLASH (IFM) SIZE REGISTER

Bit       Bit         Bit              Bit               Bit         Bit                   Bit  Bit                 Bit

Range     31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1  24/16/8/0

31:24     R           R                R                 R                R                R    R                   R

                                                         BMXBOOTSZ<31:24>

23:16     R           R                R                 R                R                R    R                   R

                                                         BMXBOOTSZ<23:16>

15:8      R           R                R                 R                R                R    R                   R

                                                         BMXBOOTSZ<15:8>

7:0       R           R                R                 R                R                R    R                   R

                                                         BMXBOOTSZ<7:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-0  BMXBOOTSZ<31:0>: Boot Flash Memory (BFM) Size bits

          Static value that indicates the size of the Boot PFM in bytes:

          0x00000C00 = Device has 3 KB Boot Flash

 2014-2017 Microchip Technology Inc.                                                           DS60001290E-page 51
PIC32MX1XX/2XX/5XX   64/100-PIN  FAMILY

NOTES:

DS60001290E-page 52               2014-2017 Microchip  Technology  Inc.
                                 PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

5.0    INTERRUPT CONTROLLER                                                The             PIC32MX1XX/2XX/5XX  64/100-pin     interrupt

                                                                           module includes the following features:

Note:  This data sheet summarizes the features                             •  Up to 76 interrupt sources

       of the PIC32MX1XX/2XX/5XX 64/100-pin                                •  Up to 46 interrupt vectors

       family of devices. It is not intended to be                         •  Single and multi-vector mode operations

       a     comprehensive                  reference       source.  To

       complement the information in this data                             •  Five external interrupts with edge polarity control

       sheet,                    refer  to  Section  8.     “Interrupt     •  Interrupt proximity timer

       Controller” (DS60001108) in the “PIC32                              •  Seven user-selectable priority levels for each

       Family                    Reference       Manual”,   which    is       vector

       available                 from       the  Microchip   web     site  •  Four user-selectable subpriority levels within each

       (www.microchip.com/PIC32).                                             priority

PIC32MX1XX/2XX/5XX                      64/100-pin  devices  generate      •  Software can generate any interrupt

interrupt requests in response to interrupt events from                    •  User-configurable interrupt vector table location

peripheral modules. The interrupt control module exists                    •  User-configurable interrupt vector spacing

externally to the CPU logic and prioritizes the interrupt                     Note:        The dedicated shadow register set is not

events before presenting them to the CPU.                                                  available on these devices.

FIGURE 5-1:                      INTERRUPT CONTROLLER MODULE BLOCK DIAGRAM

             Interrupt Requests                                            Vector Number

                                            Interrupt Controller           Priority Level  CPU Core

 2014-2017 Microchip Technology Inc.                                                                          DS60001290E-page 53
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 5-1:          INTERRUPT IRQ, VECTOR AND BIT LOCATION

          Interrupt Source(1)               Vector                      Interrupt Bit Location                    Persistent

                                     IRQ #  #                                                                     Interrupt

                                                    Flag                Enable    Priority      Sub-priority

                                            Highest Natural Order Priority

CT – Core Timer Interrupt            0      0       IFS0<0>             IEC0<0>   IPC0<4:2>     IPC0<1:0>         No

CS0 – Core Software Interrupt 0      1      1       IFS0<1>             IEC0<1>   IPC0<12:10>   IPC0<9:8>         No

CS1 – Core Software Interrupt 1      2      2       IFS0<2>             IEC0<2>   IPC0<20:18>   IPC0<17:16>       No

INT0 – External Interrupt            3      3       IFS0<3>             IEC0<3>   IPC0<28:26>   IPC0<25:24>       No

T1 – Timer1                          4      4       IFS0<4>             IEC0<4>   IPC1<4:2>     IPC1<1:0>         No

IC1E – Input Capture 1 Error         5      5       IFS0<5>             IEC0<5>   IPC1<12:10>   IPC1<9:8>         Yes

IC1 – Input Capture 1                6      5       IFS0<6>             IEC0<6>   IPC1<12:10>   IPC1<9:8>         Yes

OC1 – Output Compare 1               7      6       IFS0<7>             IEC0<7>   IPC1<20:18>   IPC1<17:16>       No

INT1 – External Interrupt 1          8      7       IFS0<8>             IEC0<8>   IPC1<28:26>   IPC1<25:24>       No

T2 – Timer2                          9      8       IFS0<9>             IEC0<9>   IPC2<4:2>     IPC2<1:0>         No

IC2E – Input Capture 2               10     9       IFS0<10>            IEC0<10>  IPC2<12:10>   IPC2<9:8>         Yes

IC2 – Input Capture 2                11     9       IFS0<11>            IEC0<11>  IPC2<12:10>   IPC2<9:8>         Yes

OC2 – Output Compare 2               12     10      IFS0<12>            IEC0<12>  IPC2<20:18>   IPC2<17:16>       No

INT2 – External Interrupt 2          13     11      IFS0<13>            IEC0<13>  IPC2<28:26>   IPC2<25:24>       No

T3 – Timer3                          14     12      IFS0<14>            IEC0<14>  IPC3<4:2>     IPC3<1:0>         No

IC3E – Input Capture 3               15     13      IFS0<15>            IEC0<15>  IPC3<12:10>   IPC3<9:8>         Yes

IC3 – Input Capture 3                16     13      IFS0<16>            IEC0<16>  IPC3<12:10>   IPC3<9:8>         Yes

OC3 – Output Compare 3               17     14      IFS0<17>            IEC0<17>  IPC3<20:18>   IPC3<17:16>       No

INT3 – External Interrupt 3          18     15      IFS0<18>            IEC0<18>  IPC3<28:26>   IPC3<25:24>       No

T4 – Timer4                          19     16      IFS0<19>            IEC0<19>  IPC4<4:2>     IPC4<1:0>         No

IC4E – Input Capture 4 Error         20     17      IFS0<20>            IEC0<20>  IPC4<12:10>   IPC4<9:8>         Yes

IC4 – Input Capture 4                21     17      IFS0<21>            IEC0<21>  IPC4<12:10>   IPC4<9:8>         Yes

OC4 – Output Compare 4               22     18      IFS0<22>            IEC0<22>  IPC4<20:18>   IPC4<17:16>       No

INT4 – External Interrupt 4          23     19      IFS0<23>            IEC0<23>  IPC4<28:26>   IPC4<25:24>       No

T5 – Timer5                          24     20      IFS0<24>            IEC0<24>  IPC5<4:2>     IPC5<1:0>         No

IC5E – Input Capture 5 Error         25     21      IFS0<25>            IEC0<25>  IPC5<12:10>   IPC5<9:8>         Yes

IC5 – Input Capture 5                26     21      IFS0<26>            IEC0<26>  IPC5<12:10>   IPC5<9:8>         Yes

OC5 – Output Compare 5               27     22      IFS0<27>            IEC0<27>  IPC5<20:18>   IPC5<17:16>       No

AD1 – ADC1 Convert done              28     23      IFS0<28>            IEC0<28>  IPC5<28:26>   IPC5<25:24>       Yes

FSCM – Fail-Safe Clock Monitor       29     24      IFS0<29>            IEC0<29>  IPC6<4:2>     IPC6<1:0>         No

RTCC – Real-Time Clock and Calendar  30     25      IFS0<30>            IEC0<30>  IPC6<12:10>   IPC6<9:8>         No

FCE – Flash Control Event            31     26      IFS0<31>            IEC0<31>  IPC6<20:18>   IPC6<17:16>       No

CMP1 – Comparator Interrupt          32     27      IFS1<0>             IEC1<0>   IPC6<28:26>   IPC6<25:24>       No

CMP2 – Comparator Interrupt          33     28      IFS1<1>             IEC1<1>   IPC7<4:2>     IPC7<1:0>         No

USB – USB Interrupts                 34     29      IFS1<2>             IEC1<2>   IPC7<12:10>   IPC7<9:8>         Yes

SPI1E – SPI1 Fault                   35     30      IFS1<3>             IEC1<3>   IPC7<20:18>   IPC7<17:16>       Yes

SPI1RX – SPI1 Receive Done           36     30      IFS1<4>             IEC1<4>   IPC7<20:18>   IPC7<17:16>       Yes

SPI1TX – SPI1 Transfer Done          37     30      IFS1<5>             IEC1<5>   IPC7<20:18>   IPC7<17:16>       Yes

U1E – UART1 Fault                    38     31      IFS1<6>             IEC1<6>   IPC7<28:26>   IPC7<25:24>       Yes

U1RX – UART1 Receive Done            39     31      IFS1<7>             IEC1<7>   IPC7<28:26>   IPC7<25:24>       Yes

U1TX – UART1 Transfer Done           40     31      IFS1<8>             IEC1<8>   IPC7<28:26>   IPC7<25:24>       Yes

I2C1B – I2C1 Bus Collision Event     41     32      IFS1<9>             IEC1<9>   IPC8<4:2>     IPC8<1:0>         Yes

I2C1S – I2C1 Slave Event             42     32      IFS1<10>            IEC1<10>  IPC8<4:2>     IPC8<1:0>         Yes

I2C1M – I2C1 Master Event            43     32      IFS1<11>            IEC1<11>  IPC8<4:2>     IPC8<1:0>         Yes

Note  1:     Not all interrupt sources are available on all devices. See TABLE 1: “PIC32MX1XX/2XX/5XX 64/100-pin  Controller

             Family Features” for the list of available peripherals.

      2:     This interrupt source is not available on 64-pin devices.

DS60001290E-page 54                                                                2014-2017 Microchip Technology Inc.
                    PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

TABLE 5-1:          INTERRUPT IRQ, VECTOR AND BIT LOCATION (CONTINUED)

          Interrupt Source(1)                 Vector                 Interrupt Bit Location                    Persistent

                                       IRQ #  #                                                                Interrupt

                                                      Flag           Enable    Priority      Sub-priority

CNA – PORTA Input Change Interrupt     44     33      IFS1<12>       IEC1<12>  IPC8<12:10>   IPC8<9:8>         Yes

CNB – PORTB Input Change Interrupt     45     33      IFS1<13>       IEC1<13>  IPC8<12:10>   IPC8<9:8>         Yes

CNC – PORTC Input Change Interrupt     46     33      IFS1<14>       IEC1<14>  IPC8<12:10>   IPC8<9:8>         Yes

CND – PORTD Input Change Interrupt     47     33      IFS1<15>       IEC1<15>  IPC8<12:10>   IPC8<9:8>         Yes

CNE – PORTE Input Change Interrupt     48     33      IFS1<16>       IEC1<16>  IPC8<12:10>   IPC8<9:8>         Yes

CNF – PORTF Input Change Interrupt     49     33      IFS1<17>       IEC1<17>  IPC8<12:10>   IPC8<9:8>         Yes

CNG – PORTG Input Change Interrupt     50     33      IFS1<18>       IEC1<18>  IPC8<12:10>   IPC8<9:8>         Yes

PMP – Parallel Master Port             51     34      IFS1<19>       IEC1<19>  IPC8<20:18>   IPC8<17:16>       Yes

PMPE – Parallel Master Port Error      52     34      IFS1<20>       IEC1<20>  IPC8<20:18>   IPC8<17:16>       Yes

SPI2E – SPI2 Fault                     53     35      IFS1<21>       IEC1<21>  IPC8<28:26>   IPC8<25:24>       Yes

SPI2RX – SPI2 Receive Done             54     35      IFS1<22>       IEC1<22>  IPC8<28:26>   IPC8<25:24>       Yes

SPI2TX – SPI2 Transfer Done            55     35      IFS1<23>       IEC1<23>  IPC8<28:26>   IPC8<25:24>       Yes

U2E – UART2 Error                      56     36      IFS1<24>       IEC1<24>  IPC9<4:2>     IPC9<1:0>         Yes

U2RX – UART2 Receiver                  57     36      IFS1<25>       IEC1<25>  IPC9<4:2>     IPC9<1:0>         Yes

U2TX – UART2 Transmitter               58     36      IFS1<26>       IEC1<26>  IPC9<4:2>     IPC9<1:0>         Yes

I2C2B – I2C2 Bus Collision Event       59     37      IFS1<27>       IEC1<27>  IPC9<12:10>   IPC9<9:8>         Yes

I2C2S – I2C2 Slave Event               60     37      IFS1<28>       IEC1<28>  IPC9<12:10>   IPC9<9:8>         Yes

I2C2M – I2C2 Master Event              61     37      IFS1<29>       IEC1<29>  IPC9<12:10>   IPC9<9:8>         Yes

U3E – UART3 Error                      62     38      IFS1<30>       IEC1<30>  IPC9<20:18>   IPC9<17:16>       Yes

U3RX – UART3 Receiver                  63     38      IFS1<31>       IEC1<31>  IPC9<20:18>   IPC9<17:16>       Yes

U3TX – UART3 Transmitter               64     38      IFS2<0>        IEC2<0>   IPC9<20:18>   IPC9<17:16>       Yes

U4E – UART4 Error                      65     39      IFS2<1>        IEC2<1>   IPC9<28:26>   IPC9<25:24>       Yes

U4RX – UART4 Receiver                  66     39      IFS2<2>        IEC2<2>   IPC9<28:26>   IPC9<25:24>       Yes

U4TX – UART4 Transmitter               67     39      IFS2<3>        IEC2<3>   IPC9<28:26>   IPC9<25:24>       Yes

U5E – UART5 Error(2)                   68     40      IFS2<4>        IEC2<4>   IPC10<4:2>    IPC10<1:0>        Yes

U5RX – UART5 Receiver(2)               69     40      IFS2<5>        IEC2<5>   IPC10<4:2>    IPC10<1:0>        Yes

U5TX – UART5 Transmitter(2)            70     40      IFS2<6>        IEC2<6>   IPC10<4:2>    IPC10<1:0>        Yes

CTMU – CTMU Event(2)                   71     41      IFS2<7>        IEC2<7>   IPC10<12:10>  IPC10<9:8>        Yes

DMA0 – DMA Channel 0                   72     42      IFS2<8>        IEC2<8>   IPC10<20:18>  IPC10<17:16>      No

DMA1 – DMA Channel 1                   73     43      IFS2<9>        IEC2<9>   IPC10<28:26>  IPC10<25:24>      No

DMA2 – DMA Channel 2                   74     44      IFS2<10>       IEC2<10>  IPC11<4:2>    IPC11<1:0>        No

DMA3 – DMA Channel 3                   75     45      IFS2<11>       IEC2<11>  IPC11<12:10>  IPC11<9:8>        No

CMP3 – Comparator 3 Interrupt          76     46      IFS2<12>       IEC2<12>  IPC11<20:18>  IPC11<17:16>      No

CAN1 – CAN1 Event                      77     47      IFS2<13>       IEC2<13>  IPC11<28:26>  IPC11<25:24>      Yes

SPI3E – SPI3 Fault                     78     48      IFS2<14>       IEC2<14>  IPC12<4:2>    IPC12<1:0>        Yes

SPI3RX – SPI3 Receive Done             79     48      IFS2<15>       IEC2<15>  IPC12<4:2>    IPC12<1:0>        Yes

SPI3TX – SPI3 Transfer Done            80     48      IFS2<16>       IEC2<16>  IPC12<4:2>    IPC12<1:0>        Yes

SPI4E – SPI4 Fault(2)                  81     49      IFS2<17>       IEC2<17>  IPC12<12:10>  IPC12<9:8>        Yes

SPI4RX – SPI4 Receive Done(2)          82     49      IFS2<18>       IEC2<18>  IPC12<12:10>  IPC12<9:8>        Yes

SPI4TX – SPI4 Transfer Done(2)         83     49      IFS2<19>       IEC2<19>  IPC12<12:10>  IPC12<9:8>        Yes

                                              Lowest Natural Order Priority

Note  1:  Not all interrupt sources are available on all devices. See TABLE 1: “PIC32MX1XX/2XX/5XX 64/100-pin  Controller

          Family Features” for the list of available peripherals.

      2:  This interrupt source is not available on 64-pin devices.

 2014-2017 Microchip Technology Inc.                                                        DS60001290E-page 55
DS60001290E-page 56    5.1                            Interrupts Control Registers                                                                                                                                                                                                           PIC32MX1XX/2XX/5XX

                       TABLE 5-2:                                        INTERRUPT REGISTER MAP

                       Virtual Address                                                                                                                              Bits

                                        (BF88_#)      Register  Name(3)  Bit Range                                                                                                                                                                                              All  Resets

                                                                                    31/15     30/14    29/13    28/12       27/11     26/10    25/9        24/8     23/7        22/6       21/5       20/4      19/3         18/2      17/1          16/0

                       1000                       INTCON                 31:16      —         —        —        —           —         —        —           —        —           —          —          —         —            —         —             —                          0000

                                                                         15:0       —         —        —        MVEC        —                  TPC<2:0>             —           —          —          INT4EP    INT3EP       INT2EP    INT1EP        INT0EP                     0000

                       1010                       INTSTAT(4)             31:16      —         —        —        —           —         —        —           —        —           —          —          —         —            —         —             —                          0000

                                                                         15:0       —         —        —        —           —                  SRIPL<2:0>           —           —                               VEC<5:0>                                                        0000

                       1020                       IPTMR                  31:16                                                                                     IPTMR<31:0>                                                                                                  0000

                                                                         15:0                                                                                                                                                                                                   0000

                       1030                           IFS0               31:16      FCEIF     RTCCIF   FSCMIF   AD1IF       OC5IF     IC5IF    IC5EIF      T5IF     INT4IF      OC4IF      IC4IF      IC4EIF    T4IF         INT3IF    OC3IF         IC3IF                      0000

                                                                         15:0       IC3EIF    T3IF     INT2IF   OC2IF       IC2IF     IC2EIF   T2IF        INT1IF   OC1IF       IC1IF      IC1EIF     T1IF      INT0IF       CS1IF     CS0IF         CTIF                       0000

                       1040                           IFS1               31:16      U3RXIF    U3EIF    I2C2MIF  I2C2SIF     I2C2BIF   U2TXIF   U2RXIF      U2EIF    SPI2TXIF    SPI2RXIF   SPI2EIF    PMPEIF    PMPIF        CNGIF     CNFIF         CNEIF                      0000

                                                                         15:0       CNDIF     CNCIF    CNBIF    CNAIF       I2C1MIF   I2C1SIF  I2C1BIF     U1TXIF   U1RXIF      U1EIF      SPI1TXIF   SPI1RXIF  SPI1EIF      USBIF(2)  CMP2IF        CMP1IF                     0000

                       1050                           IFS2               31:16      —         —        —        —           —         —        —           —        —           —          —          —         SPI4TXIF(1)  SPI4RXIF(1) SPI4EIF(1)  SPI3TXIF                   0000

                                                                         15:0       SPI3RXIF  SPI3EIF  CANIF    CMP3IF      DMA3IF    DMA2IF   DMA1IF      DMA0IF   CTMUIF      U5TXIF(1)  U5RXIF(1)  U5EIF(1)  U4TXIF       U4RXIF    U4EIF         U3TXIF                     0000         64/100-PIN

                       1060                       IEC0                   31:16      FCEIE     RTCCIE   FSCMIE   AD1IE       OC5IE     IC5IE    IC5EIE      T5IE     INT4IE      OC4IE      IC4IE      IC4EIE    T4IE         INT3IE    OC3IE         IC3IE                      0000

                                                                         15:0       IC3EIE    T3IE     INT2IE   OC2IE       IC2IE     IC2EIE   T2IE        INT1IE   OC1IE       IC1IE      IC1EIE     T1IE      INT0IE       CS1IE     CS0IE         CTIE                       0000

                       1070                       IEC1                   31:16      U3RXIE    U3EIE    I2C2MIE  I2C2SIE     I2C2BIE   U2TXIE   U2RXIE      U2EIE    SPI2TXIE    SPI2RXIE   SPI2EIE    PMPEIE    PMPIE        CNGIE     CNFIE         CNEIE                      0000

                                                                         15:0       CNDIE     CNCIE    CNBIE    CNAIE       I2C1MIE   I2C1SIE  I2C1BIE     U1TXIE   U1RXIE      U1EIE      SPI1TXIE   SPI1RXIE  SPI1EIE      USBIE(2)  CMP2IE        CMP1IE                     0000

                       1080                       IEC2                   31:16      —         —        —        —           —         —        —           —        —           —          —          —         —            —         —             —                          0000

                                                                         15:0       —         —        —        —           DMA3IE    DMA2IE   DMA1IE      DMA0IE   CTMUIE      U5TXIE(1)  U5RXIE(1)  U5EIE(1)  U4TXIE       U4RXIE    U4EIE         U3TXIE                     0000

                       1090                       IPC0                   31:16      —         —        —                 INT0IP<2:0>           INT0IS<1:0>          —           —          —                    CS1IP<2:0>             CS1IS<1:0>                               0000

                                                                         15:0       —         —        —                 CS0IP<2:0>            CS0IS<1:0>           —           —          —                    CTIP<2:0>              CTIS<1:0>                                0000

                       10A0                       IPC1                   31:16      —         —        —                 INT1IP<2:0>           INT1IS<1:0>          —           —          —                    OC1IP<2:0>             OC1IS<1:0>                               0000

 2014-2017 Microchip                                                    15:0       —         —        —                 IC1IP<2:0>            IC1IS<1:0>           —           —          —                    T1IP<2:0>              T1IS<1:0>                                0000         FAMILY

                       10B0                       IPC2                   31:16      —         —        —                 INT2IP<2:0>           INT2IS<1:0>          —           —          —                    OC2IP<2:0>             OC2IS<1:0>                               0000

                                                                         15:0       —         —        —                 IC2IP<2:0>            IC2IS<1:0>           —           —          —                    T2IP<2:0>              T2IS<1:0>                                0000

                       10C0                       IPC3                   31:16      —         —        —                 INT3IP<2:0>           INT3IS<1:0>          —           —          —                    OC3IP<2:0>             OC3IS<1:0>                               0000

                                                                         15:0       —         —        —                 IC3IP<2:0>            IC3IS<1:0>           —           —          —                    T3IP<2:0>              T3IS<1:0>                                0000

                       10D0                       IPC4                   31:16      —         —        —                 INT4IP<2:0>           INT4IS<1:0>          —           —          —                    OC4IP<2:0>             OC4IS<1:0>                               0000

                                                                         15:0       —         —        —                 IC4IP<2:0>            IC4IS<1:0>           —           —          —                    T4IP<2:0>              T4IS<1:0>                                0000

                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.

Technology             Note                       1:            This bit is only available on 100-pin devices.

                                                  2:            This bit is only implemented on devices with a USB module.

                                                  3:            With the exception of those noted, all registers in this table have corresponding CLR, SET and INV registers at their virtual addresses, plus offsets of 0x4 0x8 and 0xC, respectively. See Section 11.2 “CLR,

                                                                SET, and INV Registers” for more information.

                                                  4:            This register does not have associated CLR, SET, and INV registers.

Inc.                                              5:            This bit is only implemented on devices with a CAN module.
 2014-2017 Microchip Technology Inc.  TABLE 5-2:                                        INTERRUPT REGISTER MAP (CONTINUED)

                                       Virtual Address                                                                                                                                        Bits

                                                        (BF88_#)      Register  Name(3)  Bit Range                                                                                                                                                                                                       All  Resets

                                                                                                    31/15  30/14  29/13         28/12       27/11     26/10  25/9  24/8                       23/7             22/6     21/5              20/4        19/3              18/2           17/1  16/0

                                       10E0                       IPC5                   31:16      —      —      —                    AD1IP<2:0>            AD1IS<1:0>                       —                —        —                             OC5IP<2:0>                       OC5IS<1:0>        0000         PIC32MX1XX/2XX/5XX

                                                                                         15:0       —      —      —                    IC5IP<2:0>            IC5IS<1:0>                       —                —        —                             T5IP<2:0>                        T5IS<1:0>         0000

                                       10F0                       IPC6                   31:16      —      —      —                    CMP1IP<2:0>           CMP1IS<1:0>                      —                —        —                             FCEIP<2:0>                       FCEIS<1:0>        0000

                                                                                         15:0       —      —      —                    RTCCIP<2:0>           RTCCIS<1:0>                      —                —        —                             FSCMIP<2:0>                      FSCMIS<1:0>       0000

                                       1100                       IPC7                   31:16      —      —      —                    U1IP<2:0>             U1IS<1:0>                        —                —        —                             SPI1IP<2:0>                      SPI1IS<1:0>       0000

                                                                                         15:0       —      —      —                    USBIP<2:0>(2)         USBIS<1:0>(2)                    —                —        —                             CMP2IP<2:0>                      CMP2IS<1:0>       0000

                                       1110                       IPC8                   31:16      —      —      —                    SPI2IP<2:0>           SPI2IS<1:0>                      —                —        —                             PMPIP<2:0>                       PMPIS<1:0>        0000

                                                                                         15:0       —      —      —                    CNIP<2:0>             CNIS<1:0>                        —                —        —                             I2C1IP<2:0>                      I2C1IS<1:0>       0000

                                       1120                       IPC9                   31:16      —      —      —                    U4IP<2:0>             U4IS<1:0>                        —                —        —                             U3IP<2:0>                        U3IS<1:0>         0000

                                                                                         15:0       —      —      —                    I2C2IP<2:0>           I2C2IS<1:0>                      —                —        —                             U2IP<2:0>                        U2IS<1:0>         0000

                                       1130                       IPC10                  31:16      —      —      —                    DMA1IP<2:0>           DMA1IS<1:0>                      —                —        —                             DMA0IP<2:0>                      DMA0IS<1:0>       0000

                                                                                         15:0       —      —      —                    CTMUIP<2:0>           CTMUIS<1:0>                      —                —        —                             U5IP<2:0>                        U5IS<1:0>         0000

                                       1140                       IPC11                  31:16      —      —      —                    CANIP<2:0>(5)         CANIS<1:0>(5)                    —                —        —                             CMP3IP<2:0>                      CMP3IS<1:0>       0000

                                                                                         15:0       —      —      —                    DMA3IP<2:0>           DMA3IS<1:0>                      —                —        —                             DMA2IP<2:0>                      DMA2IS<1:0>       0000

                                       1150                       IPC12                  31:16      —      —      —             —           —         —      —     —                          —                —        —                 —           —                 —              —     —           0000

                                                                                         15:0       —      —      —                    SPI4P<2:0>(1)         SPI4S<1:0>(1)                    —                —        —                             SPI3P<2:0>                       SPI3S<1:0>        0000

                                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.

                                       Note                       1:            This bit is only available on 100-pin devices.

                                                                  2:            This bit is only implemented on devices with a USB module.

                                                                  3:            With the exception of those noted, all registers in this table have corresponding CLR, SET and INV registers        at  their  virtual  addresses,  plus  offsets of  0x4 0x8 and 0xC,  respectively.  See Section 11.2  “CLR,

                                                                                SET, and INV Registers” for more information.

                                                                  4:            This register does not have associated CLR, SET, and INV registers.                                                                                                                                                                   64/100-PIN FAMILY

                                                                  5:            This bit is only implemented on devices with a CAN module.

DS60001290E-page 57
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 5-1:          INTCON: INTERRUPT CONTROL REGISTER

Bit            Bit           Bit       Bit           Bit                 Bit             Bit     Bit                 Bit

Range      31/23/15/7  30/22/14/6  29/21/13/5        28/20/12/4    27/19/11/3        26/18/10/2  25/17/9/1  24/16/8/0

31:24          U-0           U-0       U-0           U-0                 U-0             U-0     U-0                 U-0

               —             —         —             —                   —               —       —                   —

23:16          U-0           U-0       U-0           U-0                 U-0             U-0     U-0                 U-0

               —             —         —             —                   —               —       —                   —

15:8           U-0           U-0       U-0           R/W-0               U-0             R/W-0   R/W-0      R/W-0

               —             —         —             MVEC                —                       TPC<2:0>

7:0            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

Legend:

R = Readable bit                   W = Writable bit                U = Unimplemented bit, read as ‘0’

-n = Value at POR                  ‘1’ = Bit is set                ‘0’ = Bit is cleared          x = Bit is unknown

bit 31-13  Unimplemented: Read as ‘0’

bit 12     MVEC: Multi Vector Configuration bit

           1=  Interrupt controller configured for multi vectored mode

           0=  Interrupt controller configured for single vectored mode

bit 11     Unimplemented: Read as ‘0’

bit 10-8   TPC<2:0>: Interrupt Proximity Timer Control bits

           111 = Interrupts of group priority 7 or lower start the Interrupt Proximity timer

           110 = Interrupts of group priority 6 or lower start the Interrupt Proximity timer

           101 = Interrupts of group priority 5 or lower start the Interrupt Proximity timer

           100 = Interrupts of group priority 4 or lower start the Interrupt Proximity timer

           011 = Interrupts of group priority 3 or lower start the Interrupt Proximity timer

           010 = Interrupts of group priority 2 or lower start the Interrupt Proximity timer

           001 = Interrupts of group priority 1 start the Interrupt Proximity timer

           000 = Disables Interrupt Proximity timer

bit 7-5    Unimplemented: Read as ‘0’

bit 4      INT4EP: External Interrupt 4 Edge Polarity Control bit

           1=  Rising edge

           0=  Falling edge

bit 3      INT3EP: External Interrupt 3 Edge Polarity Control bit

           1=  Rising edge

           0=  Falling edge

bit 2      INT2EP: External Interrupt 2 Edge Polarity Control bit

           1=  Rising edge

           0=  Falling edge

bit 1      INT1EP: External Interrupt 1 Edge Polarity Control bit

           1=  Rising edge

           0=  Falling edge

bit 0      INT0EP: External Interrupt 0 Edge Polarity Control bit

           1 = Rising edge

           0 = Falling edge

DS60001290E-page 58                                                                       2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 5-2:            INTSTAT: INTERRUPT STATUS REGISTER

Bit          Bit                  Bit    Bit               Bit       Bit                   Bit    Bit                 Bit

Range        31/23/15/7  30/22/14/6    29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1      24/16/8/0

31:24        U-0                  U-0    U-0               U-0       U-0                   U-0    U-0                 U-0

             —                    —      —                 —         —                     —      —                   —

23:16        U-0                  U-0    U-0               U-0       U-0                   U-0    U-0                 U-0

             —                    —      —                 —         —                     —      —                   —

15:8         U-0                  U-0    U-0               U-0       U-0                   R/W-0  R/W-0          R/W-0

             —                    —      —                 —         —                            SRIPL<2:0>(1)

7:0          U-0                  U-0    R/W-0             R/W-0     R/W-0                 R/W-0  R/W-0          R/W-0

             —                    —                                       VEC<5:0>(1)

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-11    Unimplemented: Read as ‘0’

bit 10-8     SRIPL<2:0>: Requested Priority Level bits(1)

             111-000 = The priority level of the latest interrupt presented to the CPU

bit 7-6      Unimplemented: Read as ‘0’

bit 5-0      VEC<5:0>: Interrupt Vector bits(1)

             11111-00000 = The interrupt vector that is presented to the CPU

Note     1:  This value should only be used when the interrupt controller is configured for Single Vector mode.

REGISTER 5-3:            IPTMR: INTERRUPT PROXIMITY TIMER REGISTER

Bit          Bit                  Bit    Bit               Bit       Bit                   Bit    Bit                 Bit

Range        31/23/15/7  30/22/14/6    29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1      24/16/8/0

31:24        R/W-0       R/W-0           R/W-0             R/W-0     R/W-0                 R/W-0  R/W-0          R/W-0

                                                           IPTMR<31:24>

23:16        R/W-0       R/W-0           R/W-0             R/W-0     R/W-0                 R/W-0  R/W-0          R/W-0

                                                           IPTMR<23:16>

15: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

                                                           IPTMR<15:8>

7:0          R/W-0       R/W-0           R/W-0             R/W-0     R/W-0                 R/W-0  R/W-0          R/W-0

                                                              IPTMR<7:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-0     IPTMR<31:0>: Interrupt Proximity Timer Reload bits

             Used by the Interrupt Proximity Timer as a reload value when the Interrupt Proximity timer is triggered by

             an interrupt event.

 2014-2017 Microchip Technology Inc.                                                             DS60001290E-page 59
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 5-4:           IFSx: INTERRUPT FLAG STATUS                REGISTER

Bit       Bit           Bit          Bit                 Bit       Bit                   Bit    Bit                 Bit

Range     31/23/15/7    30/22/14/6   29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1  24/16/8/0

31:24     R/W-0         R/W-0        R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

          IFS31         IFS30        IFS29             IFS28       IFS27       IFS26            IFS25      IFS24

23:16     R/W-0         R/W-0        R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

          IFS23         IFS22        IFS21             IFS20       IFS19       IFS18            IFS17      IFS16

15: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

          IFS15         IFS14        IFS13             IFS12       IFS11       IFS10            IFS9       IFS8

7:0       R/W-0         R/W-0        R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

          IFS7          IFS6         IFS5              IFS4        IFS3                  IFS2   IFS1       IFS0

Legend:

R = Readable bit                     W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                    ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-0  IFS31-IFS0: Interrupt Flag Status bits

          1 = Interrupt request has occurred

          0 = No interrupt request has occurred

Note:     This register represents a generic definition       of  the IFSx register. Refer to Table 5-1 for the exact    bit

          definitions.

REGISTER 5-5:           IECx: INTERRUPT ENABLE CONTROL REGISTER

Bit       Bit           Bit          Bit                 Bit       Bit                   Bit    Bit                 Bit

Range     31/23/15/7    30/22/14/6   29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1  24/16/8/0

31:24     R/W-0         R/W-0        R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

          IEC31         IEC30        IEC29             IEC28       IEC27       IEC26            IEC25      IEC24

23:16     R/W-0         R/W-0        R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

          IEC23         IEC22        IEC21             IEC20       IEC19       IEC18            IEC17      IEC16

15: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

          IEC15         IEC14        IEC13             IEC12       IEC11       IEC10            IEC9       IEC8

7:0       R/W-0         R/W-0        R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

          IEC7          IEC6         IEC5              IEC4        IEC3        IEC2             IEC1       IEC0

Legend:

R = Readable bit                     W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                    ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-0  IEC31-IEC0: Interrupt Enable bits

          1 = Interrupt is enabled

          0 = Interrupt is disabled

Note:     This register represents a generic      definition  of  the IECx register. Refer to Table 5-1 for the exact    bit

          definitions.

DS60001290E-page 60                                                                       2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 5-6:               IPCx: INTERRUPT PRIORITY CONTROL REGISTER

Bit           Bit           Bit               Bit             Bit           Bit                 Bit    Bit                 Bit

Range         31/23/15/7    30/22/14/6      29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1  24/16/8/0

31:24         U-0           U-0               U-0             R/W-0         R/W-0               R/W-0  R/W-0            R/W-0

              —             —                 —                             IP3<2:0>                          IS3<1:0>

23:16         U-0           U-0               U-0             R/W-0         R/W-0               R/W-0  R/W-0            R/W-0

              —             —                 —                             IP2<2:0>                          IS2<1:0>

15:8          U-0           U-0               U-0             R/W-0         R/W-0               R/W-0  R/W-0            R/W-0

              —             —                 —                             IP1<2:0>                          IS1<1:0>

7:0           U-0           U-0               U-0             R/W-0         R/W-0               R/W-0  R/W-0            R/W-0

              —             —                 —                             IP0<2:0>                          IS0<1:0>

Legend:

R = Readable bit                            W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                           ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-29  Unimplemented: Read as ‘0’

bit 28-26  IP3<2:0>: Interrupt Priority bits

           111 = Interrupt priority is 7

           •

           •

           •

           010 = Interrupt priority is 2

           001 = Interrupt priority is 1

           000 = Interrupt is disabled

bit 25-24  IS3<1:0>: Interrupt Subpriority bits

           11 = Interrupt subpriority is 3

           10 = Interrupt subpriority is 2

           01 = Interrupt subpriority is 1

           00 = Interrupt subpriority is 0

bit 23-21  Unimplemented: Read as ‘0’

bit 20-18  IP2<2:0>: Interrupt Priority bits

           111 =   Interrupt priority is 7

           •

           •

           •

           010 = Interrupt priority is 2

           001 = Interrupt priority is 1

           000 = Interrupt is disabled

bit 17-16  IS2<1:0>: Interrupt Subpriority bits

           11 = Interrupt subpriority is 3

           10 = Interrupt subpriority is 2

           01 = Interrupt subpriority is 1

           00 = Interrupt subpriority is 0

bit 15-13  Unimplemented: Read as ‘0’

bit 12-10  IP1<2:0>: Interrupt Priority bits

           111 = Interrupt priority is 7

           •

           •

           •

           010 = Interrupt priority is 2

           001 = Interrupt priority is 1

           000 = Interrupt is disabled

Note:         This register represents a generic        definition of  the  IPCx register. Refer to Table 5-1 for the exact bit

              definitions.

 2014-2017 Microchip Technology Inc.                                                                  DS60001290E-page 61
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 5-6:             IPCx: INTERRUPT PRIORITY  CONTROL  REGISTER  (CONTINUED)

bit 9-8  IS1<1:0>: Interrupt Subpriority bits

         11 = Interrupt subpriority is 3

         10 = Interrupt subpriority is 2

         01 = Interrupt subpriority is 1

         00 = Interrupt subpriority is 0

bit 7-5  Unimplemented: Read as ‘0’

bit 4-2  IP0<2:0>: Interrupt Priority bits

         111 = Interrupt priority is 7

         •

         •

         •

         010 = Interrupt priority is 2

         001 = Interrupt priority is 1

         000 = Interrupt is disabled

bit 1-0  IS0<1:0>: Interrupt Subpriority bits

         11 = Interrupt subpriority is 3

         10 = Interrupt subpriority is 2

         01 = Interrupt subpriority is 1

         00 = Interrupt subpriority is 0

Note:       This register represents a generic definition of the IPCx register. Refer to Table 5-1 for  the exact   bit

            definitions.

DS60001290E-page 62                                           2014-2017 Microchip                      Technology  Inc.
               PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

6.0    FLASH PROGRAM MEMORY                         PIC32MX1XX/2XX/5XX 64/100-pin devices contain an

                                                    internal  Flash   program  memory     for   executing    user

Note:  This data sheet summarizes the features      code. There are three methods by which the user can

       of the PIC32MX1XX/2XX/5XX 64/100-pin         program this memory:

       family of devices. It is not intended to be  •  Run-Time Self-Programming (RTSP)

       a  comprehensive   reference    source.  To  •  EJTAG Programming

       complement the information in this data      •  In-Circuit Serial Programming™ (ICSP™)

       sheet,  refer  to  Section      5.  “Flash

       Program Memory” (DS60001121) in the          RTSP is performed by software executing from either

       “PIC32 Family Reference Manual”, which       Flash     or  RAM    memory.   Information  about      RTSP

       is available from the Microchip web site     techniques is available in Section 5. “Flash Program

       (www.microchip.com/PIC32).                   Memory”       (DS60001121)       in   the  “PIC32  Family

                                                    Reference Manual”.

                                                    EJTAG     is  performed   using  the  EJTAG  port  of    the

                                                    device and an EJTAG capable programmer.

                                                    ICSP is performed using a serial data connection to the

                                                    device and allows much faster programming times than

                                                    RTSP.

                                                    The EJTAG and ICSP methods are described in the

                                                    “PIC32        Flash       Programming       Specification”

                                                    (DS60001145),      which  can    be  downloaded    from  the

                                                    Microchip web site.

                                                       Note:      On   PIC32MX1XX/2XX/5XX        64/100-pin

                                                                  devices, the Flash page size is 1 KB and

                                                                  the row size is 128 bytes (256 IW and

                                                                  32 IW, respectively).

 2014-2017 Microchip Technology Inc.                                                     DS60001290E-page 63
DS60001290E-page 64    6.1                            Control Registers                                                                                                                                                                                                                 PIC32MX1XX/2XX/5XX

                       TABLE 6-1:                                     FLASH CONTROLLER REGISTER MAP

                       Virtual Address                                                                                                                              Bits

                                        (BF80_#)      Register  Name  Bit Range  31/15  30/14  29/13  28/12   27/11    26/10  25/9  24/8                                  23/7  22/6                    21/5       20/4           19/3   18/2  17/1               16/0      All Resets

                       F400                       NVMCON(1)           31:16      —      —      —      —       —        —      —     —                                     —     —                       —          —              —      —     —                  —         0000

                                                                      15:0       WR     WREN   WRERR  LVDERR  LVDSTAT  —      —     —                                     —     —                       —          —                     NVMOP<3:0>                         0000

                       F410                       NVMKEY              31:16                                                         NVMKEY<31:0>                                                                                                                            0000

                                                                      15:0                                                                                                                                                                                                  0000

                       F420                       NVMADDR(1)          31:16                                                         NVMADDR<31:0>                                                                                                                           0000

                                                                      15:0                                                                                                                                                                                                  0000

                       F430                       NVMDATA             31:16                                                         NVMDATA<31:0>                                                                                                                           0000

                                                                      15:0                                                                                                                                                                                                  0000

                       F440                       NVMSRC              31:16                                                         NVMSRCADDR<31:0>                                                                                                                        0000

                                                      ADDR            15:0                                                                                                                                                                                                  0000

                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.

                       Note                       1:            This register has corresponding CLR, SET and INV registers at their virtual addresses, plus offsets of 0x4, 0x8 and 0xC, respectively.        See  Section  11.2  “CLR,  SET, and INV Registers”  for more

                                                                information.                                                                                                                                                                                                            64/100-PIN

 2014-2017 Microchip                                                                                                                                                                                                                                                                   FAMILY

Technology

Inc.
                     PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 6-1:               NVMCON: PROGRAMMING CONTROL REGISTER

Bit             Bit           Bit          Bit            Bit                Bit            Bit     Bit                 Bit

Range           31/23/15/7  30/22/14/6  29/21/13/5        28/20/12/4  27/19/11/3    26/18/10/2      25/17/9/1  24/16/8/0

31:24           U-0           U-0          U-0            U-0                U-0            U-0     U-0                 U-0

                —             —            —              —                  —              —             —             —

23:16           U-0           U-0          U-0            U-0                U-0            U-0     U-0                 U-0

                —             —            —              —                  —              —             —             —

15:8            R/W-0        R/W-0         R-0            R-0                R-0            U-0     U-0                 U-0

                WR          WREN(1)     WRERR(2)          LVDERR(2)   LVDSTAT(2)            —             —             —

7:0             U-0           U-0          U-0            U-0                R/W-0          R/W-0   R/W-0         R/W-0

                —             —            —              —                                 NVMOP<3:0>

Legend:

R = Readable bit                        W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                       ‘1’ = Bit is set              ‘0’ = Bit is cleared          x = Bit is unknown

bit 31-16    Unimplemented: Read as ‘0’

bit 15       WR: Write Control bit

             This bit is writable when WREN = 1 and the unlock sequence is followed.

             1 = Initiate a Flash operation. Hardware clears this bit when the operation completes

             0 = Flash operation complete or inactive

bit 14       WREN: Write Enable bit(1)

             1 = Enable writes to WR bit and enables LVD circuit

             0 = Disable writes to WR bit and disables LVD circuit

             This is the only bit in this register reset by a device Reset.

bit 13       WRERR: Write Error bit(2)

             This bit is read-only and is automatically set by hardware.

             1 = Program or erase sequence did not complete successfully

             0 = Program or erase sequence completed normally

bit 12       LVDERR: Low-Voltage Detect Error bit (LVD circuit must be enabled)(2)

             This bit is read-only and is automatically set by hardware.

             1 = Low-voltage detected (possible data corruption, if WRERR is set)

             0 = Voltage level is acceptable for programming

bit 11       LVDSTAT: Low-Voltage Detect Status bit (LVD circuit must be enabled)(2)

             This bit is read-only and is automatically set, and cleared, by hardware.

             1 = Low-voltage event active

             0 = Low-voltage event NOT active

bit 10-4     Unimplemented: Read as ‘0’

bit 3-0      NVMOP<3:0>: NVM Operation bits

             These bits are writable when WREN = 0.

             1111 =Reserved

             •

             •

             •

             0111 = Reserved

             0110 =No operation

             0101 =Program Flash (PFM) erase operation: erases PFM, if all pages are not write-protected

             0100 =Page erase operation: erases page selected by NVMADDR, if it is not write-protected

             0011 =Row program operation: programs row selected by NVMADDR, if it is not write-protected

             0010 =No operation

             0001 =Word program operation: programs word selected by NVMADDR, if it is not write-protected

             0000 = No operation

Note     1:  This bit is cleared by any reset (i.e., POR, BOR, WDT, MCLR, SWR).

         2:  This bit is only cleared by setting NVMOP = 0000, and initiating a Flash WR operation or a POR. Any

             other kind of reset (i.e., BOR, WDT, MCLR) does not clear this bit.

 2014-2017 Microchip Technology Inc.                                                               DS60001290E-page 65
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 6-2:         NVMKEY: PROGRAMMING UNLOCK REGISTER

Bit       Bit         Bit         Bit               Bit            Bit                   Bit    Bit                 Bit

Range     31/23/15/7  30/22/14/6  29/21/13/5        28/20/12/4     27/19/11/3  26/18/10/2       25/17/9/1  24/16/8/0

31:24     W-0         W-0         W-0               W-0            W-0                   W-0    W-0                 W-0

                                                    NVMKEY<31:24>

23:16     W-0         W-0         W-0               W-0            W-0                   W-0    W-0                 W-0

                                                    NVMKEY<23:16>

15:8      W-0         W-0         W-0               W-0            W-0                   W-0    W-0                 W-0

                                                    NVMKEY<15:8>

7:0       W-0         W-0         W-0               W-0            W-0                   W-0    W-0                 W-0

                                                    NVMKEY<7:0>

Legend:

R = Readable bit                  W = Writable bit                 U = Unimplemented bit, read as ‘0’

-n = Value at POR                 ‘1’ = Bit is set                 ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-0  NVMKEY<31:0>: Unlock Register bits

          These bits are write-only, and read as ‘0’ on any read.

Note:     This register is used as part of the unlock sequence to prevent inadvertent writes to the PFM.

REGISTER 6-3:         NVMADDR:    FLASH ADDRESS REGISTER

Bit       Bit         Bit         Bit               Bit            Bit                   Bit    Bit                 Bit

Range     31/23/15/7  30/22/14/6  29/21/13/5        28/20/12/4     27/19/11/3  26/18/10/2       25/17/9/1  24/16/8/0

31:24     R/W-0       R/W-0       R/W-0             R/W-0          R/W-0                 R/W-0  R/W-0      R/W-0

                                                    NVMADDR<31:24>

23:16     R/W-0       R/W-0       R/W-0             R/W-0          R/W-0                 R/W-0  R/W-0      R/W-0

                                                    NVMADDR<23:16>

15: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

                                                    NVMADDR<15:8>

7:0       R/W-0       R/W-0       R/W-0             R/W-0          R/W-0                 R/W-0  R/W-0      R/W-0

                                                    NVMADDR<7:0>

Legend:

R = Readable bit                  W = Writable bit                 U = Unimplemented bit, read as ‘0’

-n = Value at POR                 ‘1’ = Bit is set                 ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-0  NVMADDR<31:0>: Flash Address bits

          Bulk/Chip/PFM Erase: Address is ignored

          Page Erase: Address identifies the page to erase

          Row Program: Address identifies the row to program

          Word Program: Address identifies the word to program

DS60001290E-page 66                                                                       2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 6-4:         NVMDATA:         FLASH PROGRAM DATA REGISTER

Bit       Bit         Bit              Bit               Bit         Bit                   Bit    Bit                 Bit

Range     31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1  24/16/8/0

31:24     R/W-0       R/W-0            R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

                                                         NVMDATA<31:24>

23:16     R/W-0       R/W-0            R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

                                                         NVMDATA<23:16>

15: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

                                                         NVMDATA<15:8>

7:0       R/W-0       R/W-0            R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

                                                         NVMDATA<7:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-0  NVMDATA<31:0>: Flash Programming Data bits

Note:     The bits in this register are only reset by a Power-on Reset (POR).

REGISTER 6-5:         NVMSRCADDR: SOURCE DATA ADDRESS REGISTER

Bit       Bit         Bit              Bit               Bit         Bit                   Bit    Bit                 Bit

Range     31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1  24/16/8/0

31:24     R/W-0       R/W-0            R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

                                                         NVMSRCADDR<31:24>

23:16     R/W-0       R/W-0            R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

                                                         NVMSRCADDR<23:16>

15: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

                                                         NVMSRCADDR<15:8>

7:0       R/W-0       R/W-0            R/W-0             R/W-0       R/W-0                 R/W-0  R/W-0      R/W-0

                                                         NVMSRCADDR<7:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-0  NVMSRCADDR<31:0>: Source Data Address bits

          The system physical address of the data to be programmed into the Flash when the NVMOP<3:0> bits

          (NVMCON<3:0>) are set to perform row programming.

 2014-2017 Microchip Technology Inc.                                                             DS60001290E-page 67
PIC32MX1XX/2XX/5XX   64/100-PIN  FAMILY

NOTES:

DS60001290E-page 68               2014-2017 Microchip  Technology  Inc.
               PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

7.0    RESETS                                                    The Reset module combines all Reset sources and

                                                                 controls the device Master Reset signal, SYSRST. The

Note:  This data sheet summarizes the features                   following is a list of device Reset sources:

       of the PIC32MX1XX/2XX/5XX 64/100-pin                      •  POR: Power-on Reset

       family of devices. It is not intended to be               •  MCLR: Master Clear Reset pin

       a     comprehensive      reference         source.  To    •  SWR: Software Reset

       complement the information in this data

       sheet,  refer    to      Section       7.  “Resets”       •  WDTR: Watchdog Timer Reset

       (DS60001118)         in  the     “PIC32     Family        •  BOR: Brown-out Reset

       Reference      Manual”,         which  is  available      •  CMR: Configuration Mismatch Reset

       from    the          Microchip         web          site  •  HVDR: High Voltage Detect Reset

       (www.microchip.com/PIC32).                                A  simplified  block  diagram  of  the  Reset  module  is

                                                                 illustrated in Figure 7-1.

FIGURE 7-1:           SYSTEM RESET BLOCK DIAGRAM

             MCLR

                                                  Glitch Filter     MCLR

             Sleep or Idle                                          WDTR

             Voltage                    WDT
                                       Time-out
             Regulator

             Enabled                                                POR

                                              Power-up
                                                  Timer
                                                                                                    SYSRST
               VDD
                            VDD Rise
                                Detect

                                              Brown-out             BOR

               Configuration                      Reset

               Mismatch                       Brown-out             CMR
               Reset
                                                  Reset
                                                                    SWR
             Software Reset

               VCAP

                                              HVD Detect            HVDR

                                              and Reset

 2014-2017 Microchip Technology Inc.                                                               DS60001290E-page 69
DS60001290E-page 70    7.1                            Control Registers                                                                                                                                                          PIC32MX1XX/2XX/5XX

                       TABLE 7-1:                                      RESET SFR SUMMARY

                       Virtual Address                                                                                                                       Bits

                                        (BF80_#)      RegisterName(1)  Bit Range  31/15  30/14  29/13  28/12  27/11  26/10  25/9                       24/8        23/7  22/6  21/5  20/4  19/3   18/2  17/1  16/0   All Resets

                       F600                       RCON                 31:16      —      —      HVDR   —      —      —      —                          —           —     —     —     —     —      —     —     —      0000

                                                                       15:0       —      —      —      —      —      —      CMR                        VREGS       EXTR  SWR   —     WDTO  SLEEP  IDLE  BOR   POR    xxxx(1)

                       F610                       RSWRST               31:16      —      —      —      —      —      —      —                          —           —     —     —     —     —      —     —     —      0000

                                                                       15:0       —      —      —      —      —      —      —                          —           —     —     —     —     —      —     —     SWRST  0000

                       Legend:                                  — = unimplemented, read as ‘0’. Address offset values are shown in hexadecimal.

                       Note                       1:            The Reset value is dependent on the DEVCFGx Configuration bits and the type of reset.

                                                                                                                                                                                                                                 64/100-PIN

 2014-2017 Microchip                                                                                                                                                                                                            FAMILY

Technology

Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 7-1:           RCON: RESET CONTROL REGISTER

Bit         Bit         Bit                  Bit           Bit         Bit                   Bit   Bit                 Bit

Range       31/23/15/7  30/22/14/6       29/21/13/5      28/20/12/4    27/19/11/3  26/18/10/2      25/17/9/1  24/16/8/0

31:24       U-0         U-0              R/W-0, HS         U-0         U-0                   U-0   U-0                 U-0

            —           —                  HVDR            —           —                     —     —                   —

23:16       U-0         U-0                  U-0           U-0         U-0                   U-0   U-0                 U-0

            —           —                    —             —           —                     —     —                   —

15:8        U-0         U-0                  U-0           U-0         U-0                   U-0   R/W-0, HS  R/W-0

            —           —                    —             —           —                     —     CMR        VREGS

7:0         R/W-0, HS   R/W-0, HS            U-0         R/W-0, HS     R/W-0, HS   R/W-0, HS       R/W-1, HS  R/W-1, HS

            EXTR        SWR                  —           WDTO          SLEEP            IDLE       BOR(1)     POR(1)

Legend:                                HS = Set by hardware

R = Readable bit                       W = Writable bit                U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set                ‘0’ = Bit is cleared        x = Bit is unknown

bit 31-30   Unimplemented: Read as ‘0’

bit 29      HVDR: High Voltage Detect Reset Flag bit

            1 = High Voltage Detect (HVD) Reset has occurred, voltage       on    VCAP  >    2.5V

            0 = HVD Reset has not occurred

bit 28-10   Unimplemented: Read as ‘0’

bit 9       CMR: Configuration Mismatch Reset Flag bit

            1 = Configuration mismatch Reset has occurred

            0 = Configuration mismatch Reset has not occurred

bit 8       VREGS: Voltage Regulator Standby Enable bit

            1 = Regulator is enabled and is on during Sleep mode

            0 = Regulator is disabled and is off during Sleep mode

bit 7       EXTR: External Reset (MCLR) Pin Flag bit

            1 = Master Clear (pin) Reset has occurred

            0 = Master Clear (pin) Reset has not occurred

bit 6       SWR: Software Reset Flag bit

            1 = Software Reset was executed

            0 = Software Reset as not executed

bit 5       Unimplemented: Read as ‘0’

bit 4       WDTO: Watchdog Timer Time-out Flag bit

            1 = WDT Time-out has occurred

            0 = WDT Time-out has not occurred

bit 3       SLEEP: Wake From Sleep Flag bit

            1 = Device was in Sleep mode

            0 = Device was not in Sleep mode

bit 2       IDLE: Wake From Idle Flag bit

            1 = Device was in Idle mode

            0 = Device was not in Idle mode

bit 1       BOR: Brown-out Reset Flag bit(1)

            1 = Brown-out Reset has occurred

            0 = Brown-out Reset has not occurred

bit 0       POR: Power-on Reset Flag bit(1)

            1 = Power-on Reset has occurred

            0 = Power-on Reset has not occurred

Note    1:  User software must clear this bit to view next detection.

 2014-2017 Microchip Technology Inc.                                                              DS60001290E-page 71
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 7-2:          RSWRST: SOFTWARE           RESET REGISTER

Bit        Bit            Bit          Bit              Bit         Bit                   Bit  Bit                 Bit

Range      31/23/15/7     30/22/14/6  29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1  24/16/8/0

31:24      U-0            U-0          U-0              U-0         U-0                   U-0  U-0                 U-0

           —              —                 —           —           —                     —    —                   —

23:16      U-0            U-0          U-0              U-0         U-0                   U-0  U-0                 U-0

           —              —                 —           —           —                     —    —                   —

15:8       U-0            U-0          U-0              U-0         U-0                   U-0  U-0                 U-0

           —              —                 —           —           —                     —    —                   —

7:0        U-0            U-0          U-0              U-0         U-0                   U-0  U-0        W-0, HC

           —              —                 —           —           —                     —    —          SWRST(1)

Legend:                               HC = Cleared by hardware

R = Readable bit                      W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-1   Unimplemented: Read as ‘0’

bit 0      SWRST: Software Reset Trigger bit(1)

           1 = Enable software Reset event

           0 = No effect

Note   1:  The system unlock sequence must be performed before the SWRST bit can be written. Refer to Section

           6. “Oscillator” (DS60001112) in the “PIC32 Family Reference Manual” for details.

DS60001290E-page 72                                                                        2014-2017 Microchip Technology Inc.
               PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

8.0    OSCILLATOR                                        The  PIC32MX1XX/2XX/5XX       64/100-pin             oscillator

       CONFIGURATION                                     system has the following modules and features:

                                                         •  A Total of four external and internal oscillator

Note:  This data sheet summarizes the features              options as clock sources

       of the PIC32MX1XX/2XX/5XX 64/100-pin              •  On-Chip PLL with user-selectable input divider,

       family of devices. It is not intended to be          multiplier and output divider to boost operating

       a  comprehensive   reference        source.  To      frequency on select internal and external

       complement the information in this data              oscillator sources

       sheet,  refer  to  Section      6.  “Oscillator   •  On-Chip user-selectable divisor postscaler on

       Configuration”     (DS60001112)     in       the     select oscillator sources

       “PIC32 Family Reference Manual”, which            •  Software-controllable switching between 

       is available from the Microchip web site             various clock sources

       (www.microchip.com/PIC32).                        •  A Fail-Safe Clock Monitor (FSCM) that detects

                                                            clock failure and permits safe application recovery

                                                            or shutdown

                                                         •  Dedicated On-Chip PLL for USB peripheral

                                                         A block diagram of the oscillator system is provided in

                                                         Figure 8-1.

 2014-2017 Microchip Technology Inc.                                                  DS60001290E-page 73
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

FIGURE 8-1:               PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY CLOCK DIAGRAM

                                 USB PLL(5)

                                                                                                        USB Clock (48 MHz)

                                                   div x  UFIN   PLL x24         div 2

                                                          UFIN 4 MHz                          UFRCEN

                                             UPLLIDIV<2:0>                              UPLLEN  96 MHz

                                                                                 REFCLKI                            ROTRIM<8:0>

                                                                                                POSC                 (M)                     OE

                                                                                                FRC

                                                                                                LPRC             2  N + 5---M-1---2--             REFCLKO

                                                                                 System PLL     SOSC

                                                          4 MHz FIN 5 MHz                   PBCLK

                                                                 FIN                            SYSCLK

                                                          div x             PLL                 FVCO                                             To SPI

                                                                                                                    RODIV<14:0>

                                                                                                                     (N)

                                                         FPLLIDIV<2:0>                                  ROSEL<3:0>

                                             COSC<2:0>           PLLMULT<2:0>

                                                                                 div y          XTPLL, HSPLL,

                                                                                             ECPLL, FRCPLL

            Primary Oscillator                                               PLLODIV<2:0>

            (POSC)

C1(3)               OSC1                                                                                                                     Peripherals

                                            To Internal                                      POSC (XT, HS, EC)            Postscaler

       XTAL               RF(2)             Logic                                                                              div x         PBCLK (TPB)

             RP(1)                    Enable

             RS(1)                                                                                      FRC

                                                                                                                          PBDIV<1:0>

C2(3)        OSC2(4)                                                                    div 16

                                      div 2                                                     FRC/16

                                             To ADC                                                                  CPU and Select Peripherals

                                 FRC                             Postscaler                                                    SYSCLK

                                Oscillator                                                      FRCDIV

                          8 MHz typical

                                TUN<5:0>                  FRCDIV<2:0>

                                 LPRC                                                                   LPRC

                                 Oscillator              31.25 kHz typical

             Secondary Oscillator (SOSC)

SOSCO                                 32.768 kHz

                                                                                                        SOSC

                          SOSCEN and FSOSCEN                                                                    Clock Control Logic

                                                                                                                    Fail-Safe                    FSCM INT

SOSCI                                                                                                                Clock                   FSCM Event
                                                                                                                    Monitor

                                                                                                                    NOSC<2:0>

                                                                                                                    COSC<2:0>

                                                                                                        FSCMEN<1:0>            OSWEN             WDT, PWRT

                                                                                                                                             Timer1, RTCC

Notes:  1.   A series resistor, RS, may be required for AT strip cut crystals or eliminate clipping. Alternately, to increase oscillator circuit gain,

             add a parallel resistor, RP, with a value of 1 M

        2.   The internal feedback resistor, RF, is typically in the range of 2 M to 10 M

        3.   Refer to Section 6. “Oscillator Configuration” (DS60001112) in the “PIC32 Family Reference Manual” for determining the best

             oscillator components.

        4.   PBCLK out is available on the OSC2 pin in certain clock modes.

        5.   USB PLL is available on PIC32MX2XX/5XX devices only.

DS60001290E-page 74                                                                                      2014-2017 Microchip Technology Inc.
             PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

FIGURE 8-2:        PIC32MX1XX/2XX/5XX PLL BLOCK DIAGRAM

                                                       FIN:(1)                         FSYS:(1)                   SYSCLK:(1)

                                       3.92 MHz FIN z          60 MHz FSYS z               234,375 Hz SYSCLK

                                                                                                                   50 MHz

(Crystal, External Clock               FPLLIDIV                 X           VCO                  FPLLODIV                         SYSCLK

Or Internal RC)

                                                                       FPLLMULT

                                       Divide By:                                                Divide By:

                              1,2,3,4,5,6,10,12                                             1,2,4,8,16,32,64,256

                                                                       Multiply By:

                                                                   15,16,17,18,19,

                                                                   20,21,22,23,24

Note  1:     This  frequency  range    must        be  satisfied   at  all  times  if  the  PLL  is  enabled  and  software   is  updating  the

             corresponding bits in the OSCON register.

 2014-2017 Microchip Technology Inc.                                                                              DS60001290E-page 75
 2014-2017 Microchip Technology Inc.  8.1                            Control Registers

                                       TABLE 8-1:                                      OSCILLATOR CONFIGURATION REGISTER MAP

                                       Virtual Address                                                                                                                              Bits

                                                        (BF80_#)      RegisterName(1)  Bit Range  31/15  30/14  29/13      28/12          27/11  26/10  25/9         24/8           23/7  22/6      21/5                  20/4   19/3  18/2       17/1        16/0                          All Resets

                                       F000                       OSCCON               31:16      —      —             PLLODIV<2:0>                     FRCDIV<2:0>                 —     SOSCRDY PBDIVRDY                PBDIV<1:0>            PLLMULT<2:0>         x1xx(2)                            PIC32MX1XX/2XX/5XX

                                                                                       15:0       —             COSC<2:0>                 —             NOSC<2:0>            CLKLOCK      ULOCK     SLOCK                 SLPEN  CF    UFRCEN(3)  SOSCEN      OSWEN  xxxx(2)

                                       F010                       OSCTUN               31:16      —      —      —          —              —       —     —            —              —            —  —                     —      —     —          —           —      0000

                                                                                       15:0       —      —      —          —              —       —     —            —              —            —                                    TUN<5:0>                       0000

                                       F020                       REFOCON              31:16      —                                                                                 RODIV<14:0>                                                                      0000

                                                                                       15:0       ON     —      SIDL       OE             RSLP    —     DIVSWEN      ACTIVE         —            —  —                     —                     ROSEL<3:0>           0000

                                       F030                       REFOTRIM             31:16                                         ROTRIM<8:0>                                                 —  —                     —      —     —          —           —      0000

                                                                                       15:0       —      —      —          —              —       —     —            —              —            —  —                     —      —     —          —           —      0000

                                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.

                                       Note                       1:            With the exception of those noted, all registers in this table have corresponding CLR, SET and INV registers at their virtual addresses,  plus offsets of 0x4, 0x8 and 0xC, respectively. See Section 11.2

                                                                                “CLR, SET, and INV Registers” for more information.

                                                                  2:            Reset values are dependent on the DEVCFGx Configuration bits and the type of reset.

                                                                  3:            This bit is only available on devices with a USB module.

DS60001290E-page 76                                                                                                                                                                                                                                                                                     64/100-PIN FAMILY
                     PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 8-1:           OSCCON: OSCILLATOR CONTROL REGISTER

Bit             Bit     Bit                   Bit          Bit             Bit               Bit    Bit                 Bit

Range       31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2       25/17/9/1     24/16/8/0

31:24           U-0     U-0                   R/W-y        R/W-y       R/W-y                 R/W-0  R/W-0         R/W-1

                —       —                            PLLODIV<2:0>                                   FRCDIV<2:0>

23:16           U-0     R-0                    R-1         R/W-y       R/W-y                 R/W-y  R/W-y         R/W-y

                —       SOSCRDY          PBDIVRDY          PBDIV<1:0>                               PLLMULT<2:0>

15:8            U-0     R-0                    R-0         R-0             U-0               R/W-y  R/W-y         R/W-y

                —                        COSC<2:0>                         —                        NOSC<2:0>

7:0             R/W-0   R-0                    R-0         R/W-0       R/W-0                 R/W-0  R/W-y         R/W-0

            CLKLOCK     ULOCK(1)         SLOCK             SLPEN           CF      UFRCEN(1)        SOSCEN        OSWEN

Legend:                                  y = Value set from Configuration bits on POR

R = Readable bit                         W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                        ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-30   Unimplemented: Read as ‘0’

bit 29-27   PLLODIV<2:0>: Output Divider for PLL

            111 =    PLL output divided by 256

            110 =    PLL output divided by 64

            101 =    PLL output divided by 32

            100 =    PLL output divided by 16

            011 =    PLL output divided by 8

            010 =    PLL output divided by 4

            001 =    PLL output divided by 2

            000 =    PLL output divided by 1

bit 26-24   FRCDIV<2:0>: Internal Fast RC (FRC) Oscillator Clock Divider bits

            111 =    FRC divided by 256

            110 =    FRC divided by 64

            101 =    FRC divided by 32

            100 =    FRC divided by 16

            011 =    FRC divided by 8

            010 =    FRC divided by 4

            001 =    FRC divided by 2 (default setting)

            000 =    FRC divided by 1

bit 23      Unimplemented: Read as ‘0’

bit 22      SOSCRDY: Secondary Oscillator (SOSC) Ready Indicator bit

            1=  Indicates that the Secondary Oscillator is running and is stable

            0=  Secondary Oscillator is still warming up or is turned off

bit 21      PBDIVRDY: Peripheral Bus Clock (PBCLK) Divisor Ready bit

            1=  PBDIV<1:0> bits can be written

            0=  PBDIV<1:0> bits cannot be written

bit 20-19   PBDIV<1:0>: Peripheral Bus Clock (PBCLK) Divisor bits

            11 = PBCLK is SYSCLK divided by 8 (default)

            10 = PBCLK is SYSCLK divided by 4

            01 = PBCLK is SYSCLK divided by 2

            00 = PBCLK is SYSCLK divided by 1

Note    1:  This bit is available on PIC32MX2XX/5XX devices only.

Note:       Writes to this register require an unlock sequence. Refer to Section 6. “Oscillator” (DS60001112) in the

            “PIC32 Family Reference Manual” for details.

 2014-2017 Microchip Technology Inc.                                                               DS60001290E-page 77
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 8-1:        OSCCON: OSCILLATOR CONTROL REGISTER                          (CONTINUED)

bit 18-16   PLLMULT<2:0>: Phase-Locked        Loop  (PLL)  Multiplier  bits

            111 =  Clock is multiplied by 24

            110 =  Clock is multiplied by 21

            101 =  Clock is multiplied by 20

            100 =  Clock is multiplied by 19

            011 =  Clock is multiplied by 18

            010 =  Clock is multiplied by 17

            001 =  Clock is multiplied by 16

            000 =  Clock is multiplied by 15

bit 15      Unimplemented: Read as ‘0’

bit 14-12   COSC<2:0>: Current Oscillator Selection bits

            111 =  Internal Fast RC (FRC) Oscillator divided by OSCCON bits

            110 =  Internal Fast RC (FRC) Oscillator divided by 16

            101 =  Internal Low-Power RC (LPRC) Oscillator

            100 =  Secondary Oscillator (SOSC)

            011 =  Primary Oscillator (POSC) with PLL module (XTPLL, HSPLL or ECPLL)

            010 =  Primary Oscillator (POSC) (XT, HS or EC)

            001 =  Internal Fast RC Oscillator with PLL module via Postscaler (FRCPLL)

            000 =  Internal Fast RC (FRC) Oscillator

bit 11      Unimplemented: Read as ‘0’

bit 10-8    NOSC<2:0>: New Oscillator Selection bits

            111 =  Internal Fast RC Oscillator (FRC) divided by OSCCON bits

            110 =  Internal Fast RC Oscillator (FRC) divided by 16

            101 =  Internal Low-Power RC (LPRC) Oscillator

            100 =  Secondary Oscillator (SOSC)

            011 =  Primary Oscillator with PLL module (XTPLL, HSPLL or ECPLL)

            010 =  Primary Oscillator (XT, HS or EC)

            001 =  Internal Fast Internal RC Oscillator with PLL module via Postscaler (FRCPLL)

            000 =  Internal Fast Internal RC Oscillator (FRC)

            On Reset, these bits are set to the value of the FNOSC Configuration bits (DEVCFG1<2:0>).

bit 7       CLKLOCK: Clock Selection Lock Enable bit

            If clock switching and monitoring is disabled (FCKSM<1:0> = 1x):

            1=  Clock and PLL selections are locked

            0=  Clock and PLL selections are not locked and may be modified

            If clock switching and monitoring is enabled (FCKSM<1:0> = 0x):

            Clock and PLL selections are never locked and may be modified.

bit 6       ULOCK: USB PLL Lock Status bit(1)

            1=  Indicates that the USB PLL module is in lock or USB PLL module start-up timer is satisfied

            0=  Indicates that the USB PLL module is out of lock or USB PLL module start-up timer is in progress      or

                USB PLL is disabled

bit 5       SLOCK: PLL Lock Status bit

            1=  PLL module is in lock or PLL module start-up timer is satisfied

            0=  PLL module is out of lock, PLL start-up timer is running or PLL is disabled

bit 4       SLPEN: Sleep Mode Enable bit

            1=  Device will enter Sleep mode when a WAIT instruction is executed

            0=  Device will enter Idle mode when a WAIT instruction is executed

bit 3       CF: Clock Fail Detect bit

            1=  FSCM has detected a clock failure

            0=  No clock failure has been detected

Note    1:  This bit is available on PIC32MX2XX/5XX devices only.

Note:       Writes to this register require an unlock sequence. Refer to Section 6. “Oscillator” (DS60001112) in the

            “PIC32 Family Reference Manual” for details.

DS60001290E-page 78                                                                2014-2017 Microchip Technology Inc.
               PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 8-1:  OSCCON: OSCILLATOR CONTROL REGISTER                            (CONTINUED)

bit 2      UFRCEN: USB FRC Clock Enable bit(1)

           1=  Enable FRC as the clock source for the USB clock source

           0=  Use the Primary Oscillator or USB PLL as the USB clock source

bit 1      SOSCEN: Secondary Oscillator (SOSC) Enable bit

           1=  Enable Secondary Oscillator

           0=  Disable Secondary Oscillator

bit 0      OSWEN: Oscillator Switch Enable bit

           1=  Initiate an oscillator switch to selection specified by NOSC<2:0> bits

           0=  Oscillator switch is complete

Note   1:  This bit is available on PIC32MX2XX/5XX devices only.

Note:      Writes to this register require an unlock sequence. Refer to Section 6. “Oscillator”  (DS60001112)  in  the

           “PIC32 Family Reference Manual” for details.

 2014-2017 Microchip Technology Inc.                                                            DS60001290E-page 79
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 8-2:         OSCTUN: FRC TUNING                   REGISTER

Bit          Bit      Bit                Bit               Bit          Bit                  Bit    Bit                 Bit

Range     31/23/15/7  30/22/14/6         29/21/13/5        28/20/12/4   27/19/11/3      26/18/10/2  25/17/9/1  24/16/8/0

31:24        U-0      U-0                U-0               U-0          U-0                  U-0    U-0                 U-0

             —        —                  —                 —            —                    —      —                   —

23:16        U-0      R-0                U-0               U-0          U-0                  U-0    U-0                 U-0

             —        —                  —                 —            —                    —      —                   —

15:8         U-0      R-0                U-0               U-0          U-0                  U-0    U-0                 U-0

             —        —                  —                 —            —                    —      —                   —

7:0          U-0      U-0                R/W-0             R/W-0        R/W-0                R/W-0  R/W-0      R/W-0

             —        —                                                 TUN<5:0>(1)

Legend:                                  y = Value set from Configuration bits on POR

R = Readable bit                         W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                        ‘1’ = Bit is set              ‘0’ = Bit is cleared         x = Bit is unknown

bit 31-6  Unimplemented: Read as ‘0’

bit 5-0   TUN<5:0>: FRC Oscillator Tuning bits(1)

          100000 = Center frequency -12.5%

          100001 =

          •

          •

          •

          111111 =

          000000 = Center frequency. Oscillator runs       at  minimal  frequency   (8  MHz)

          000001 =

          •

          •

          •

          011110 =

          011111 = Center frequency +12.5%

Note 1:      OSCTUN functionality has been provided to help customers compensate for temperature effects on the

             FRC frequency over a wide range of temperatures. The tuning step size is an approximation, and is neither

             characterized, nor tested.

Note:        Writes to this register require an unlock sequence. Refer to Section 6. “Oscillator” (DS60001112) in the

             “PIC32 Family Reference Manual” for details.

DS60001290E-page 80                                                                           2014-2017 Microchip Technology Inc.
                      PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 8-3:            REFOCON:      REFERENCE OSCILLATOR CONTROL REGISTER

Bit          Bit         Bit                    Bit        Bit            Bit              Bit   Bit                 Bit

Range        31/23/15/7  30/22/14/6    29/21/13/5        28/20/12/4  27/19/11/3      26/18/10/2  25/17/9/1     24/16/8/0

31:24        U-0         R/W-0               R/W-0       R/W-0            R/W-0      R/W-0       R/W-0         R/W-0

             —                                                       RODIV<14:8>(1)

23:16        R/W-0       R/W-0               R/W-0       R/W-0            R/W-0      R/W-0       R/W-0         R/W-0

                                                           RODIV<7:0>(3)

15:8         R/W-0       U-0                 R/W-0       R/W-0            R/W-0            U-0   R/W-0, HC     R-0, HS, HC

             ON          —                   SIDL          OE        RSLP(2)               —     DIVSWEN       ACTIVE

7:0          U-0         U-0                    U-0        U-0            R/W-0      R/W-0       R/W-0         R/W-0

             —           —                      —          —                               ROSEL<3:0>(1)

Legend:                                HC = Hardware Clearable       HS = Hardware Settable

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared        x = Bit is unknown

bit 31       Unimplemented: Read as ‘0’

bit 30-16    RODIV<14:0>: Reference Clock Divider bits(1)

             This value selects the Reference Clock Divider bits. See Figure 8-1     for   more  information.

bit 15       ON: Output Enable bit

             1 = Reference Oscillator Module enabled

             0 = Reference Oscillator Module disabled

bit 14       Unimplemented: Read as ‘0’

bit 13       SIDL: Peripheral Stop in Idle Mode bit

             1 = Discontinue module operation when device enters Idle mode

             0 = Continue module operation in Idle mode

bit 12       OE: Reference Clock Output Enable bit

             1 = Reference clock is driven out on REFCLKO pin

             0 = Reference clock is not driven out on REFCLKO pin

bit 11       RSLP: Reference Oscillator Module Run in Sleep bit(2)

             1 = Reference Oscillator Module output continues to run in Sleep

             0 = Reference Oscillator Module output is disabled in Sleep

bit 10       Unimplemented: Read as ‘0’

bit 9        DIVSWEN: Divider Switch Enable bit

             1 = Divider switch is in progress

             0 = Divider switch is complete

bit 8        ACTIVE: Reference Clock Request Status bit

             1 = Reference clock request is active

             0 = Reference clock request is not active

bit 7-4      Unimplemented: Read as ‘0’

Note     1:  The ROSEL and RODIV bits should not be written while the ACTIVE bit is ‘1’, as undefined behavior may

             result.

         2:  This bit is ignored when the ROSEL<3:0> bits = 0000 or 0001.

         3:  While the ON bit is set to ‘1’, writes to these bits do not take effect until the DIVSWEN bit is also set to ‘1’.

 2014-2017 Microchip Technology Inc.                                                            DS60001290E-page 81
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 8-3:         REFOCON: REFERENCE OSCILLATOR             CONTROL    REGISTER  (CONTINUED)

bit 3-0      ROSEL<3:0>: Reference Clock Source Select bits(1)

             1111 = Reserved; do not use

             •

             •

             •

             1001  =  Reserved; do not use

             1000  =  REFCLKI

             0111  =  System PLL output

             0110  =  USB PLL output

             0101  =  SOSC

             0100  =  LPRC

             0011  =  FRC

             0010  =  POSC

             0001  =  PBCLK

             0000  =  SYSCLK

Note     1:  The ROSEL and RODIV bits should not be written while the ACTIVE bit is ‘1’, as undefined behavior may

             result.

         2:  This bit is ignored when the ROSEL<3:0> bits = 0000 or 0001.

         3:  While the ON bit is set to ‘1’, writes to these bits do not take effect until the DIVSWEN bit is also set to ‘1’.

DS60001290E-page 82                                                         2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 8-4:             REFOTRIM:         REFERENCE OSCILLATOR TRIM                 REGISTER

Bit           Bit               Bit         Bit               Bit         Bit                   Bit  Bit                 Bit

Range         31/23/15/7        30/22/14/6  29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1  24/16/8/0

31:24         R/W-0             R/W-0       R/W-0             R/W-0       R/W-0           R/W-0      R/W-0      R/W-0

                                                              ROTRIM<8:1>

23:16         R/W-0             U-0         U-0               U-0         U-0                   U-0  U-0                 U-0

           ROTRIM<0>            —           —                 —           —                     —    —                   —

15:8          U-0               U-0         U-0               U-0         U-0                   U-0  U-0                 U-0

              —                 —           —                 —           —                     —    —                   —

7:0           U-0               U-0         U-0               U-0         U-0                   U-0  U-0                 U-0

              —                 —           —                 —           —                     —    —                   —

Legend:                                     y = Value set from Configuration bits on POR

R = Readable bit                            W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                           ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-23  ROTRIM<8:0>: Reference Oscillator Trim bits

           111111111 = 511/512 divisor added to RODIV value

           111111110 = 510/512 divisor added to RODIV value

           •

           •

           •

           100000000 = 256/512 divisor added to RODIV value

           •

           •

           •

           000000010 = 2/512 divisor added to RODIV value

           000000001 = 1/512 divisor added to RODIV value

           000000000 = 0/512 divisor added to RODIV value

bit 22-0   Unimplemented: Read as ‘0’

Note:         While the ON bit (REFOCON<15>) is ‘1’, writes to this register do not take effect until the DIVSWEN bit is

              also set to ‘1’.

 2014-2017 Microchip Technology Inc.                                                                DS60001290E-page 83
PIC32MX1XX/2XX/5XX   64/100-PIN  FAMILY

NOTES:

DS60001290E-page 84               2014-2017 Microchip  Technology  Inc.
                      PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

9.0       DIRECT MEMORY ACCESS                                           •  Fixed priority channel arbitration

          (DMA) CONTROLLER                                               •  Flexible DMA channel operating modes:

                                                                            -  Manual (software) or automatic (interrupt)

   Note:  This data sheet summarizes the features                              DMA requests

          of the PIC32MX1XX/2XX/5XX 64/100-pin                              -  One-Shot or Auto-Repeat Block Transfer

          family of devices. It is not intended to be                          modes

          a        comprehensive  reference      source.  To                -  Channel-to-channel chaining

          complement the information in this data                        •  Flexible DMA requests:

          sheet,       refer  to  Section        31.  “Direct               -  A DMA request can be selected from any of

          Memory         Access       (DMA)      Controller”                   the peripheral interrupt sources

          (DS60001117)        in      the  “PIC32     Family                -  Each channel can select any (appropriate)

          Reference         Manual”,      which  is   available                observable interrupt as its DMA request

          from         the    Microchip          web      site                 source

          (www.microchip.com/PIC32).                                        -  A DMA transfer abort can be selected from

The PIC32 Direct Memory Access (DMA) controller is a                           any of the peripheral interrupt sources

bus master module useful for data transfers between                         -  Pattern (data) match transfer termination

different devices without CPU intervention. The source                   •  Multiple DMA channel status interrupts:

and destination of a DMA transfer can be any of the                         -  DMA channel block transfer complete

memory mapped modules existent in the PIC32 (such                           -  Source empty or half empty

as Peripheral Bus (PBUS) devices: SPI, UART, PMP,                           -  Destination full or half full

etc.) or memory itself.                                                     -  DMA transfer aborted due to an external

The following are some of the key features of the DMA                          event

controller module:                                                          -  Invalid DMA address generated

•  Four identical channels, each featuring:                              •  DMA debug support features:

   -  Auto-increment source and destination                                 -  Most recent address accessed by a DMA

      address registers                                                        channel

   -  Source and destination pointers                                       -  Most recent DMA channel to transfer data

   -  Memory to memory and memory to                                     •  CRC Generation module:

      peripheral transfers                                                  -  CRC module can be assigned to any of the

•  Automatic word-size detection:                                              available channels

   -  Transfer granularity, down to byte level                              -  CRC module is highly configurable

   -  Bytes need not be word-aligned at source

      and destination

FIGURE 9-1:              DMA BLOCK DIAGRAM

   INT Controller                 System IRQ

      Peripheral Bus     Address Decoder              Channel 0 Control        I0  SEL

                                                      Channel 1 Control        I1  Y          Bus Interface  Device Bus + Bus Arbitration

                                                                               I2

                         Global Control               Channel n Control        In

                            (DMACON)                                               SEL

                                                                            Channel Priority
                                                                               Arbitration

 2014-2017 Microchip Technology Inc.                                                                           DS60001290E-page 85
DS60001290E-page 86    9.1                            Control Registers                                                                                                                                                                                                                        PIC32MX1XX/2XX/5XX

                       TABLE 9-1:                                        DMA GLOBAL REGISTER MAP

                       Virtual Address                                                                                                                              Bits

                                        (BF88_#)      RegisterName(1)    Bit Range  31/15  30/14  29/13  28/12  27/11     26/10      25/9  24/8                           23/7            22/6     21/5    20/4                 19/3           18/2  17/1          16/0       All Resets

                       3000                       DMACON                 31:16      —      —      —      —      —         —          —     —                                           —  —        —       —                    —              —     —             —          0000

                                                                         15:0       ON     —      —      SUSPEND DMABUSY  —          —     —                                           —  —        —       —                    —              —     —             —          0000

                       3010                       DMASTAT                31:16      —      —      —      —      —         —          —     —                                           —  —        —       —                    —              —     —             —          0000

                                                                         15:0       —      —      —      —      —         —          —     —                                           —  —        —       —                    RDWR                 DMACH<2:0>               0000

                       3020                       DMAADDR                31:16                                                             DMAADDR<31:0>                                                                                                                      0000

                                                                         15:0                                                                                                                                                                                                 0000

                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.

                       Note                       1:            All registers in this table have corresponding CLR, SET and INV registers at its virtual address, plus an offset of 0x4,  0x8 and  0xC, respectively. See  Section 11.2  “CLR,       SET, and INV Registers”  for

                                                                more information.

                       TABLE 9-2:                                        DMA CRC REGISTER MAP

                       Virtual Address                                                                                                                              Bits                                                                                                                       64/100-PIN

                                        (BF88_#)      Register  Name(1)  Bit Range  31/15  30/14  29/13  28/12  27/11     26/10      25/9  24/8                           23/7            22/6     21/5    20/4                 19/3           18/2  17/1          16/0            All Resets

                       3030                       DCRCCON                31:16      —      —      BYTO<1:0>     WBO       —          —     BITO                                        —  —        —       —                    —              —     —             —          0000

                                                                         15:0       —      —      —                       PLEN<4:0>                                       CRCEN           CRCAPP   CRCTYP  —                    —                    CRCCH<2:0>               0000

                       3040                       DCRCDATA               31:16                                                             DCRCDATA<31:0>                                                                                                                     0000

                                                                         15:0                                                                                                                                                                                                 0000

                       3050                       DCRCXOR                31:16                                                             DCRCXOR<31:0>                                                                                                                      0000

 2014-2017 Microchip                                                    15:0                                                                                                                                                                                                 0000             FAMILY

                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.

                       Note                       1:            All registers in this table have corresponding CLR, SET and INV registers at their virtual addresses, plus offsets of     0x4, 0x8 and 0xC, respectively.  See  Section  11.2  “CLR, SET, and INV  Registers” for

                                                                more information.

Technology

Inc.
 2014-2017 Microchip Technology Inc.  TABLE 9-3:                                      DMA CHANNEL 0 THROUGH CHANNEL 3 REGISTER MAP

                                       Virtual Address                                                                                                                                  Bits

                                                        (BF88_#)      RegisterName(1)  Bit Range  31/15   30/14  29/13  28/12  27/11  26/10                                 25/9  24/8          23/7       22/6    21/5    20/4    19/3                 18/2        17/1    16/0    All Resets

                                       3060                       DCH0CON              31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000         PIC32MX1XX/2XX/5XX

                                                                                       15:0       CHBUSY  —      —      —      —      —                                     —     CHCHNS        CHEN       CHAED   CHCHN   CHAEN   —                    CHEDET      CHPRI<1:0>      0000

                                       3070                       DCH0ECON             31:16       —      —      —      —      —      —                                     —     —                                        CHAIRQ<7:0>                                              00FF

                                                                                       15:0                             CHSIRQ<7:0>                                                             CFORCE     CABORT  PATEN   SIRQEN  AIRQEN               —           —       —       FFF8

                                       3080                       DCH0INT              31:16       —      —      —      —      —      —                                     —     —             CHSDIE     CHSHIE  CHDDIE  CHDHIE  CHBCIE               CHCCIE      CHTAIE  CHERIE  0000

                                                                                       15:0        —      —      —      —      —      —                                     —     —             CHSDIF     CHSHIF  CHDDIF  CHDHIF  CHBCIF               CHCCIF      CHTAIF  CHERIF  0000

                                       3090                       DCH0SSA              31:16                                                                                      CHSSA<31:0>                                                                                       0000

                                                                                       15:0                                                                                                                                                                                         0000

                                       30A0                       DCH0DSA              31:16                                                                                      CHDSA<31:0>                                                                                       0000

                                                                                       15:0                                                                                                                                                                                         0000

                                       30B0                       DCH0SSIZ             31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000

                                                                                       15:0                                                                                       CHSSIZ<15:0>                                                                                      0000

                                       30C0                       DCH0DSIZ             31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000

                                                                                       15:0                                                                                       CHDSIZ<15:0>                                                                                      0000

                                       30D0                       DCH0SPTR             31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000

                                                                                       15:0                                                                                       CHSPTR<15:0>                                                                                      0000

                                       30E0                       DCH0DPTR             31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000

                                                                                       15:0                                                                                       CHDPTR<15:0>                                                                                      0000

                                       30F0                       DCH0CSIZ             31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000

                                                                                       15:0                                                                                       CHCSIZ<15:0>                                                                                      0000

                                       3100                       DCH0CPTR             31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000

                                                                                       15:0                                                                                       CHCPTR<15:0>                                                                                      0000         64/100-PIN FAMILY

                                       3110                       DCH0DAT              31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000

                                                                                       15:0        —      —      —      —      —      —                                     —     —                                        CHPDAT<7:0>                                              0000

                                       3120                       DCH1CON              31:16       —      —      —      —      —      —                                     —     —             —          —       —       —       —                    —           —       —       0000

                                                                                       15:0       CHBUSY  —      —      —      —      —                                     —     CHCHNS        CHEN       CHAED   CHCHN   CHAEN   —                    CHEDET      CHPRI<1:0>      0000

                                       3130                       DCH1ECON             31:16       —      —      —      —      —      —                                     —     —                                        CHAIRQ<7:0>                                              00FF

                                                                                       15:0                             CHSIRQ<7:0>                                                             CFORCE     CABORT  PATEN   SIRQEN  AIRQEN               —           —       —       FFF8

                                       3140                       DCH1INT              31:16       —      —      —      —      —      —                                     —     —             CHSDIE     CHSHIE  CHDDIE  CHDHIE  CHBCIE               CHCCIE      CHTAIE  CHERIE  0000

DS60001290E-page 87                                                                    15:0        —      —      —      —      —      —                                     —     —             CHSDIF     CHSHIF  CHDDIF  CHDHIF  CHBCIF               CHCCIF      CHTAIF  CHERIF  0000

                                       3150                       DCH1SSA              31:16                                                                                      CHSSA<31:0>                                                                                       0000

                                                                                       15:0                                                                                                                                                                                         0000

                                       3160                       DCH1DSA              31:16                                                                                      CHDSA<31:0>                                                                                       0000

                                                                                       15:0                                                                                                                                                                                         0000

                                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown             in hexadecimal.

                                       Note                       1:            All registers in this table have corresponding CLR, SET and INV registers at their virtual     addresses, plus offsets of  0x4, 0x8 and 0xC, respectively. See Section  11.2 “CLR,  SET, and INV Registers” for

                                                                                more information.
DS60001290E-page 88    TABLE 9-3:                                      DMA CHANNEL 0 THROUGH CHANNEL 3 REGISTER MAP (CONTINUED)                                                                                                                                                         PIC32MX1XX/2XX/5XX

                       Virtual Address                                                                                                                                  Bits

                                        (BF88_#)      RegisterName(1)  Bit Range  31/15   30/14  29/13  28/12  27/11  26/10                                 25/9  24/8          23/7       22/6            21/5    20/4              19/3           18/2   17/1    16/0    All Resets

                       3170                       DCH1SSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHSSIZ<15:0>                                                                                             0000

                       3180                       DCH1DSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHDSIZ<15:0>                                                                                             0000

                       3190                       DCH1SPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHSPTR<15:0>                                                                                             0000

                       31A0                       DCH1DPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHDPTR<15:0>                                                                                             0000

                       31B0                       DCH1CSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHCSIZ<15:0>                                                                                             0000

                       31C0                       DCH1CPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHCPTR<15:0>                                                                                             0000

                       31D0                       DCH1DAT              31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0        —      —      —      —      —      —                                     —     —                                                CHPDAT<7:0>                                             0000

                       31E0                       DCH2CON              31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000         64/100-PIN

                                                                       15:0       CHBUSY  —      —      —      —      —                                     —     CHCHNS        CHEN       CHAED           CHCHN   CHAEN             —        CHEDET       CHPRI<1:0>      0000

                       31F0                       DCH2ECON             31:16       —      —      —      —      —      —                                     —     —                                                CHAIRQ<7:0>                                             00FF

                                                                       15:0                             CHSIRQ<7:0>                                                             CFORCE     CABORT          PATEN   SIRQEN            AIRQEN         —      —       —       FFF8

                       3200                       DCH2INT              31:16       —      —      —      —      —      —                                     —     —             CHSDIE     CHSHIE          CHDDIE  CHDHIE            CHBCIE   CHCCIE       CHTAIE  CHERIE  0000

                                                                       15:0        —      —      —      —      —      —                                     —     —             CHSDIF     CHSHIF          CHDDIF  CHDHIF            CHBCIF   CHCCIF       CHTAIF  CHERIF  0000

                       3210                       DCH2SSA              31:16                                                                                      CHSSA<31:0>                                                                                              0000

                                                                       15:0                                                                                                                                                                                                0000

                       3220                       DCH2DSA              31:16                                                                                      CHDSA<31:0>                                                                                              0000

                                                                       15:0                                                                                                                                                                                                0000

 2014-2017 Microchip  3230                       DCH2SSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000         FAMILY

                                                                       15:0                                                                                       CHSSIZ<15:0>                                                                                             0000

                       3240                       DCH2DSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHDSIZ<15:0>                                                                                             0000

                       3250                       DCH2SPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHSPTR<15:0>                                                                                             0000

                       3260                       DCH2DPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHDPTR<15:0>                                                                                             0000

Technology             3270                       DCH2CSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —                 —              —      —       —       0000

                                                                       15:0                                                                                       CHCSIZ<15:0>                                                                                             0000

                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown             in hexadecimal.

                       Note                       1:            All registers in this table have corresponding CLR, SET and INV registers at their virtual     addresses, plus offsets of  0x4,  0x8  and  0xC,  respectively.  See  Section  11.2  “CLR,  SET, and INV Registers” for

                                                                more information.

Inc.
 2014-2017 Microchip Technology Inc.  TABLE 9-3:                                      DMA CHANNEL 0 THROUGH CHANNEL 3 REGISTER MAP (CONTINUED)

                                       Virtual Address                                                                                                                                  Bits

                                                        (BF88_#)      RegisterName(1)  Bit Range  31/15   30/14  29/13  28/12  27/11  26/10                                 25/9  24/8          23/7       22/6            21/5    20/4    19/3                   18/2   17/1    16/0    All Resets

                                       3280                       DCH2CPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000         PIC32MX1XX/2XX/5XX

                                                                                       15:0                                                                                       CHCPTR<15:0>                                                                                           0000

                                       3290                       DCH2DAT              31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000

                                                                                       15:0        —      —      —      —      —      —                                     —     —                                                CHPDAT<7:0>                                           0000

                                       32A0                       DCH3CON              31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000

                                                                                       15:0       CHBUSY  —      —      —      —      —                                     —     CHCHNS        CHEN       CHAED           CHCHN   CHAEN   —                CHEDET       CHPRI<1:0>      0000

                                       32B0                       DCH3ECON             31:16       —      —      —      —      —      —                                     —     —                                                CHAIRQ<7:0>                                           00FF

                                                                                       15:0                             CHSIRQ<7:0>                                                             CFORCE     CABORT          PATEN   SIRQEN  AIRQEN                 —      —       —       FFF8

                                       32C0                       DCH3INT              31:16       —      —      —      —      —      —                                     —     —             CHSDIE     CHSHIE          CHDDIE  CHDHIE  CHBCIE           CHCCIE       CHTAIE  CHERIE  0000

                                                                                       15:0        —      —      —      —      —      —                                     —     —             CHSDIF     CHSHIF          CHDDIF  CHDHIF  CHBCIF           CHCCIF       CHTAIF  CHERIF  0000

                                       32D0                       DCH3SSA              31:16                                                                                      CHSSA<31:0>                                                                                            0000

                                                                                       15:0                                                                                                                                                                                              0000

                                       32E0                       DCH3DSA              31:16                                                                                      CHDSA<31:0>                                                                                            0000

                                                                                       15:0                                                                                                                                                                                              0000

                                       32F0                       DCH3SSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000

                                                                                       15:0                                                                                       CHSSIZ<15:0>                                                                                           0000

                                       3300                       DCH3DSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000

                                                                                       15:0                                                                                       CHDSIZ<15:0>                                                                                           0000

                                       3310                       DCH3SPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000

                                                                                       15:0                                                                                       CHSPTR<15:0>                                                                                           0000

                                       3320                       DCH3DPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000         64/100-PIN FAMILY

                                                                                       15:0                                                                                       CHDPTR<15:0>                                                                                           0000

                                       3330                       DCH3CSIZ             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000

                                                                                       15:0                                                                                       CHCSIZ<15:0>                                                                                           0000

                                       3340                       DCH3CPTR             31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000

                                                                                       15:0                                                                                       CHCPTR<15:0>                                                                                           0000

                                       3350                       DCH3DAT              31:16       —      —      —      —      —      —                                     —     —             —                —         —       —       —                      —      —       —       0000

                                                                                       15:0        —      —      —      —      —      —                                     —     —                                                CHPDAT<7:0>                                           0000

                                       Legend:                                  x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown             in hexadecimal.

DS60001290E-page 89                    Note                       1:            All registers in this table have corresponding CLR, SET and INV registers at their virtual     addresses, plus offsets of  0x4,  0x8  and  0xC,  respectively. See Section  11.2  “CLR,  SET, and INV Registers” for

                                                                                more information.
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 9-1:           DMACON: DMA CONTROLLER CONTROL REGISTER

Bit         Bit                Bit      Bit             Bit         Bit                       Bit        Bit            Bit

Range       31/23/15/7  30/22/14/6     29/21/13/5       28/20/12/4  27/19/11/3  26/18/10/2               25/17/9/1  24/16/8/0

31:24       U-0                U-0      U-0             U-0         U-0                       U-0        U-0                 U-0

            —                  —        —               —           —                         —          —                   —

23:16       U-0                U-0      U-0             U-0         U-0                       U-0        U-0                 U-0

            —                  —        —               —           —                         —          —                   —

15:8        R/W-0              U-0      U-0             R/W-0       R/W-0                     U-0        U-0                 U-0

            ON(1)              —        —               SUSPEND     DMABUSY(1)                —          —                   —

7:0         U-0                U-0      U-0             U-0         U-0                       U-0        U-0                 U-0

            —                  —        —               —           —                         —          —                   —

Legend:

R = Readable bit                      W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set              ‘0’ = Bit is cleared                 x = Bit is unknown

bit 31-16   Unimplemented: Read as ‘0’

bit 15      ON: DMA On bit(1)

            1 = DMA module is enabled

            0 = DMA module is disabled

bit 14-13   Unimplemented: Read as ‘0’

bit 12      SUSPEND: DMA Suspend bit

            1 = DMA transfers are suspended to     allow CPU uninterrupted     access     to  data  bus

            0 = DMA operates normally

bit 11      DMABUSY: DMA Module Busy bit(1)

            1 = DMA module is active

            0 = DMA module is disabled and not     actively transferring data

bit 10-0    Unimplemented: Read as ‘0’

Note    1:  When using 1:1 PBCLK divisor, the user’s software should not read/write the peripheral’s          SFRs  in  the

            SYSCLK cycle immediately following the instruction that clears the module’s ON bit.

DS60001290E-page 90                                                                        2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 9-2:         DMASTAT: DMA STATUS                REGISTER

Bit           Bit     Bit               Bit              Bit         Bit                   Bit  Bit                 Bit

Range     31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1   24/16/8/0

31:24         U-0     U-0               U-0              U-0         U-0                   U-0  U-0                 U-0

              —       —                 —                —           —                     —    —                   —

23:16         U-0     U-0               U-0              U-0         U-0                   U-0  U-0                 U-0

              —       —                 —                —           —                     —    —                   —

15:8          U-0     U-0               U-0              U-0         U-0                   U-0  U-0                 U-0

              —       —                 —                —           —                     —    —                   —

7:0           U-0     U-0               U-0              U-0         R-0                   R-0  R-0                 R-0

              —       —                 —                —           RDWR                       DMACH<2:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-4  Unimplemented: Read as ‘0’

bit 3     RDWR: Read/Write Status bit

          1=  Last DMA bus access was a read

          0=  Last DMA bus access was a write

bit 2-0   DMACH<2:0>: DMA Channel bits

          These bits contain the value of the most recent active DMA channel.

REGISTER 9-3:         DMAADDR:         DMA ADDRESS REGISTER

Bit           Bit     Bit               Bit              Bit         Bit                   Bit  Bit         Bit

Range     31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1   24/16/8/0

31:24         R-0     R-0               R-0              R-0         R-0                   R-0  R-0                 R-0

                                                         DMAADDR<31:24>

23:16         R-0     R-0               R-0              R-0         R-0                   R-0  R-0                 R-0

                                                         DMAADDR<23:16>

15:8          R-0     R-0               R-0              R-0         R-0                   R-0  R-0                 R-0

                                                         DMAADDR<15:8>

7:0           R-0     R-0               R-0              R-0         R-0                   R-0  R-0                 R-0

                                                         DMAADDR<7:0>

Legend:

R = Readable bit                       W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                      ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-0  DMAADDR<31:0>: DMA Module Address bits

          These bits contain the address of the most recent DMA access.

 2014-2017 Microchip Technology Inc.                                                           DS60001290E-page 91
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 9-4:           DCRCCON: DMA CRC CONTROL REGISTER

Bit         Bit             Bit         Bit             Bit          Bit                   Bit            Bit    Bit

Range       31/23/15/7  30/22/14/6      29/21/13/5      28/20/12/4   27/19/11/3  26/18/10/2      25/17/9/1       24/16/8/0

31:24       U-0             U-0         R/W-0           R/W-0        R/W-0                 U-0            U-0    R/W-0

            —               —                    BYTO<1:0>           WBO(1)                  —            —      BITO

23:16       U-0             U-0         U-0             U-0          U-0                   U-0            U-0    U-0

            —               —           —                   —        —                       —            —          —

15:8        U-0             U-0         U-0             R/W-0        R/W-0                R/W-0           R/W-0  R/W-0

            —               —           —                                        PLEN<4:0>

7:0         R/W-0       R/W-0           R/W-0           U-0          U-0                  R/W-0           R/W-0  R/W-0

            CRCEN       CRCAPP(1)       CRCTYP              —        —                           CRCCH<2:0>

Legend:

R = Readable bit                    W = Writable bit                 U = Unimplemented bit, read as ‘0’

-n = Value at POR                   ‘1’ = Bit is set                 ‘0’ = Bit is cleared        x = Bit is unknown

bit 31-30   Unimplemented: Read as ‘0’

bit 29-28   BYTO<1:0>: CRC Byte Order Selection bits

            11 = Endian byte swap on half-word boundaries (i.e., source half-word order with reverse source byte order

            per half-word)

            10 = Swap half-words on word boundaries (i.e., reverse source half-word order with source byte order per

            half-word)

            01 = Endian byte swap on word boundaries (i.e., reverse source byte order)

            00 = No swapping (i.e., source byte order)

bit 27      WBO: CRC Write Byte Order Selection bit(1)

            1 = Source data is written to the destination re-ordered as defined by BYTO<1:0>

            0 = Source data is written to the destination unaltered

bit 26-25   Unimplemented: Read as ‘0’

bit 24      BITO: CRC Bit Order Selection bit(1

            When CRCTYP (DCRCCON<15>) = 1 (CRC module is in IP Header mode):

            1 = The IP header checksum is calculated Least Significant bit (LSb) first (i.e., reflected)

            0 = The IP header checksum is calculated Most Significant bit (MSb) first (i.e., not reflected)

            When CRCTYP (DCRCCON<15>) = 0 (CRC module is in LFSR mode):

            1 = The LFSR CRC is calculated Least Significant bit first (i.e., reflected)

            0 = The LFSR CRC is calculated Most Significant bit first (i.e., not reflected)

bit 23-13   Unimplemented: Read as ‘0’

bit 12-8    PLEN<4:0>: Polynomial Length bits(1)

            When CRCTYP (DCRCCON<15>) = 1 (CRC module is in IP Header mode):

            These bits are unused.

            When CRCTYP (DCRCCON<15>) = 0 (CRC module is in LFSR mode):

            Denotes the length of the polynomial – 1.

bit 7       CRCEN: CRC Enable bit

            1 = CRC module is enabled and channel transfers are routed through the CRC module

            0 = CRC module is disabled and channel transfers proceed normally

Note    1:  When WBO = 1, unaligned transfers are not supported and the CRCAPP bit cannot be set.

DS60001290E-page 92                                                                        2014-2017 Microchip Technology Inc.
               PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 9-4:  DCRCCON: DMA CRC CONTROL REGISTER                      (CONTINUED)

bit 6        CRCAPP: CRC Append Mode bit(1)

             1 = The DMA transfers data from the source into the CRC but NOT to the destination. When a block transfer

             completes the DMA writes the calculated CRC value to the location given by CHxDSA

             0 = The DMA transfers data from the source through the CRC obeying WBO as it writes the data to the

             destination

bit 5        CRCTYP: CRC Type Selection bit

             1 = The CRC module will calculate an IP header checksum

             0 = The CRC module will calculate a LFSR CRC

bit 4-3      Unimplemented: Read as ‘0’

bit 2-0      CRCCH<2:0>: CRC Channel Select bits

             111 = CRC is assigned to Channel 7

             110 = CRC is assigned to Channel 6

             101 = CRC is assigned to Channel 5

             100 = CRC is assigned to Channel 4

             011 = CRC is assigned to Channel 3

             010 = CRC is assigned to Channel 2

             001 = CRC is assigned to Channel 1

             000 = CRC is assigned to Channel 0

Note     1:  When WBO = 1, unaligned transfers are not supported and the CRCAPP bit cannot be set.

 2014-2017 Microchip Technology Inc.                                              DS60001290E-page 93
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 9-5:          DCRCDATA:        DMA CRC        DATA REGISTER

Bit           Bit           Bit                Bit           Bit                  Bit          Bit             Bit            Bit

Range     31/23/15/7   30/22/14/6          29/21/13/5        28/20/12/4  27/19/11/3        26/18/10/2          25/17/9/1  24/16/8/0

31:24         R/W-0         R/W-0              R/W-0         R/W-0            R/W-0            R/W-0           R/W-0          R/W-0

                                                             DCRCDATA<31:24>

23:16         R/W-0         R/W-0              R/W-0         R/W-0            R/W-0            R/W-0           R/W-0          R/W-0

                                                             DCRCDATA<23:16>

15: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

                                                             DCRCDATA<15:8>

7:0           R/W-0         R/W-0              R/W-0         R/W-0            R/W-0            R/W-0           R/W-0          R/W-0

                                                             DCRCDATA<7:0>

Legend:

R = Readable bit                        W = Writable bit                 U = Unimplemented bit, read as ‘0’

-n = Value at POR                          ‘1’ = Bit is set              ‘0’ = Bit is cleared            x = Bit is unknown

bit 31-0  DCRCDATA<31:0>: CRC Data Register bits

          Writing to this register will seed the CRC generator. Reading from this register will return the current value of

          the CRC. Bits greater than PLEN will return ‘0’ on any read.

          When CRCTYP (DCRCCON<15>) = 1 (CRC module is in IP Header mode):

          Only the lower 16 bits contain IP header checksum information. The upper 16 bits are always ‘0’. Data written

          to this register is converted and read back in 1’s complement form (i.e., current IP header checksum value).

          When CRCTYP (DCRCCON<15>) = 0 (CRC module is in LFSR mode):

          Bits greater than PLEN will return ‘0’ on any read.

REGISTER 9-6:          DCRCXOR:         DMA CRCXOR ENABLE REGISTER

Bit           Bit           Bit                Bit           Bit                  Bit          Bit             Bit            Bit

Range     31/23/15/7        30/22/14/6     29/21/13/5        28/20/12/4  27/19/11/3        26/18/10/2    25/17/9/1        24/16/8/0

31:24         R/W-0         R/W-0              R/W-0         R/W-0            R/W-0            R/W-0           R/W-0          R/W-0

                                                             DCRCXOR<31:24>

23:16         R/W-0         R/W-0              R/W-0         R/W-0            R/W-0            R/W-0           R/W-0          R/W-0

                                                             DCRCXOR<23:16>

15: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

                                                             DCRCXOR<15:8>

7:0           R/W-0         R/W-0              R/W-0         R/W-0            R/W-0            R/W-0           R/W-0          R/W-0

                                                             DCRCXOR<7:0>

Legend:

R = Readable bit                           W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                          ‘1’ = Bit is set              ‘0’ = Bit is cleared            x = Bit is unknown

bit 31-0  DCRCXOR<31:0>: CRC XOR Register bits

          When CRCTYP (DCRCCON<15>) = 1 (CRC module is in IP Header mode):

          This register is unused.

          When CRCTYP (DCRCCON<15>) = 0 (CRC module is in LFSR mode):

          1=  Enable the XOR input to the Shift register

          0=  Disable  the  XOR     input  to  the    Shift  register;  data  is  shifted  in  directly  from  the  previous  stage  in

              the register

DS60001290E-page 94                                                                             2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 9-7:            DCHxCON: DMA CHANNEL ‘x’ CONTROL REGISTER

     Bit          Bit     Bit                  Bit           Bit         Bit                   Bit  Bit                Bit

Range         31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1  24/16/8/0

31:24             U-0     U-0                  U-0           U-0         U-0                   U-0  U-0                 U-0

                  —       —                    —             —           —                     —    —                   —

23:16             U-0     U-0                  U-0           U-0         U-0                   U-0  U-0                 U-0

                  —       —                    —             —           —                     —    —                   —

     15:8         R/W-0   U-0                  U-0           U-0         U-0                   U-0  U-0        R/W-0

              CHBUSY      —                    —             —           —                     —    —          CHCHNS(1)

     7:0          R/W-0   R/W-0                R/W-0         R/W-0       U-0                   R-0  R/W-0      R/W-0

              CHEN(2)     CHAED            CHCHN             CHAEN       —               CHEDET     CHPRI<1:0>

Legend:

R = Readable bit                           W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                          ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-16     Unimplemented: Read as ‘0’

bit 15        CHBUSY: Channel Busy bit

              1=  Channel is active or has been enabled

              0=  Channel is inactive or has been disabled

bit 14-9      Unimplemented: Read as ‘0’

bit 8         CHCHNS: Chain Channel Selection bit(1)

              1=  Chain to channel lower in natural priority (CH1 will be enabled by CH2 transfer complete)

              0=  Chain to channel higher in natural priority (CH1 will be enabled by CH0 transfer complete)

bit 7         CHEN: Channel Enable bit(2)

              1=  Channel is enabled

              0=  Channel is disabled

bit 6         CHAED: Channel Allow Events If Disabled bit

              1=  Channel start/abort events will be registered, even if the channel is disabled

              0=  Channel start/abort events will be ignored if the channel is disabled

bit           CHCHN: Channel Chain Enable bit

              1=  Allow channel to be chained

              0=  Do not allow channel to be chained

bit 4         CHAEN: Channel Automatic Enable bit

              1=  Channel is continuously enabled, and not automatically disabled after a block transfer is complete

              0=  Channel is disabled on block transfer complete

bit 3         Unimplemented: Read as ‘0’

bit 2         CHEDET: Channel Event Detected bit

              1=  An event has been detected

              0=  No events have been detected

bit 1-0       CHPRI<1:0>: Channel Priority bits

              11 = Channel has priority 3 (highest)

              10 = Channel has priority 2

              01 = Channel has priority 1

              00 = Channel has priority 0

Note      1:  The chain selection bit takes effect when chaining is enabled (i.e., CHCHN = 1).

          2:  When the channel is suspended by clearing this bit, the user application should poll the CHBUSY bit (if

              available on the device variant) to see when the channel is suspended, as it may take some clock cycles

              to complete a current transaction before the channel is suspended.

 2014-2017 Microchip Technology Inc.                                                               DS60001290E-page 95
PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 9-8:               DCHxECON:   DMA CHANNEL ‘x’ EVENT CONTROL REGISTER

Bit              Bit        Bit              Bit              Bit             Bit               Bit  Bit        Bit

Range           31/23/15/7  30/22/14/6      29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1  24/16/8/0

31:24            U-0        U-0              U-0              U-0             U-0               U-0  U-0        U-0

                 —          —                —                —               —                 —    —                   —

23:16            R/W-1      R/W-1           R/W-1             R/W-1           R/W-1   R/W-1          R/W-1      R/W-1

                                                              CHAIRQ<7:0>(1)

15:8             R/W-1      R/W-1           R/W-1             R/W-1           R/W-1   R/W-1          R/W-1      R/W-1

                                                              CHSIRQ<7:0>(1)

7:0              S-0        S-0             R/W-0             R/W-0           R/W-0             U-0  U-0        U-0

                CFORCE      CABORT          PATEN             SIRQEN      AIRQEN                —    —                   —

Legend:                                     S = Settable bit

R = Readable bit                            W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                           ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-24    Unimplemented: Read as ‘0’

bit 23-16    CHAIRQ<7:0>: Channel Transfer Abort IRQ bits(1)

             11111111 = Interrupt 255 will abort any transfers in progress and set CHAIF flag

             •

             •

             •

             00000001 = Interrupt 1 will abort any transfers in progress and set CHAIF flag

             00000000 = Interrupt 0 will abort any transfers in progress and set CHAIF flag

bit 15-8     CHSIRQ<7:0>: Channel Transfer Start IRQ bits(1)

             11111111 = Interrupt 255 will initiate a DMA transfer

             •

             •

             •

             00000001 = Interrupt 1 will initiate a DMA transfer

             00000000 = Interrupt 0 will initiate a DMA transfer

bit 7        CFORCE: DMA Forced Transfer bit

             1=  A DMA transfer is forced to begin when this bit is written to a ‘1’

             0=  This bit always reads ‘0’

bit 6        CABORT: DMA Abort Transfer bit

             1=  A DMA transfer is aborted when this bit is written to a ‘1’

             0=  This bit always reads ‘0’

bit 5        PATEN: Channel Pattern Match Abort Enable bit

             1=  Abort transfer and clear CHEN on pattern match

             0=  Pattern match is disabled

bit 4        SIRQEN: Channel Start IRQ Enable bit

             1=  Start channel cell transfer if an interrupt matching CHSIRQ occurs

             0=  Interrupt number CHSIRQ is ignored and does not start a transfer

bit 3        AIRQEN: Channel Abort IRQ Enable bit

             1=  Channel transfer is aborted if an interrupt matching CHAIRQ occurs

             0=  Interrupt number CHAIRQ is ignored and does not terminate a transfer

bit 2-0      Unimplemented: Read as ‘0’

Note     1:  See Table 5-1: “Interrupt IRQ, Vector and Bit Location” for the list of available interrupt IRQ sources.

DS60001290E-page 96                                                                    2014-2017 Microchip Technology Inc.
                   PIC32MX1XX/2XX/5XX 64/100-PIN FAMILY

REGISTER 9-9:         DCHxINT: DMA CHANNEL ‘x’ INTERRUPT CONTROL REGISTER

Bit            Bit     Bit              Bit               Bit           Bit                 Bit  Bit        Bit

Range      31/23/15/7  30/22/14/6       29/21/13/5        28/20/12/4  27/19/11/3  26/18/10/2     25/17/9/1  24/16/8/0

31:24          U-0     U-0              U-0               U-0           U-0                 U-0  U-0        U-0

               —       —                —                 —             —                   —    —                   —

23:16          R/W-0   R/W-0            R/W-0             R/W-0        R/W-0      R/W-0          R/W-0      R/W-0

           CHSDIE      CHSHIE           CHDDIE            CHDHIE       CHBCIE     CHCCIE         CHTAIE     CHERIE

15:8           U-0     U-0              U-0               U-0           U-0                 U-0  U-0        U-0

               —       —                —                 —             —                   —    —                   —

7:0            R/W-0   R/W-0            R/W-0             R/W-0        R/W-0      R/W-0          R/W-0      R/W-0

           CHSDIF      CHSHIF           CHDDIF            CHDHIF       CHBCIF     CHCCIF         CHTAIF     CHERIF

Legend:

R = Readable bit                        W = Writable bit              U = Unimplemented bit, read as ‘0’

-n = Value at POR                       ‘1’ = Bit is set              ‘0’ = Bit is cleared       x = Bit is unknown

bit 31-24  Unimplemented: Read as ‘0’

bit 23     CHSDIE: Channel Source Done Interrupt Enable bit

           1=  Interrupt is enabled

           0=  Interrupt is disabled

bit 22     CHSHIE: Channel Source Half Empty Interrupt Enable bit

           1=  Interrupt is enabled

           0=  Interrupt is disabled

bit 21     CHDDIE: Channel Destination Done Interrupt Enable bit

           1=  Interrupt is enabled

           0=  Interrupt is disabled

bit 20     CHDHIE: Channel Destination Half Full Interrupt Enable bit

           1=  Interrupt is ena