Pic32Mm0064Gpl036 Family: 32-Bit Flash Microcontroller With Mips32 Microaptiv™ Uc Core With Low Power and Low Pin Count
Pic32Mm0064Gpl036 Family: 32-Bit Flash Microcontroller With Mips32 Microaptiv™ Uc Core With Low Power and Low Pin Count
Pic32Mm0064Gpl036 Family: 32-Bit Flash Microcontroller With Mips32 Microaptiv™ Uc Core With Low Power and Low Pin Count
Peripherals
Comparators
UART(1)/LIN/J2602
Packages
16-Bit Timers
RTCC
JTAG
CRC
Pins
SPI(2)/I2S
Device
MCCP(3)
SCCP(4)
CLC
PIC32MM0016GPL020 20 16 4 16/16 7 8 2 1 1 2 2 2 11 2 Yes Yes Yes SSOP/QFN
PIC32MM0032GPL020 20 32 8 16/16 7 8 2 1 1 2 2 2 11 2 Yes Yes Yes SSOP/QFN
PIC32MM0064GPL020 20 64 8 16/16 7 8 2 1 1 2 2 2 11 2 Yes Yes Yes SSOP/QFN
PIC32MM0016GPL028 28 16 4 22/19 7 8 2 1 1 2 2 2 12 2 Yes Yes Yes SSOP/SOIC/
QFN/UQFN
PIC32MM0032GPL028 28 32 8 22/19 7 8 2 1 1 2 2 2 12 2 Yes Yes Yes SSOP/ SOIC/
QFN/UQFN
PIC32MM0064GPL028 28 64 8 22/19 7 8 2 1 1 2 2 2 12 2 Yes Yes Yes SPDIP/SSOP/
SOIC/QFN/
UQFN
PIC32MM0016GPL036 36/40 16 4 29/20 7 8 2 1 1 2 2 2 14 2 Yes Yes Yes VQFN/UQFN
PIC32MM0032GPL036 36/40 32 8 29/20 7 8 2 1 1 2 2 2 14 2 Yes Yes Yes VQFN/UQFN
PIC32MM0064GPL036 36/40 64 8 29/20 7 8 2 1 1 2 2 2 14 2 Yes Yes Yes VQFN/UQFN
Note 1: UART1 has assigned pins. UART2 is remappable.
2: SPI1 has assigned pins. SPI2 is remappable.
3: MCCP can be configured as a PWM with up to 6 outputs, input capture, output compare, 2 x 16-bit timers or
1 x 32-bit timer.
4: SCCP can be configured as a PWM with 1 output, input capture, output compare, 2 x 16-bit timers or 1 x 32-bit timer.
20-Pin SSOP
MCLR 1 20 AVDD/VDD
PGEC2/RP1/RA0 2 19 AVSS/VSS
PIC32MMXXXXGPL020
PGED2/RP2/RA1 3 18 RP10/RB15(1)
PGED1/RP14/RB0 4 17 RP9/RB14
PGEC1/RP15/RB1 5 16 RP13/RB13
RP16/RB2 6 15 RP12/RB12
CLKI/RP3/RA2 7 14 VCAP
CLKO/RP4/RA3(1) 8 13 RP8/RB9(1)
PGED3/SOSCI/RP5/RB4 9 12 RP7/RB8(1)
PGEC3/SOSCO/RP6/RA4 10 11 RP11/RB7
1 MCLR 11 RP11/RB7
2 PGEC2/VREF+/AN0/RP1/OCM1E/INT3/RA0 12 TCK/RP7/U1CTS/SCK1/OCM1A/RB8(1)
3 PGED2/VREF-/AN1/RP2/OCM1F/RA1 13 TMS/REFCLKI/RP8/T1CK/T1G/U1RTS/U1BCLK/SDO1/C2OUT/OCM1B/
INT2/RB9(1)
4 PGED1/AN2/C1IND/C2INB/RP14/RB0 14 VCAP
5 PGEC1/AN3/C1INC/C2INA/RP15/RB1 15 TDO/AN7/LVDIN/RP12/RB12
6 AN4/RP16/RB2 16 TDI/AN8/RP13/RB13
7 OSC1/CLKI/AN5/C1INB/RP3/OCM1C/RA2 17 CDAC1/AN9/RP9/RTCC/U1TX/SDI1/C1OUT/INT1/RB14
8 OSC2/CLKO/AN6/C1INA/RP4/OCM1D/RA3(1) 18 AN10/REFCLKO/RP10/U1RX/SS1/FSYNC1/INT0/RB15(1)
9 PGED3/SOSCI/RP5/RB4 19 AVSS/VSS
10 PGEC3/SOSCO/SCLKI/RP6/PWRLCLK/RA4 20 AVDD/VDD
Note 1: Pin has an increased current drive strength.
20-Pin QFN
PGED2/RP2/RA1
PGEC2/RP1/RA0
AVDD/VDD
AVSS/VSS
MCLR
20 19 18 17 16
PGED1/RP14/RB0 1 15 RP10/RB15(1)
PGEC1/RP15/RB1 2 14 RP9/RB14
RP16/RB2 3 PIC32MMXXXXGPL020 13 RP13/RB13
CLKI/RP3/RA2 4 12 RP12/RB12
CLKO/RP4/RA3 (1) 5 11 VCAP
6 7 8 9 10
PGED3/SOSCI/RP5/RB4
PGEC3/SOSCO/RP6/RA4
RP11/RB7
RP7/RB8(1)
(1)
RP8/RB9
1 PGED1/AN2/C1IND/C2INB/RP14/RB0 11 VCAP
2 PGEC1/AN3/C1INC/C2INA/RP15/RB1 12 TDO/AN7/LVDIN/RP12/RB12
3 AN4/RP16/RB2 13 TDI/AN8/RP13/RB13
4 OSC1/CLKI/AN5/C1INB/RP3/OCM1C/RA2 14 CDAC1/AN9/RP9/RTCC/U1TX/SDI1/C1OUT/INT1/RB14
5 OSC2/CLKO/AN6/C1INA/RP4/OCM1D/RA3(1) 15 AN10/REFCLKO/RP10/U1RX/SS1/FSYNC1/INT0/RB15(1)
6 PGED3/SOSCI/RP5/RB4 16 AVSS/VSS
7 PGEC3/SOSCO/SCLKI/RP6/PWRLCLK/RA4 17 AVDD/VDD
8 RP11/RB7 18 MCLR
9 TCK/RP7/U1CTS/SCK1/OCM1A/RB8(1) 19 PGEC2/VREF+/AN0/RP1/OCM1E/INT3/RA0
10 TMS/REFCLKI/RP8/T1CK/T1G/U1RTS/U1BCLK/SDO1/ 20 PGED2/VREF-/AN1/RP2/OCM1F/RA1
C2OUT/OCM1B/INT2/RB9(1)
Note 1: Pin has an increased current drive strength.
28-Pin SPDIP(2)/SSOP/SOIC
MCLR 1 28 AVDD
RP1/RA0 2 27 AVSS
RP2/RA1 3 26 RP10/RB15(1)
PGED1/RP14/RB0 4 25
PIC32MMXXXXGPL028
RP9/RB14
PGEC1/RP15/RB1 5 24 RP13/RB13
RP16/RB2 6 23 RP12/RB12
RB3 7 22 PGEC2/RP18/RB11
VSS 8 21 PGED2/RP17/RB10
CLKI/RP3/RA2 9 20 VCAP
CLKO/RP4/RA3(1) 10 19 RP19/RC9
SOSCI/RP5/RB4 11 18 RP8/RB9(1)
SOSCO/RP6/RA4 12 17 RP7/RB8(1)
VDD 13 16 RP11/RB7
PGED3/RB5 14 15 PGEC3/RB6
1 MCLR 15 PGEC3/RB6
2 VREF+/AN0/RP1/OCM1E/INT3/RA0 16 RP11/RB7
3 VREF-/AN1/RP2/OCM1F/RA1 17 TCK/RP7/U1CTS/SCK1/OCM1A/RB8(1)
4 PGED1/AN2/C1IND/C2INB/RP14/RB0 18 TMS/REFCLKI/RP8/T1CK/T1G/U1RTS/U1BCLK/SDO1/C2OUT/OCM1B/INT2/RB9(1)
5 PGEC1/AN3/C1INC/C2INA/RP15/RB1 19 RP19/RC9
6 AN4/C1INB/RP16/RB2 20 VCAP
7 AN11/C1INA/RB3 21 PGED2/TDO/RP17/RB10
8 VSS 22 PGEC2/TDI/RP18/RB11
9 OSC1/CLKI/AN5/RP3/OCM1C/RA2 23 AN7/LVDIN/RP12/RB12
10 OSC2/CLKO/AN6/RP4/OCM1D/RA3(1) 24 AN8/RP13/RB13
11 SOSCI/RP5/RB4 25 CDAC1/AN9/RP9/RTCC/U1TX/SDI1/C1OUT/INT1/RB14
12 SOSCO/SCLKI/RP6/PWRLCLK/RA4 26 AN10/REFCLKO/RP10/U1RX/SS1/FSYNC1/INT0/RB15(1)
13 VDD 27 AVSS
14 PGED3/RB5 28 AVDD
Note 1: Pin has an increased current drive strength.
28-Pin QFN/UQFN
RP10/RB15(1)
RP9/RB14
RP2/RA1
RP1/RA0
MCLR
AVDD
AVSS
28 27 26 25 24 23 22
PGED1/RP14/RB0 1 21 RP13/RB13
PGEC1/RP15/RB1 2 20 RP12/RB12
RP16/RB2 3 19 PGEC2/RP18/RB11
RB3 4 PIC32MMXXXXGPL028 18 PGED2/RP17/RB10
VSS 5 17 VCAP
CLKI/RP3/RA2 6 16 RP19/RC9
CLKO/RP4/RA3(1) 7 15 RP8/RB9(1)
8 9 10 11 12 13 14
SOSCI/RP5/RB4
SOSCO/RP6/RA4
PGED3/RB5
PGEC3/RB6
RP11/RB7
RP7/RB8(1)
VDD
1 PGED1/AN2/C1IND/C2INB/RP14/RB0 15 TMS/REFCLKI/RP8/T1CK/T1G/U1RTS/U1BCLK/SDO1/C2OUT/OCM1B/
INT2/RB9(1)
2 PGEC1/AN3/C1INC/C2INA/RP15/RB1 16 RP19/RC9
3 AN4/C1INB/RP16/RB2 17 VCAP
4 AN11/C1INA/RB3 18 PGED2/TDO/RP17/RB10
5 VSS 19 PGEC2/TDI/RP18/RB11
6 OSC1/CLKI/AN5/RP3/OCM1C/RA2 20 AN7/LVDIN/RP12/RB12
7 OSC2/CLKO/AN6/RP4/OCM1D/RA3(1) 21 AN8/RP13/RB13
8 SOSCI/RP5/RB4 22 CDAC1/AN9/RP9/RTCC/U1TX/SDI1/C1OUT/INT1/RB14
9 SOSCO/SCLKI/RP6/PWRLCLK/RA4 23 AN10/REFCLKO/RP10/U1RX/SS1/FSYNC1/INT0/RB15(1)
10 VDD 24 AVSS
11 PGED3/RB5 25 AVDD
12 PGEC3/RB6 26 MCLR
13 RP11/RB7 27 VREF+/AN0/RP1/OCM1E/INT3/RA0
14 TCK/RP7/U1CTS/SCK1/OCM1A/RB8(1) 28 VREF-/AN1/RP2/OCM1F/RA1
Note 1: Pin has an increased current drive strength.
PGEC1/RP15/RB1
PGED1/RP14/RB0
36-Pin VQFN
RP10/RB15(1)
RP9/RB14
RP2/RA1
RP1/RA0
MCLR
AVDD
AVSS
36
35
34
33
32
31
30
29
28
RP16/RB2 1 27 RP13/RB13
RB3 2 26 RP12/RB12
RC0 3 25 PGEC2/RP18/RB11
RC1 4 24 PGED2/RP17/RB10
RC2 5 PIC32MMXXXXGPL036 23 VDD
VSS 6 22 VCAP
CLKI/RP3/RA2 7 21 RP19/RC9
CLKO/RP4/RA3(1) 8 20 RC8
SOSCI/RP5/RB4 9 19 RP8/RB9(1)
SOSCO/RP6/RA4 10
VSS 12
VDD 13
RC3 14
PGED3/RB5 15
PGEC3/RB6 16
RP11/RB7 17
RP7/RB8(1) 18
RP20/RA9 11
1 AN4/C1INB/RP16/RB2 19 TMS/REFCLKI/RP8/T1CK/T1G/U1RTS/U1BCLK/SDO1/C2OUT/OCM1B/INT2/RB9(1)
2 AN11/C1INA/RB3 20 RC8
3 AN12/RC0 21 RP19/RC9
4 AN13/RC1 22 VCAP
5 RC2 23 VDD
6 VSS 24 PGED2/TDO/RP17/RB10
7 OSC1/CLKI/AN5/RP3/OCM1C/RA2 25 PGEC2/TDI/RP18/RB11
8 OSC2/CLKO/AN6/RP4/OCM1D/RA3(1) 26 AN7/LVDIN/RP12/RB12
9 SOSCI/RP5/RB4 27 AN8/RP13/RB13
10 SOSCO/SCLKI/RP6/PWRLCLK/RA4 28 CDAC1/AN9/RP9/RTCC/U1TX/SDI1/C1OUT/INT1/RB14
11 RP20/RA9 29 AN10/REFCLKO/RP10/U1RX/SS1/FSYNC1/INT0/RB15(1)
12 VSS 30 AVSS
13 VDD 31 AVDD
14 RC3 32 MCLR
15 PGED3/RB5 33 VREF+/AN0/RP1/OCM1E/INT3/RA0
16 PGEC3/RB6 34 VREF-/AN1/RP2/OCM1F/RA1
17 RP11/RB7 35 PGED1/AN2/C1IND/C2INB/RP14/RB0
18 TCK/RP7/U1CTS/SCK1/OCM1A/RB8(1) 36 PGEC1/AN3/C1INC/C2INA/RP15/RB1
Note 1: Pin has an increased current drive strength.
39 RP15/RB1/PGEC1
38 RP14/RB0/PGED1
40-Pin UQFN
32 RP10/RB15(1)
31 RP9/RB14
37 RP2/RA1
36 RP1/RA0
35 MCLR
34 AVDD
33 AVSS
40 N/C
RP16/RB2 1 30 RP13/RB13
RB3 2 29 RP12/RB12
RC0 3 28 RP18/RB11/PGEC2
RC1 4 27 RP17/RB10/PGED2
RC2 5 26 VDD
PIC32MMXXXXGPL036
VSS 6 25 N/C
OSCI/RP3/RA2 7 24 VCAP
OSCO/RP4/RA3(1) 8 23 N/C
SOSCI/RP5/RB4 9 22 RP19/RC9
SOSCO/RP6/RA4 10 21 RC8
VSS 12
VDD 13
RC3 14
RB5/PGED3 15
RB6/PGEC3 16
RP11/RB7 17
18
N/C 19
RP8/RB9(1) 20
RP20/RA9 11
RP7/RB8(1)
1 AN4/C1INB/RP16/RB2 21 RC8
2 AN11/C1INA/RB3 22 RP19/RC9
3 AN12/RC0 23 N/C
4 AN13/RC1 24 VCAP
5 RC2 25 N/C
6 VSS 26 VDD
7 OSC1/CLKI/AN5/RP3/OCM1C/RA2 27 PGED2/TDO/RP17/RB10
8 OSC2/CLKO/AN6/RP4/OCM1D/RA3(1) 28 PGEC2/TDI/RP18/RB11
9 SOSCI/RP5/RB4 29 AN7/LVDIN/RP12/RB12
10 SOSCO/SCLKI/RP6/PWRLCLK/RA4 30 AN8/RP13/RB13
11 RP20/RA9 31 CDAC1/AN9/RP9/RTCC/U1TX/SDI1/C1OUT/INT1/RB14
12 VSS 32 AN10/REFCLKO/RP10/U1RX/SS1/FSYNC1/INT0/RB15(1)
13 VDD 33 AVSS
14 RC3 34 AVDD
15 PGED3/RB5 35 MCLR
16 PGEC3/RB6 36 VREF+/AN0/RP1/OCM1E/INT3/RA0
17 RP11/RB7 37 VREF-/AN1/RP2/OCM1F/RA1
18 TCK/RP7/U1CTS/SCK1/OCM1A/RB8(1) 38 PGED1/AN2/C1IND/C2INB/RP14/RB0
19 N/C 39 PGEC1/AN3/C1INC/C2INA/RP15/RB1
20 TMS/REFCLKI/RP8/T1CK/T1G/U1RTS/U1BCLK/SDO1/ 40 N/C
C2OUT/OCM1B/INT2/RB9(1)
Note 1: Pin has an increased current drive strength.
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.
1.0 DEVICE OVERVIEW This data sheet contains device-specific information for
the PIC32MM0064GPL036 family devices.
Note: This data sheet summarizes the features
of the PIC32MM0064GPL036 family of Figure 1-1 illustrates a general block diagram of the core
devices. It is not intended to be a compre- and peripheral modules in the PIC32MM0064GPL036
hensive reference source. To complement family of devices.
the information in this data sheet, refer to Table 1-1 lists the pinout I/O descriptions for the pins
the “PIC32 Family Reference Manual”, shown in the device pin tables.
which is available from the Microchip
web site (www.microchip.com/PIC32). The
information in this data sheet supersedes
the information in the FRM.
Power-up
Timer
AVDD, AVSS
OSC2/CLKO Primary Oscillator
OSC1/CLKI Oscillator Start-up Timer VDD, VSS
Dividers Brown-out
Reset
PLL VCAP
Voltage
SYSCLK Regulator I/O Change
Timing
Generation PBCLK (1:1 with SYSCLK) Notification
Precision
Band Gap
Reference
Peripheral Bus Clocked by PBCLK Timer1
PORTA
MCCP1
JTAG Priority
Boundary Interrupt
Scan Controller SCCP2,3
ICD
Peripheral Bus Clocked by PBCLK
32
EJTAG INT SPI1,2
PORTB MIPS32® microAptiv™ UC
CPU Core
IS DS 5-Bit DAC
32 32 32
CRC
32
Bus Matrix
12-Bit ADC
PORTC 32
32 32
UART1,2
Line Buffer
RAM Peripheral Bridge
Module
RTCC
64 Comparators
64-Bit Wide Flash
Program Flash Memory Controller
HLVD
VDD
0.1 µF FIGURE 2-2: EXAMPLE OF MCLR PIN
10 µF Ceramic
CONNECTIONS(1,2,3)
CEFC
R VDD
VCAP
VSS
VDD
R1
MCLR 10k
R R1(1)
MCLR
C 1 k
0.1 µF(2) C
PIC32 VDD PIC32
1
VSS VSS 5
4 PGECx(3)
ICSP™
0.1 µF PGEDx(3)
Ceramic 2
VDD VDD
3
AVDD
AVSS
0.1 µF VSS
VDD
VSS
Ceramic 6
NC
0.1 µF 0.1 µF Note 1: 470 R1 1 k will limit any current flowing into
Ceramic Ceramic MCLR from the external capacitor, C, in the event of
MCLR pin breakdown, due to Electrostatic Discharge
(ESD) or Electrical Overstress (EOS). Ensure that the
MCLR pin VIH and VIL specifications are met without
2.2.1 BULK CAPACITORS interfering with the debug/programmer tools.
2: The capacitor can be sized to prevent unintentional
The use of a bulk capacitor is recommended to improve Resets from brief glitches or to extend the device
power supply stability. Typical values range from 4.7 µF Reset period during POR.
to 47 µF. This capacitor should be located as close to 3: No pull-ups or bypass capacitors are allowed on active
the device as possible. debug/program PGECx/PGEDx pins.
Decode
SYSCLK MMU System Bus
(microMIPS™)
GPR
(2 sets)
Execution Unit
ALU/Shift Enhanced MDU
Atomic/LdSt
MCU ASE
Debug/Profiling
System System Breakpoints Power
Interface Coprocessor Fast Debug Channel Management
Performance Counters
Interrupt
Interface
bit 31 Reserved: This bit is hardwired to ‘1’ to indicate the presence of the CONFIG1 register
bit 30-28 K23<2:0>: Cacheability of the kseg2 and kseg3 Segments bits
010 = Cache is not implemented
bit 27-25 KU<2:0>: Cacheability of the kuseg and useg Segments bits
010 = Cache is not implemented
bit 24-23 Reserved: Must be written as zeros; returns zeros on reads
bit 22 UDI: User-Defined bit
0 = CorExtend user-defined instructions are not implemented
bit 21 SB: SimpleBE bit
1 = Only simple byte enables are allowed on the internal bus interface
bit 20 MDU: Multiply/Divide Unit bit
0 = Fast, high-performance MDU
bit 19-17 Reserved: Must be written as zeros; returns zeros on reads
bit 16 DS: Dual SRAM Interface bit
1 = Dual instruction/data SRAM interface
bit 15 BE: Endian Mode bit
0 = Little-endian
bit 14-13 AT<1:0>: Architecture Type bits
00 = MIPS32®
bit 12-10 AR<2:0>: Architecture Revision Level bits
001 = MIPS32 Release 2
bit 9-7 MT<2:0>: MMU Type bits
011 = Fixed mapping
bit 6-3 Reserved: Must be written as zeros; returns zeros on reads
bit 2-0 K0<2:0>: kseg0 Coherency Algorithm bits
010 = Cache is not implemented
bit 31 Reserved: This bit is hardwired to a ‘1’ to indicate the presence of the CONFIG2 register
bit 30-5 Unimplemented: Read as ‘0’
bit 4 PC: Performance Counter bit
1 = The processor core contains performance counters
bit 3 WR: Watch Register Presence bit
0 = No Watch registers are present
bit 2 CA: Code Compression Implemented bit
0 = No MIPS16e® are present
bit 1 EP: EJTAG Present bit
1 = Core implements EJTAG
bit 0 FP: Floating-Point Unit bit
0 = Floating-Point Unit is not implemented
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
Virtual
Memory Map
0x00000000
Reserved
0x7FFFFFFF
0x80000000
4 Kbytes RAM
0x80000FFF
0x80001000
Reserved
0x9CFFFFFF
0x9D000000
16 Kbytes Flash
0x9D003FFF
kseg0
0x9D004000 Physical
Reserved
0x9F7FFFFF Memory Map
0x9F800000 0x00000000
SFRs(2) 4 Kbytes RAM
0x9F80FFFF 0x00000FFF
0x9F810000 0x00001000
Reserved Reserved
0x9FBFFFFF 0x1CFFFFFF
0x9FC00000 0x1D000000
Boot Flash(2) 16 Kbytes Flash
0x9FC016FF 0x1D003FFF
0x9FC01700 0x1D004000
Configuration Bits(2,3) Reserved
0x9FC017FF 0x1F7FFFFF
0x9FC01800 0x1F800000
Reserved SFRs
0x9FFFFFFF 0x1F80FFFF
0xA0000000 0x1F810000
4 Kbytes RAM Reserved
0xA0000FFF 0x1FBFFFFF
0xA0001000 0x1FC00000
Reserved Boot Flash
0xBCFFFFFF 0x1FC016FF
0xBD000000 0x1FC01700
16 Kbytes Flash Configuration Bits(3)
0xBD003FFF 0x1FC017FF
kseg1
0xBD004000 0x1FC01800
Reserved Reserved
0xBF7FFFFF 0xFFFFFFFF
0xBF800000
SFRs
0xBF80FFFF
0xBF810000
Reserved
0xBFBFFFFF
0xBFC00000
Boot Flash
0xBFC016FF
0xBFC01700
Configuration Bits(3)
0xBFC017FF
0xBFC01800
Reserved
0xFFFFFFFF
Virtual
Memory Map
0x00000000
Reserved
0x7FFFFFFF
0x80000000
8 Kbytes RAM
0x80001FFF
0x80002000
Reserved
0x9CFFFFFF
0x9D000000
32 Kbytes Flash
0x9D007FFF
0x9D008000 Physical
Reserved
0x9F7FFFFF Memory Map
kseg0
0x9F800000 0x00000000
SFRs(2) 8 Kbytes RAM
0x9F80FFFF 0x00001FFF
0x9F810000 0x00002000
Reserved Reserved
0x9FBFFFFF 0x1CFFFFFF
0x9FC00000 0x1D000000
Boot Flash(2) 32 Kbytes Flash
0x9FC016FF 0x1D007FFF
0x9FC01700 0x1D008000
Configuration Bits(2,3) Reserved
0x9FC017FF 0x1F7FFFFF
0x9FC01800 0x1F800000
Reserved SFRs
0x9FFFFFFF 0x1F80FFFF
0xA0000000 0x1F810000
8 Kbytes RAM Reserved
0xA0001FFF 0x1FBFFFFF
0xA0002000 0x1FC00000
Reserved Boot Flash
0xBCFFFFFF 0x1FC016FF
0xBD000000 0x1FC01700
32 Kbytes Flash Configuration Bits(3)
0xBD007FFF 0x1FC017FF
0xBD008000 0x1FC01800
Reserved Reserved
0xBF7FFFFF 0xFFFFFFFF
kseg1
0xBF800000
SFRs
0xBF80FFFF
0xBF810000
Reserved
0xBFBFFFFF
0xBFC00000
Boot Flash
0xBFC016FF
0xBFC01700
Configuration Bits(3)
0xBFC017FF
0xBFC01800
Reserved
0xFFFFFFFF
Virtual
Memory Map
0x00000000
Reserved
0x7FFFFFFF
0x80000000
8 Kbytes RAM
0x80001FFF
0x80002000
Reserved
0x9CFFFFFF
0x9D000000
64 Kbytes Flash
0x9D00FFFF
0x9D010000 Physical
Reserved
kseg0
0x9F7FFFFF Memory Map
0x9F800000 0x00000000
SFRs(2) 8 Kbytes RAM
0x9F80FFFF 0x00001FFF
0x9F810000 0x00002000
Reserved Reserved
0x9FBFFFFF 0x1CFFFFFF
0x9FC00000 0x1D000000
Boot Flash(2) 64 Kbytes Flash
0x9FC016FF 0x1D00FFFF
0x9FC01700 0x1D010000
Configuration Bits(2,3) Reserved
0x9FC017FF 0x1F7FFFFF
0x9FC01800 0x1F800000
Reserved SFRs
0x9FFFFFFF 0x1F80FFFF
0xA0000000 0x1F810000
8 Kbytes RAM Reserved
0xA0001FFF 0x1FBFFFFF
0xA0002000 0x1FC00000
Reserved Boot Flash
0xBCFFFFFF 0x1FC016FF
0xBD000000 0x1FC01700
64 Kbytes Flash Configuration Bits(3)
0xBD00FFFF 0x1FC017FF
0xBD010000 0x1FC01800
Reserved Reserved
0xBF7FFFFF 0xFFFFFFFF
kseg1
0xBF800000
SFRs
0xBF80FFFF
0xBF810000
Reserved
0xBFBFFFFF
0xBFC00000
Boot Flash
0xBFC016FF
0xBFC01700
Configuration Bits(3)
0xBFC017FF
0xBFC01800
Reserved
0xFFFFFFFF
PIC32MM0064GPL036 FAMILY
TABLE 5-1: FLASH CONTROLLER REGISTER MAP
Virtual Address
Bits
All Resets
Bit Range
(BF80_#)
Register
Name
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
31:16 — — — — — — — — — — — — — — — — 0000
2380 NVMCON(1)
15:0 WR WREN WRERR LVDERR — — — — — — — — NVMOP<3:0> 0000
31:16 0000
2390 NVMKEY NVMKEY<31:0>
15:0 0000
31:16 0000
23A0 NVMADDR(1) NVMADDR<31:0>
15:0 0000
31:16 0000
23B0 NVMDATA0 NVMDATA0<31:0>
15:0 0000
31:16 0000
23C0 NVMDATA1 NVMDATA1<31:0>
15:0 0000
31:16 0000
23D0 NVMSRCADDR NVMSRCADDR<31:0>
15:0 0000
31:16 PWPULOCK — — — — — — — PWP<23:16> 8000
23E0 NVMPWP(1)
15:0 PWP<15:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
23F0 NVMBWP(1)
15:0 BWPULOCK — — — — BWP<2:0> — — — — — — — — 8700
Legend: — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: These registers have corresponding CLR, SET and INV registers at their virtual addresses, plus offsets of 0x4, 0x8 and 0xC, respectively.
2015-2016 Microchip Technology Inc.
PIC32MM0064GPL036 FAMILY
Note 1: These bits are only reset by a Power-on Reset (POR) and are not affected by other Reset sources.
2: These bits are cleared by setting NVMOP<3:0> = 0000 and initiating a Flash operation (i.e., WR).
3: NVMOP<3:0> bits are write-protected if the WREN bit is set.
4: Writes to the WR bit require an unlock sequence. Refer to Section 5.1 “Flash Controller Registers Write
Protection” for details.
Note 1: These bits are only reset by a Power-on Reset (POR) and are not affected by other Reset sources.
2: These bits are cleared by setting NVMOP<3:0> = 0000 and initiating a Flash operation (i.e., WR).
3: NVMOP<3:0> bits are write-protected if the WREN bit is set.
4: Writes to the WR bit require an unlock sequence. Refer to Section 5.1 “Flash Controller Registers Write
Protection” for details.
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
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
NVMOP<3:0>
Flash Address Bits (NVMADDR<31:0>)
Selection
Page Erase Address identifies the page to erase (NVMADDR<10:0> are ignored).
Row Program Address identifies the row to program (NVMADDR<7:0> are ignored).
Double-Word Program Address identifies the double-word (64-bit) to program (NVMADDR<1:0> bits are ignored).
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
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
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
Note 1: Writes to this register require an NVMKEY unlock sequence. Refer to Section 5.1 “Flash Controller
Registers Write Protection” for details.
2: These bits can be modified only when the unlock bit (PWPULOCK) is set.
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
Note 1: Writes to this register require an NVMKEY unlock sequence. Refer to Section 5.1 “Flash Controller
Registers Write Protection” for details.
2: These bits can be modified only when the associated unlock bit (BWPULOCK) is set.
MCLR
MCLR
Glitch Filter
Voltage Regulator
Enabled
Power-up POR
Timer SYSRST
VDD
VDD Rise
Detect
Brown-out BOR
Reset
Configuration
Mismatch CMR
Reset
SWR
Software Reset
PIC32MM0064GPL036 FAMILY
TABLE 6-1: RESETS REGISTER MAP
Virtual Address
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
Note 1: User software must clear bits in this register to view the next detection.
2: The IDLE bit will also be set when the device wakes from Sleep mode.
Note 1: User software must clear bits in this register to view the next detection.
2: The IDLE bit will also be set when the device wakes from Sleep mode.
Note 1: The system unlock sequence must be performed before the SWRST bit can be written. Refer to
Section 23.4 “System Registers Write Protection” for details.
2: Once this bit is set, any read of the RSWRST register will cause a Reset to occur.
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
Note 1: Writes to this register require an unlock sequence. Refer to Section 23.4 “System Registers Write
Protection” for details.
2: If a Watchdog Timer NMI event (when not in Sleep mode) is cleared before this counter reaches ‘0’, no
device Reset is asserted. This NMI Reset counter is only applicable to the Watchdog Timer NMI event.
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
Note 1: Writes to this register require an unlock sequence. Refer to Section 23.4 “System Registers Write
Protection” for details.
2: Refer to Section 22.4 “On-Chip Voltage Regulator Low-Power Modes” for details.
3: This bit is enabled only when the BOREN<1:0> Configuration bits (FPOR<1:0>) are set to ‘01’.
FIGURE 7-1: CPU EXCEPTIONS AND INTERRUPT CONTROLLER MODULE BLOCK DIAGRAM
Interrupt Requests
SYSCLK
PIC32MM0064GPL036 FAMILY
CPU Coprocessor 0 contains the logic for identifying and managing exceptions. Exceptions can be caused by a variety of sources, including boundary cases in data,
external events or program errors. Table 7-1 lists the exception types in order of priority.
(ProbEn = 1 in ECR)
AdEL Load address alignment error. EBASE + 0x180 EXL — ADEL (0x04) _general_exception_handler
IBE Instruction fetch bus error. EBASE + 0x180 EXL — IBE (0x06) _general_exception_handler
DBp EJTAG breakpoint (execution of SDBBP 0xBFC0_0480 DBp — — —
instruction). (ProbEn = 0 in ECR)
0xBFC0_0200
(ProbEn = 1 in ECR)
Sys Execution of SYSCALL instruction. EBASE + 0x180 EXL — Sys (0x08) _general_exception_handler
Bp Execution of BREAK instruction. EBASE + 0x180 EXL — Bp (0x09) _general_exception_handler
TABLE 7-1: MIPS32® microAptiv™ UC MICROPROCESSOR CORE EXCEPTION TYPES (CONTINUED)
2015-2016 Microchip Technology Inc.
Exception Type
Status Debug Bits
(In Order of Description Branches to EXCCODE XC32 Function Name
Bits Set Set
Priority)
CpU Execution of a coprocessor instruction for a EBASE + 0x180 CU, EXL — CpU (0x0B) _general_exception_handler
coprocessor that is not enabled.
Tr Execution of a trap (when trap condition is true). EBASE + 0x180 EXL — Tr (0x0D) _general_exception_handler
DDBL EJTAG data address break (address only) or 0xBFC0_0480 — DDBL for a — —
EJTAG data value break on load (address and (ProbEn = 0 in ECR) load
value). 0xBFC0_0200 instruction
(ProbEn = 1 in ECR) or DDBS for
PIC32MM0064GPL036 FAMILY
a store
instruction
DDBS EJTAG data address break (address only) or 0xBFC0_0480 — DDBL for a — —
EJTAG data value break on store (address and (ProbEn = 0 in ECR) load
value). 0xBFC0_0200 instruction
(ProbEn = 1 in ECR) or DDBS for
a store
instruction
AdES Store address alignment error. EBASE + 0x180 EXL — ADES _general_exception_handler
(0x05)
DBE Load or store bus error. EBASE + 0x180 EXL — DBE (0x07) _general_exception_handler
CBrk EJTAG complex breakpoint. 0xBFC0_0480 — DIBImpr, — —
(ProbEn = 0 in ECR) DDBLImpr
0xBFC0_0200 and/or
(ProbEn = 1 in ECR) DDBSImpr
Lowest Priority
DS60001324B-page 53
7.2 Interrupts
DS60001324B-page 54
PIC32MM0064GPL036 FAMILY
The PIC32MM0064GPL036 family uses fixed offset for vector spacing. For details, refer to Section 8. “Interrupts” (DS60001108) in the “PIC32 Family Reference
Manual”. Table 7-2 provides the interrupt related vectors and bits information.
PIC32MM0064GPL036 FAMILY
RESERVED — 36 — — — — —
SPI2 Error _SPI2_ERR_VECTOR 37 IFS1<5> IEC1<5> IPC9<12:10> IPC9<9:8> Yes
SPI2 Transmission _SPI2_TX_VECTOR 38 IFS1<6> IEC1<6> IPC9<20:18> IPC9<17:16> Yes
SPI2 Reception _SPI2_RX_VECTOR 39 IFS1<7> IEC1<7> IPC9<28:26> IPC9<25:24> Yes
UART2 Reception _UART2_RX_VECTOR 40 IFS1<8> IEC1<8> IPC10<4:2> IPC10<1:0> Yes
UART2 Transmission _UART2_TX_VECTOR 41 IFS1<9> IEC1<9> IPC10<12:10> IPC10<9:8> Yes
UART2 Error _UART2_ERR_VECTOR 42 IFS1<10> IEC1<10> IPC10<20:18> IPC10<17:16> Yes
NVM Program or Erase Complete _NVM_VECTOR 46 IFS1<14> IEC1<14> IPC11<20:18> IPC11<17:16> Yes
Core Performance Counter _PERFORMANCE_COUNTER_VECTOR 47 IFS1<15> IEC1<15> IPC11<28:26> IPC11<25:24> No
DS60001324B-page 55
DS60001324B-page 56
PIC32MM0064GPL036 FAMILY
TABLE 7-3:
Virtual Address INTERRUPT REGISTER MAP
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
F170 IPC3
15:0 — — — CMP2IP<2:0> CMP2IS<1:0> — — — CMP1IP<2:0> CMP1IS<1:0> 0000
31:16 — — — CLC2IP<2:0> CLC2IS<1:0> — — — CLC1IP<2:0> CLC1IS<1:0> 0000
F180 IPC4
15:0 — — — LVDIP<2:0> LVDIS<1:0> — — — CRCIP<2:0> CRCIS<1:0> 0000
31:16 — — — U1RXIP<2:0> U1RXIS<1:0> — — — SPI1RXIP<2:0> SPI1RXIS<1:0> 0000
F190 IPC5
15:0 — — — SPI1TXIP<2:0> SPI1TXIS<1:0> — — — SPI1EIP<2:0> SPI1EIS<1:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
F1A0 IPC6
15:0 — — — U1EIP<2:0> U1EIS<1:0> — — — U1TXIP<2:0> U1TXIS<1:0> 0000
31:16 CCP2IP<2:0> CCP2IS<1:0> — — — CCT1IP<2:0> CCT1IS<1:0> 0000
F1B0 IPC7
15:0 — — — CCP1IP<2:0> CCP1IS<1:0> — — — — — — — — 0000
Legend: — = 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 address, plus an offset of 0x4, 0x8 and 0xC, respectively.
2: These bits are not available on 20-pin devices.
TABLE 7-3: INTERRUPT REGISTER MAP (CONTINUED)
2015-2016 Microchip Technology Inc.
Virtual Address
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
PIC32MM0064GPL036 FAMILY
DS60001324B-page 57
PIC32MM0064GPL036 FAMILY
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
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-28 PRI7SS<3:0>: Interrupt with Priority Level 7 Shadow Set bits(1)
11111 = Reserved
•
•
•
0010 = Reserved
0001 = Interrupt with a priority level of 7 uses Shadow Set 1
0000 = Interrupt with a priority level of 7 uses Shadow Set 0
bit 27-24 PRI6SS<3:0>: Interrupt with Priority Level 6 Shadow Set bits(1)
1111 = Reserved
•
•
•
0010 = Reserved
0001 = Interrupt with a priority level of 6 uses Shadow Set 1
0000 = Interrupt with a priority level of 6 uses Shadow Set 0
Note 1: This value should only be used when the interrupt controller is configured for Single Vector mode.
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
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
Note 1: This register represents a generic definition of the IFSx register. Refer to Table 7-3 for the exact bit
definitions.
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
Note 1: This register represents a generic definition of the IECx register. Refer to Table 7-3 for the exact bit
definitions.
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
Note 1: This register represents a generic definition of the IPCx register. Refer to Table 7-3 for the exact bit
definitions.
Note 1: This register represents a generic definition of the IPCx register. Refer to Table 7-3 for the exact bit
definitions.
Reference Clock
2 MHz ≤ FIN ≤ 24 MHz REFO1CON REFO1TRIM
16 MHz ≤ FVCO ≤ 96 MHz
REFCLKI ROTRIM<8:0> (M) OE
POSC
System PLL FRC M
LPRC 2 N + ---------
-
512
FIN(1) SOSC
Fvco(1) SPLLVCO REFCLKO
PLL x M
PLLODIV<2:0> SYSCLK RODIV<14:0> (N)
(N)
PLLMULT<6:0> To MCCP, SCCP
PLLICLK (M) FPLL(1) and SPIx
N
ROSEL<3:0>
Primary SPLL
Oscillator (POSC)
POSC (HS, EC)
OSC1/
CLKI
POSCMOD<1:0>
OSC2
To ADC, WDT, UART
and Flash Controller
TUN<5:0> FRCDIV<2:0>
(N)
FNOSC<2:0> NOSC<2:0>
COSC<2:0>
FCKSM<1:0> OSWEN
To Timer1, WDT, RTCC
Note 1: Refer to Table 26-18 in Section 26.0 “Electrical Characteristics” for frequency limitations.
Bits
All Resets(1)
Bit Range
(BF80_#)
Register
Name(2)
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
PIC32MM0064GPL036 FAMILY
21D0 CLKSTAT
15:0 — — — — — — — — SPLLRDY — LPRCRDY SOSCRDY — POSCRDY SPDIVRDY FRCRDY 0000
31:16 — — — — — — — — — — — — — — — — 0000
2200 OSCTUN
15:0 — — — — — — — — — — TUN<5:0> 0000
Legend: x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: Reset values are dependent on the FOSCSEL Configuration bits and the type of Reset.
2: All registers in this table have corresponding CLR, SET and INV registers at their virtual address, plus an offset of 0x4, 0x8 and 0xC, respectively.
DS60001324B-page 67
PIC32MM0064GPL036 FAMILY
REGISTER 8-1: OSCCON: OSCILLATOR CONTROL REGISTER(1)
Legend: HS = Hardware Settable bit y = Value set from Configuration bits on Reset
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
Note 1: Writes to this register require an unlock sequence. Refer to Section 23.4 “System Registers Write
Protection” for details.
2: The Reset value for this bit depends on the setting of the IESO (FOSCSEL<7>) Configuration bit. When
IESO = 1, the Reset value is ‘1’. When IESO = 0, the Reset value is ‘0’.
3: The Reset value for these bits matches the setting of the FNOSC<2:0> (FOSCSEL<2:0>) Configuration
bits.
4: The Reset value for this bit matches the setting of the SOSCEN (FOSCSEL<6>) Configuration bit.
Note 1: Writes to this register require an unlock sequence. Refer to Section 23.4 “System Registers Write
Protection” for details.
2: The Reset value for this bit depends on the setting of the IESO (FOSCSEL<7>) Configuration bit. When
IESO = 1, the Reset value is ‘1’. When IESO = 0, the Reset value is ‘0’.
3: The Reset value for these bits matches the setting of the FNOSC<2:0> (FOSCSEL<2:0>) Configuration
bits.
4: The Reset value for this bit matches the setting of the SOSCEN (FOSCSEL<6>) Configuration bit.
Note 1: Writes to this register require an unlock sequence. Refer to Section 23.4 “System Registers Write
Protection” for details. All bits in this register must be modified only if the PLL is not used.
Note 1: Do not write to this register when the ON bit is not equal to the ACTIVE bit.
2: This bit is ignored when the ROSEL<3:0> bits = 0000.
3: The ROSEL<3:0> bits should not be written while the ACTIVE bit is ‘1’, as undefined behavior may result.
Note 1: Do not write to this register when the ON bit is not equal to the ACTIVE bit.
2: This bit is ignored when the ROSEL<3:0> bits = 0000.
3: The ROSEL<3:0> bits should not be written while the ACTIVE bit is ‘1’, as undefined behavior may result.
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
Note 1: While the ON bit (REFO1CON<15>) is ‘1’, writes to this register do not take effect until the DIVSWEN bit
is also set to ‘1’.
2: Do not write to this register when the ON bit (REFO1CON<15>) is not equal to the ACTIVE bit
(REFO1CON<8>).
3: Specified values in this register do not take effect if RODIV<14:0> (REFO1CON<30:16>) = 0.
Bit
Bit Bit Bit Bit Bit Bit Bit Bit
30/22/14/
Range 31/23/15/7 29/21/13/5 28/20/12/4 27/19/11/3 26/18/10/2 25/17/9/1 24/16/8/0
6
U-0 U-0 U-0 U-0 U-0 U-0 U-0 U-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-0, HS, HC U-0 R-0, HS, HC R-0, HS, HC U-0 R-0, HS, HC R-0, HS, HC R-0, HS, HC
7:0
SPLLRDY — LPRCRDY SOSCRDY — POSCRDY SPDIVRDY FRCRDY
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
Note 1: Writes to this register require an unlock sequence. Refer to Section 23.4 “System Registers Write
Protection” for details.
2: 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.
WR TRISx CK
TRISx Latch
D Q
WR LATx +
CK
WR PORTx
Data Latch
Read LATx
Input Data
Read PORTx
RP1R<3:0>
Default
0
U2TX Output
1
SDO2 Output
2
RP1
Output Data
CLC2OUT
9
PIC32MM0064GPL036 FAMILY
TABLE 9-4: PORTA REGISTER MAP
Virtual Address
Bits
Bit Range
(BF80_#)
Register
Name(3)
Resets
All
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
31:16 — — — — — — — — — — — — — — — — 0000
2600 ANSELA
15:0 — — — — — — — — — — — — ANSA<3:0> 000F
31:16 — — — — — — — — — — — — — — — — 0000
2610 TRISA
15:0 — — — — — — TRISA9(1,2) — — — — TRISA<4:0> 021F
31:16 — — — — — — — — — — — — — — — — 0000
2620 PORTA
15:0 — — — — — — RA9(1,2) — — — — RA<4:0> xxxx
31:16 — — — — — — — — — — — — — — — — 0000
2630 LATA
15:0 — — — — — — LATA9(1,2) — — — — LATA<4:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
2640 ODCA
15:0 — — — — — — ODCA9(1,2) — — — — ODCA<4:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
2650 CNPUA
15:0 — — — — — — CNPUA9(1,2) — — — — CNPUA<4:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
2660 CNPDA
15:0 — — — — — — CNPDA9(1,2) — — — — CNPDA<4:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
2670 CNCONA
15:0 ON — — — CNSTYLE — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — — — — — — 0000
2680 CNEN0A
15:0 — — — — — — CNIEA9(1,2) — — — — CNIEA<4:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
2690 CNSTATA
15:0 — — — — — — CNSTATA9(1,2) — — — — CNSTATA<4:0>
2015-2016 Microchip Technology Inc.
0000
31:16 — — — — — — — — — — — — — — — — 0000
26A0 CNEN1A
15:0 — — — — — — CNIE1A9(1,2) — — — — CNIE1A<4:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
26B0 CNFA
15:0 — — — — — — CNFA9(1,2) — — — CNFA<4:0> 0000
Legend: x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: These bits are not implemented in 20-pin devices.
2: These bits are not implemented in 28-pin devices.
3: All registers in this table have corresponding CLR, SET and INV registers at their virtual address, plus an offset of 0x4, 0x8 and 0xC, respectively.
2015-2016 Microchip Technology Inc.
Bits
Bit Range
(BF80_#)
Register
Name(2)
Resets
All
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
31:16 — — — — — — — — — — — — — — — — 0000
2700 ANSELB
15:0 ANSB<15:12> — — — — — — — — ANSB<3:0>(1) F00F
31:16 — — — — — — — — — — — — — — — — 0000
2710 TRISB
15:0 TRISB<15:0>(1) FFFF
31:16 — — — — — — — — — — — — — — — — 0000
2720 PORTB
15:0 RB<15:0>(1) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2730 LATB
15:0 LATB<15:0>(1) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2740 ODCB
PIC32MM0064GPL036 FAMILY
15:0 ODCB<15:0>(1) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2750 CNPUB
15:0 CNPUB<15:0>(1) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2760 CNPDB
15:0 CNPDB<15:0>(1) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2770 CNCONB
15:0 ON — — — CNSTYLE — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — — — — — — 0000
2780 CNEN0B
15:0 CNIEB<15:0>(1) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2790 CNSTATB
15:0 CNSTATB<15:0>(1) 0000
31:16 — — — — — — — — — — — — — — — — 0000
27A0 CNEN1B
15:0 CNIE1B<15:0>(1) 0000
31:16 — — — — — — — — — — — — — — — — 0000
27B0 CNFB
15:0 CNFB<15:0>(1) 0000
Legend: — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: Bits<11:10,6:5,3> are not implemented in 20-pin devices.
2: All registers in this table have corresponding CLR, SET and INV registers at their virtual address, plus an offset of 0x4, 0x8 and 0xC, respectively.
DS60001324B-page 83
DS60001324B-page 84
PIC32MM0064GPL036 FAMILY
TABLE 9-6:
Virtual Address PORTC REGISTER MAP
Bits
Bit Range
(BF80_#)
Register
Name(3)
Resets
All
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
31:16 — — — — — — — — — — — — — — — — 0000
2800 ANSELC
15:0 — — — — — — — — — — — — — — ANSC<1:0>(1,2) 0003
31:16 — — — — — — — — — — — — — — — — 0000
2810 TRISC
15:0 — — — — — — TRISC<9:8>(1,2) — — — — TRISC<3:0>(1,2) 030F
31:16 — — — — — — — — — — — — — — — — 0000
2820 PORTC
15:0 — — — — — — RC<9:8>(1,2) — — — — RC<3:0>(1,2) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2830 LATC
15:0 — — — — — — LATC<9:8>(1,2) — — — — LATC<3:0>(1,2) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2840 ODCC
15:0 — — — — — — ODCC<9:8>(1,2) — — — — ODCC<3:0>(1,2) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2850 CNPUC
15:0 — — — — — — CNPUC<9:8>(1,2) — — — — CNPUC<3:0>(1,2) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2860 CNPDC
15:0 — — — — — — CNPDC<9:8>(1,2) — — — — CNPDC<3:0>(1,2) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2870 CNCONC
15:0 ON(1) — — — CNSTYLE(1) — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — — — — — — 0000
2880 CNEN0C
15:0 — — — — — — CNIE0C<9:8>(1,2) — — — — CNIE0C<3:0>(1,2) 0000
31:16 — — — — — — — — — — — — — — — — 0000
2890 CNSTATC
15:0 — — — — — — CNSTATC<9:8>(1,2) — — — — CNSTATC<3:0>(1,2) 0000
31:16 — — — — — — — — — — — — — — — — 0000
28A0 CNEN1C
2015-2016 Microchip Technology Inc.
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
31:16 — — — — — — — — — — — — — — — — 0000
2480 RPCON
15:0 — — — — IOLOCK — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — — — — — — 0000
24A0 RPINR1
15:0 INT4R<4:0> 0000
31:16 — — — ICM2R<4:0> — — — ICM1R<4:0> 0000
24B0 RPINR2
15:0 — — — — — — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — — — — — — 0000
24C0 RPINR3
15:0 — — — — — — — — — — — ICM3R<4:0> 0000
31:16 — — — OCFBR<4:0> — — — OCFAR<4:0> 0000
24E0 RPINR5
PIC32MM0064GPL036 FAMILY
15:0 — — — — — — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — — — — — — 0000
24F0 RPINR6
15:0 TCKIBR<4:0> — — — TCKIAR<4:0> 0000
31:16 — — — U2CTSR<4:0> — — — U2RXR<4:0> 0000
2520 RPINR9
15:0 — — — — — — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — SS2INR<4:0> 0000
2540 RPINR11
15:0 — — — SCK2INR<4:0> — — — SDI2R<4:0> 0000
31:16 — — — CLCINBR<4:0> — — — CLCINAR<4:0> 0000
2550 RPINR12
15:0 — — — — — — — — — — — — — — — — 0000
31:16 RP4R<3:0> — — — — RP3R<3:0> 0000
2590 RPOR0
15:0 — — — — RP2R<3:0> — — — — RP1R<3:0> 0000
31:16 — — — — RP8R<3:0> — — — — RP7R<3:0> 0000
25A0 RPOR1
15:0 — — — — RP6R<3:0> — — — — RP5R<3:0> 0000
31:16 — — — — RP12R<3:0> — — — — RP11R<3:0> 0000
25B0 RPOR2
15:0 — — — — RP10R<3:0> — — — — RP9R<3:0> 0000
31:16 — — — — RP16R<3:0> — — — — RP15R<3:0> 0000
25C0 RPOR3
15:0 — — — — RP14R<3:0> — — — — RP13R<3:0> 0000
DS60001324B-page 85
REGISTER 9-1: CNCONx: CHANGE NOTIFICATION CONTROL FOR PORTx REGISTER (x = A-C)
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
PR1
Equal
Trigger TSYNC
16-Bit Comparator
to ADC
1 Sync
TMR1
Reset
0
0
T1IF
Event Flag 1 Q D TGATE
Q
TGATE TCS
ON
SOSC 00 x1
T1CK 01 Prescaler
Gate
LPRC 10 Sync 10 1, 8, 64, 256
TECS<1:0>
PBCLK 00
(1:1 with SYSCLK) 2
TCKPS<1:0>
PIC32MM0064GPL036 FAMILY
10.1 Timer1 Control Register
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
31:16 — — — — — — — — — — — — — — — — 0000
8000 T1CON
15:0 ON — SIDL TWDIS TWIP — TECS<1:0> TGATE — TCKPS<1:0> — TSYNC TCS — 0000
31:16 — — — — — — — — — — — — — — — — 0000
8010 TMR1
15:0 TMR1<15:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
8020 PR1
15:0 PR1<15:0> FFFF
Legend: — = 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.
2015-2016 Microchip Technology Inc.
PIC32MM0064GPL036 FAMILY
REGISTER 10-1: T1CON: TIMER1 CONTROL REGISTER
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
11.0 WATCHDOG TIMER (WDT) When enabled, the Watchdog Timer (WDT) can be
used to detect system software malfunctions by
Note: This data sheet summarizes the features resetting the device if the WDT is not cleared
of the PIC32MM0064GPL036 family of periodically in software. Various WDT time-out periods
devices. It is not intended to be a can be selected using the WDT postscaler. The WDT
comprehensive reference source. To can also be used to wake the device from Sleep or Idle
complement the information in this data mode.
sheet, refer to Section 62. “Dual Watch- Some of the key features of the WDT module are:
dog Timer” (DS60001365) in the “PIC32
Family Reference Manual”, which is • Configuration or Software Controlled
available from the Microchip web site • User-Configurable Time-out Period
(www.microchip.com/PIC32). The infor- • Different Time-out Periods for Run and Sleep/Idle
mation in this data sheet supersedes the modes
information in the FRM. • Operates from LPRC Oscillator in Sleep/Idle
modes
• Different Clock Sources for Run mode
• Can Wake the Device from Sleep or Idle
Power Save
Mode WDT
LPRC Oscillator
Power Save 25-Bit Counter Comparator Wake-up and
NMI
CLKSEL<1:0> Reset
Power Save
ON SLPDIV<4:0>
Run Mode WDT
SYSCLK
00
Reserved NMI and Start
01 Power Save 25-Bit Counter Comparator
NMI Counter
FRC Oscillator
10
LPRC Oscillator
11 Reset RUNDIV<4:0>
WDTCLRKEY<15:0> = 5743h
ON
All Resets
System Clock Switching
PIC32MM0064GPL036 FAMILY
11.1 Watchdog Timer Control Registers
Bits
All Resets
Bit Range
(BF80_#)
Register
Name
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
CCPxIF
CCTxIF
External Input Capture
Capture CCP Sync Out
Input
Special Event Trigger Out (ADC)
Auxiliary Output
T32
CCSEL
Compare/PWM
MOD<3:0> Output(s)
Output Compare/
16/32-Bit PWM
Sync and
Timer
Gating
Sources
OCFA/OCFB
Bits
Bit Range
(BF80_#)
Register
Name(1)
Resets
All
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
PIC32MM0064GPL036 FAMILY
31:16 CCP1 PRH<15:0> 0000
0150 CCP1PR
15:0 CCP1 PRL<15:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
0160 CCP1RA
15:0 CMPA<15:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
0170 CCP1RB
15:0 CMPB<15:0> 0000
31:16 CCP1 BUFH<15:0> 0000
0180 CCP1BUF
15:0 CCP1 BUFL<15:0> 0000
31:16 OPSSRC RTRGEN — — OPS<3:0> TRIGEN ONESHOT ALTSYNC SYNC<4:0> 0000
0200 CCP2CON1
15:0 ON — SIDL CCPSLP TMRSYNC CLKSEL<2:0> TMRPS<1:0> T32 CCSEL MOD<3:0> 0000
31:16 OENSYNC — — — — — — OCAEN ICGSM<1:0> — AUXOUT<1:0> ICS<2:0> 0100
0210 CCP2CON2
15:0 PWMRSEN ASDGM — SSDG — — — — ASDG<7:0> 0000
31:16 OETRIG — — — — — — — — — POLACE — PSSACE<1:0> — — 0000
0220 CCP2CON3
15:0 — — — — — — — — — — — — — — — — 0000
0230 CCP2STAT 31:16 — — — — — — — — — — — PRLWIP TMRHWIP TMRLWIP RBWIP RAWIP 0000
15:0 — — — — — ICGARM — — CCPTRIG TRSET TRCLR ASEVT SCEVT ICDIS ICOV ICBNE 0000
31:16 CCP2 TMRH<15:0> 0000
DS60001324B-page 97
0240 CCP2TMR
15:0 CCP2 TMRL<15:0> 0000
31:16 CCP2 PRH<15:0> 0000
0250 CCP2PR
15:0 CCP2 PRL<15:0> 0000
Legend: — = 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 address, plus an offset of 0x4, 0x8 and 0xC, respectively.
TABLE 12-1: MCCP/SCCP REGISTER MAP (CONTINUED)
DS60001324B-page 98
PIC32MM0064GPL036 FAMILY
Virtual Address
Bits
Bit Range
(BF80_#)
Register
Name(1)
Resets
All
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
31:16 — — — — — — — — — — — — — — — — 0000
0260 CCP2RA
15:0 CMPA<15:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
0270 CCP2RB
15:0 CMPB<15:0> 0000
31:16 CCP2 BUFH<15:0> 0000
0280 CCP2BUF
15:0 CCP2 BUFL<15:0> 0000
31:16 OPSSRC RTRGEN — — OPS<3:0> TRIGEN ONESHOT ALTSYNC SYNC<4:0> 0000
0300 CCP3CON1
15:0 ON — SIDL CCPSLP TMRSYNC CLKSEL<2:0> TMRPS<1:0> T32 CCSEL MOD<3:0> 0000
31:16 OENSYNC — — — — — — OCAEN ICGSM<1:0> — AUXOUT<1:0> ICS<2:0> 0100
0310 CCP3CON2
15:0 PWMRSEN ASDGM — SSDG — — — — ASDG<7:0> 0000
31:16 OETRIG OSCNT<2:0> — — — — — — POLACE — PSSACE<1:0> — — 0000
0320 CCP3CON3
15:0 — — — — — — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — PRLWIP TMRHWIP TMRLWIP RBWIP RAWIP 0000
0330 CCP3STAT
15:0 — — — — — ICGARM — — CCPTRIG TRSET TRCLR ASEVT SCEVT ICDIS ICOV ICBNE 0000
31:16 CCP3 TMRH<15:0> 0000
0340 CCP3TMR
15:0 CCP3 TMRL<15:0> 0000
31:16 CCP3 PRH<15:0> 0000
0350 CCP3PR
15:0 CCP3 PRL<15:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
0360 CCP3RA
15:0 CMPA<15:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
0370 CCP3RB
15:0 CMPB<15:0> 0000
2015-2016 Microchip Technology Inc.
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
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
Note 1: OCFEN through OCBEN (bits<29:25>) are implemented in MCCP modules only.
Note 1: OCFEN through OCBEN (bits<29:25>) are implemented in MCCP modules only.
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
Note 1: This is not a physical bit location and will always read as ‘0’. A write of ‘1’ will initiate the hardware event.
Note 1: This is not a physical bit location and will always read as ‘0’. A write of ‘1’ will initiate the hardware event.
Internal
Data Bus
SPIxBUF
Read Write
FIFOs Share Address SPIxBUF
Transmit
Receive
SPIxSR
SDIx bit 0
Note: Access the SPIxTXB and SPIxRXB FIFOs via the SPIxBUF register.
PIC32MM0064GPL036 FAMILY
13.1 SPI Control Registers
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
31:16 FRMEN FRMSYNC FRMPOL MSSEN FRMSYPW FRMCNT<2:0> MCLKSEL — — — — — SPIFE ENHBUF 0000
8080 SPI1CON
15:0 ON — SIDL DISSDO MODE32 MODE16 SMP CKE SSEN CKP MSTEN DISSDI STXISEL<1:0> SRXISEL<1:0> 0000
31:16 — — — RXBUFELM<4:0> — — — TXBUFELM<4:0> 0000
8090 SPI1STAT
15:0 — — — FRMERR SPIBUSY — — SPITUR SRMT SPIROV SPIRBE — SPITBE — SPITBF SPIRBF 0008
31:16 0000
80A0 SPI1BUF DATA<31:0>
15:0 0000
31:16 — — — — — — — — — — — — — — — — 0000
80B0 SPI1BRG
15:0 — — — BRG<12:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
80C0 SPI1CON2
15:0 SPISGNEXT — — FRMERREN SPIROVEN SPITUREN IGNROV IGNTUR AUDEN — — — AUDMONO — AUDMOD<1:0> 0000
31:16 FRMEN FRMSYNC FRMPOL MSSEN FRMSYPW FRMCNT<2:0> MCLKSEL — — — — — SPIFE ENHBUF 0000
8100 SPI2CON
15:0 ON — SIDL DISSDO MODE32 MODE16 SMP CKE SSEN CKP MSTEN DISSDI STXISEL<1:0> SRXISEL<1:0> 0000
31:16 — — — RXBUFELM<4:0> — — — TXBUFELM<4:0> 0000
8110 SPI2STAT
15:0 — — — FRMERR SPIBUSY — — SPITUR SRMT SPIROV SPIRBE — SPITBE — SPITBF SPIRBF 0008
31:16 0000
8120 SPI2BUF DATA<31:0>
15:0 0000
31:16 — — — — — — — — — — — — — — — — 0000
8130 SPI2BRG
15:0 — — — BRG<12:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
8140 SPI2CON2
2015-2016 Microchip Technology Inc.
15:0 SPISGNEXT — — FRMERREN SPIROVEN SPITUREN IGNROV IGNTUR AUDEN — — — AUDMONO — AUDMOD<1:0> 0000
Legend: — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: All registers in this table, except SPIxBUF, have corresponding CLR, SET and INV registers at their virtual addresses, plus offsets of 0x4, 0x8 and 0xC, respectively.
PIC32MM0064GPL036 FAMILY
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
Note 1: These bits can only be written when the ON bit = 0. Refer to Section 26.0 “Electrical Characteristics” for
maximum clock frequency requirements.
2: This bit is not used in the Framed SPI mode. The user should program this bit to ‘0’ for the Framed SPI
mode (FRMEN = 1).
3: When AUDEN = 1, the SPI/I2S module functions as if the CKP bit is equal to ‘1’, regardless of the actual
value of the CKP bit.
4: These bits are present for legacy compatibility and are superseded by PPS functionality on these devices
(see Section 9.8 “Peripheral Pin Select (PPS)” for more information).
Note 1: These bits can only be written when the ON bit = 0. Refer to Section 26.0 “Electrical Characteristics” for
maximum clock frequency requirements.
2: This bit is not used in the Framed SPI mode. The user should program this bit to ‘0’ for the Framed SPI
mode (FRMEN = 1).
3: When AUDEN = 1, the SPI/I2S module functions as if the CKP bit is equal to ‘1’, regardless of the actual
value of the CKP bit.
4: These bits are present for legacy compatibility and are superseded by PPS functionality on these devices
(see Section 9.8 “Peripheral Pin Select (PPS)” for more information).
Note 1: These bits can only be written when the ON bit = 0. Refer to Section 26.0 “Electrical Characteristics” for
maximum clock frequency requirements.
2: This bit is not used in the Framed SPI mode. The user should program this bit to ‘0’ for the Framed SPI
mode (FRMEN = 1).
3: When AUDEN = 1, the SPI/I2S module functions as if the CKP bit is equal to ‘1’, regardless of the actual
value of the CKP bit.
4: These bits are present for legacy compatibility and are superseded by PPS functionality on these devices
(see Section 9.8 “Peripheral Pin Select (PPS)” for more information).
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
PBCLK
(1:1 with SYSCLK)
Baud Rate Generator
IrDA®
UxRTS/BCLKx
Hardware Flow Control
UxCTS
PIC32MM0064GPL036 FAMILY
14.1 UART Control Registers
Bits
All Resets
Bit Range
(BF80_#)
Register
Name
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
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
Note 1: These bits are present for legacy compatibility and are superseded by PPS functionality on these devices
(see Section 9.8 “Peripheral Pin Select (PPS)” for more information).
Note 1: These bits are present for legacy compatibility and are superseded by PPS functionality on these devices
(see Section 9.8 “Peripheral Pin Select (PPS)” for more information).
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
CLKSEL<1:0>
PWRLCLK Input Pin
Peripheral Clock
(PBCLK, 1.1 with SYSCLK)
32.768 kHz Input from
Secondary Oscillator (SOSC)
32 kHz Input from
Internal Oscillator (LPRC) TRTC
RTCC Prescalers
0.5 seconds YEAR, MTH, DAY
RTCC Timer RTCTIME/ALMTIME WKDAY
Alarm HR, MIN, SEC
Event
Comparator
MTH, DAY
Compare Registers WKDAY
RTCTIME/ALMTIME
with Masks
HR, MIN, SEC
Repeat Counter
RTCC Interrupt
Alarm Pulse
RTCC Interrupt Logic
Seconds Pulse
RTCC Pin
TRTC RTCOE
OUTSEL<2:0>
PIC32MM0064GPL036 FAMILY
TABLE 15-1: RTCC REGISTER MAP
Virtual Address
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
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
Note 1: The counter decrements on any alarm event. The counter is prevented from rolling over from ‘00’ to ‘FF’
unless CHIME = 1.
2: To clear this bit, an unlock sequence is required. Refer to Section 23.4 “System Registers Write
Protection” for details.
Note 1: The counter decrements on any alarm event. The counter is prevented from rolling over from ‘00’ to ‘FF’
unless CHIME = 1.
2: To clear this bit, an unlock sequence is required. Refer to Section 23.4 “System Registers Write
Protection” for details.
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
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
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-28 YRTEN<3:0>: Binary Coded Decimal Value of Years 10-Digit bits
bit 27-24 YRONE<3:0>: Binary Coded Decimal Value of Years 1-Digit bits
bit 23-21 Unimplemented: Read as ‘0’
bit 20 MTHTEN: Binary Coded Decimal Value of Months 10-Digit bit
Contains a value from 0 to 1.
bit 19-16 MTHONE<3:0>: Binary Coded Decimal Value of Months 1-Digit bits
Contains a value from 0 to 9.
bit 15-14 Unimplemented: Read as ‘0’
bit 13-12 DAYTEN<1:0>: Binary Coded Decimal Value of Days 10-Digit bits
Contains a value from 0 to 3.
bit 11-8 DAYONE<3:0>: Binary Coded Decimal Value of Days 1-Digit bits
Contains a value from 0 to 9.
bit 7-3 Unimplemented: Read as ‘0’
bit 2-0 WDAY<2:0>: Binary Coded Decimal Value of Weekdays Digit bits
Contains a value from 0 to 6.
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
AVDD VCFG<2:0>
AVSS ADC1BUF0
Band Gap ADC1BUF1
AN13 ADC1BUF2
AN0 VREFH VREFL
SHA
Channel
Scan + SAR ADC
CH0SA<4:0> –
CSCNA
ADC1BUF14
AVss ADC1BUF15
The ADC module has the following Special Function The AD1CSS register selects inputs to be
Registers (SFRs): sequentially scanned.
• AD1CON2: ADC Control Register 2 The AD1CHIT register indicates the channels
meeting specified comparison requirements.
• AD1CON3: ADC Control Register 3
• AD1CON5: ADC Control Register 5 Table 16-1 provides a summary of all ADC module
related registers, including their addresses and
The AD1CON1, AD1CON2, AD1CON3 and formats. Corresponding registers appear after the
AD1CON5 registers control the operation of the summary, followed by a detailed description of each
ADC module. register. All unimplemented registers and/or bits within
• AD1CHS: ADC Input Select Register a register read as zero.
The AD1CHS register selects the input pins to be
connected to the SHA.
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(3)
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
31:16 0000
0700 ADC1BUF0 ADC1BUF0<31:0>
15:0 0000
31:16 0000
0710 ADC1BUF1 ADC1BUF1<31:0>
15:0 0000
31:16 0000
0720 ADC1BUF2 ADC1BUF2<31:0>
15:0 0000
31:16 0000
0730 ADC1BUF3 ADC1BUF3<31:0>
15:0 0000
31:16 0000
0740 ADC1BUF4 ADC1BUF4<31:0>
PIC32MM0064GPL036 FAMILY
15:0 0000
31:16 0000
0750 ADC1BUF5 ADC1BUF5<31:0>
15:0 0000
31:16 0000
0760 ADC1BUF6 ADC1BUF6<31:0>
15:0 0000
31:16 0000
0770 ADC1BUF7 ADC1BUF7<31:0>
15:0 0000
31:16 0000
0780 ADC1BUF8 ADC1BUF8<31:0>
15:0 0000
31:16 0000
0790 ADC1BUF9 ADC1BUF9<31:0>
15:0 0000
31:16 0000
07A0 ADC1BUF10 ADC1BUF10<31:0>
15:0 0000
31:16 0000
07B0 ADC1BUF11 ADC1BUF11<31:0>
15:0 0000
31:16 0000
07C0 ADC1BUF12 ADC1BUF12<31:0>
15:0 0000
DS60001324B-page 135
31:16 0000
07D0 ADC1BUF13 ADC1BUF13<31:0>
15:0 0000
Legend: — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: The CSS<13:11> and CHH<13:11> bits are not implemented in 20-pin devices.
2: The CSS<13:12> and CHH<13:12> bits are not implemented in 28-pin devices.
3: All registers in this table have corresponding CLR, SET and INV registers at their virtual address, plus an offset of 0x4, 0x8 and 0xC, respectively.
TABLE 16-1: ADC REGISTER MAP (CONTINUED)
DS60001324B-page 136
PIC32MM0064GPL036 FAMILY
Virtual Address
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(3) 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
31:16 0000
07E0 ADC1BUF14 ADC1BUF14<31:0>
15:0 0000
31:16 0000
07F0 ADC1BUF15 ADC1BUF15<31:0>
15:0 0000
31:16 — — — — — — — — — — — — — — — — 0000
0800 AD1CON1
15:0 ON SIDL — — FORM<2:0> SSRC<3:0> MODE12 ASAM SAMP DONE 0000
31:16 — — — — — — — — — — — — — — — — 0000
0810 AD1CON2
15:0 VCFG<2:0> OFFCAL BUFREGEN CSCNA — — BUFS — SMPI<3:0> BUFM — 0000
31:16 — — — — — — — — — — — — — — — — 0000
0820 AD1CON3
15:0 ADRC EXTSAM — SAMC<4:0> ADCS<7:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
0840 AD1CHS
15:0 — — — — — — — — CH0NA<2:0> CH0SA<4:0> 0000
31:16 — CSS<30:28> — — — — — — — — — — — — 0000
0850 AD1CSS
15:0 — — CSS<13:0>(1,2) 0000
31:16 — — — — — — — — — — — — — — — — 0000
0870 AD1CON5
15:0 ASEN LPEN — BGREQ — — ASINT<1:0> — — — — WM<1:0> CM<1:0> 0000
31:16 — — — — — — — — — — — — — — — — 0000
0880 AD1CHIT
15:0 — — CHH<13:0>(1,2) 0000
Legend: — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: The CSS<13:11> and CHH<13:11> bits are not implemented in 20-pin devices.
2: The CSS<13:12> and CHH<13:12> bits are not implemented in 28-pin devices.
3: All registers in this table have corresponding CLR, SET and INV registers at their virtual address, plus an offset of 0x4, 0x8 and 0xC, respectively.
2015-2016 Microchip Technology Inc.
PIC32MM0064GPL036 FAMILY
Note 1: The SAMP bit is cleared and cannot be written if the ADC is disabled (ON bit = 0).
2: The DONE bit is not persistent in Automatic modes; it is cleared by hardware at the beginning of the
next sample.
Note 1: The SAMP bit is cleared and cannot be written if the ADC is disabled (ON bit = 0).
2: The DONE bit is not persistent in Automatic modes; it is cleared by hardware at the beginning of the
next sample.
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
Note 1: This bit only takes effect when the auto-scan feature is enabled (ASEN (AD1CON5<15>) = 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
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
Note 1: When auto-scan is enabled (ASEN (AD1CON5<15>) = 1), the CSCNA (AD1CON2<10>) and SMPI<3:0>
(AD1CON2<5:2>) bits are ignored.
2: The ASINT<1:0> bits setting only takes effect when ASEN (AD1CON5<15>) = 1. Interrupt generation is
governed by the SMPI<3:0> bits field.
Note 1: When auto-scan is enabled (ASEN (AD1CON5<15>) = 1), the CSCNA (AD1CON2<10>) and SMPI<3:0>
(AD1CON2<5:2>) bits are ignored.
2: The ASINT<1:0> bits setting only takes effect when ASEN (AD1CON5<15>) = 1. Interrupt generation is
governed by the SMPI<3:0> bits field.
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
Note 1: The CH0SA<4:0> positive input selection is only used when CSCNA (AD1CON2<10>) = 0 and
ASEN (AD1CON5<15>) = 0. The AD1CSS bits specify the positive inputs when CSCNA = 1 or ASEN = 1.
2: This option is not implemented in the 20-pin devices.
3: This option is not implemented in the 28-pin devices.
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
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
CRCDAT
CRCWDAT 1
CRC
LENDIAN Interrupt
0
Shift Buffer 1
CRC Shift Engine
0 Shift
Complete
Event
Shifter Clock
PBCLK
(1:1 with SYSCLK)
PIC32MM0064GPL036 FAMILY
TABLE 17-1:
Virtual Address CRC REGISTER MAP
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1) 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
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
CLCIN[0]
CLCIN[1]
CLCIN[2]
CLCIN[3]
CLCIN[4]
CLCIN[5]
CLCIN[6]
CLCIN[7]
CLCIN[8]
CLCIN[9] See Figure 18-2
Input Data Selection Gates
CLCIN[10]
CLCIN[11] LCOE
CLCIN[12] ON
Gate 1
CLCIN[13]
CLCIN[14] Gate 2 CLCx
CLCIN[15]
Logic Output
CLCIN[16] Gate 3 Function Logic CLCx
CLCIN[17]
Gate 4 Output
CLCIN[18]
CLCIN[19]
CLCIN[20]
LCPOL Interrupt
CLCIN[21] MODE<2:0> det
CLCIN[22]
CLCIN[23]
CLCIN[24] INTP Sets
CLCIN[25] CLCxIF
CLCIN[26] INTN Flag
CLCIN[27]
CLCIN[28] Interrupt
CLCIN[29] det
CLCIN[30]
CLCIN[31]
Note: All register bits shown in this figure can be found in the CLCxCON register.
AND – OR OR – XOR
Gate 1 Gate 1
Gate 2 Gate 2
Logic Output Logic Output
Gate 3 Gate 3
Gate 4 Gate 4
Gate 1 Gate 1
S Q Logic Output
Gate 2 Gate 2
Logic Output
Gate 3 Gate 3
R
Gate 4 Gate 4
Gate 4
Gate 4
S D Q Logic Output
Gate 2 D Q Logic Output Gate 2
Gate 1
Gate 1 R
R
Gate 3
Gate 3
Gate 4
Gate 2 J Q Logic Output
S
Gate 1 Gate 2 D Q Logic Output
Gate 4 K
R Gate 1 LE
Gate 3 R
Gate 3
Data Selection
CLCIN[0] 000
CLCIN[1] Data Gate 1
CLCIN[2]
CLCIN[3] Data 1 Non-Inverted G1D1T
CLCIN[4]
Data 1
CLCIN[5] Inverted G1D1N
CLCIN[6]
CLCIN[7] 111
G1D2T
DS1x (CLCxSEL<2:0>)
G1D2N Gate 1
CLCIN[8] 000
CLCIN[9] G1D3T
CLCIN[10] G1POL
CLCIN[11] Data 2 Non-Inverted (CLCxCON<16>)
G1D3N
CLCIN[12] Data 2
CLCIN[13] Inverted
CLCIN[14] G1D4T
CLCIN[15] 111
DS2x (CLCxSEL<6:4>) G1D4N
CLCIN[16] 000
CLCIN[17] Data Gate 2
CLCIN[18] Gate 2
CLCIN[19] Data 3 Non-Inverted
(Same as Data Gate 1)
CLCIN[20] Data 3
CLCIN[21] Inverted
CLCIN[22] Data Gate 3
CLCIN[23] 111
Gate 3
DS3x (CLCxSEL<10:8>)
(Same as Data Gate 1)
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
PIC32MM0064GPL036 FAMILY
15:0 — DS4<2:0> — DS3<2:0> — DS2<2:0> — DS1<2:0> 0000
32:16 G4D4T G4D4N G4D3T G4D3N G4D2T G4D2N G4D1T G4D1N G3D4T G3D4N G3D3T G3D3N G3D2T G3D2N G3D1T G3D1N 0000
0B20 CLC2GLS
15:0 G2D4T G2D4N G2D3T G2D3N G2D2T G2D2N G2D1T G2D1N G1D4T G1D4N G1D3T G1D3N G1D2T G1D2N G1D1T G1D1N 0000
Legend: — = 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 address, plus an offset of 0x4, 0x8 and 0xC, respectively.
DS60001324B-page 155
PIC32MM0064GPL036 FAMILY
Note 1: The INTP and INTN bits should not be set at the same time for proper interrupt functionality.
Note 1: The INTP and INTN bits should not be set at the same time for proper interrupt functionality.
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
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
EVPOL<1:0>
CCH<1:0>
Trigger/Interrupt CEVT
Input CPOL Logic COE
Select VIN-
Logic
00 VIN+ C1
CxINB
C1OUT
01 COUT Pin
CxINC(1) –
(1) 10
CxIND
11 EVPOL<1:0>
Band Gap
Trigger/Interrupt CEVT
CPOL Logic COE
VIN-
VIN+ C2
C2OUT
COUT Pin
0
CxINA
+
1
0
CDAC1 Output
1
VREF+ Pin
CVREFSEL
CREF
PIC32MM0064GPL036 FAMILY
19.1 Comparator Control Registers
TABLE 19-1: COMPARATOR 1 AND 2 REGISTER MAP
Virtual Address
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
REFSEL<1:0>
VREF+
AVDD DACDAT<4:0>
R Output to
Comparators
R
R
32-to-1 MUX
32 Steps
CDAC1
DACOE
R
R
R
AVSS
PIC32MM0064GPL036 FAMILY
20.1 CDAC Control Registers
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
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
Externally Generated
Trip Point
VDD
VDD
LVDIN HLVDL<3:0>
ON VDIR
16-to-1 MUX
Set
HLVDIF
Band Gap
1.2V Typical
ON
PIC32MM0064GPL036 FAMILY
21.1 High/Low-Voltage Detect Registers
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
31:16 — — — — — — — — — — — — — — — — 0000
2310 HLVDCON
15:0 ON — SIDL — VDIR BGVST IRVST HLEVT — — — — HLVDL<3:0> 0000
Legend: — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: The register in this table has corresponding CLR, SET and INV registers at its virtual address, plus offsets of 0x4, 0x8 and 0xC, respectively.
2015-2016 Microchip Technology Inc.
PIC32MM0064GPL036 FAMILY
Note 1: The voltage is typical. It is for design guidance only and not tested. Refer to Table 26-13 in Section 26.0
“Electrical Characteristics” for minimum and maximum values.
Note 1: The voltage is typical. It is for design guidance only and not tested. Refer to Table 26-13 in Section 26.0
“Electrical Characteristics” for minimum and maximum values.
22.4.1 REGULATOR STANDBY MODE and the RTCC, while all other core digital logic is
powered down. The low-voltage/retention regulator is
Whenever the device goes into Sleep mode, the regu-
available only when Sleep mode is invoked. It is con-
lator can be made to enter Standby mode. This feature
trolled by the RETVR Configuration bit (FPOR<2>) and
is controlled by the VREGS bit (PWRCON<0>). Clear-
in firmware by the RETEN bit (PWRCON<1>). RETVR
ing the VREGS bit enables Standby mode. If Standby
must be programmed to zero (= 0) and the RETEN bit
mode is used, the voltage regulator needs some time
must be set (= 1) for the retention regulator to be
to switch to normal operation mode and generate
enabled.
output. During this time, the code execution is disabled.
The delay is applied every time the device resumes
operation after Standby mode. 22.5 Low-Power Brown-out Reset
The PIC32MM0064GPL036 family devices have a
22.4.2 REGULATOR RETENTION MODE
second low-power Brown-out Reset circuit with a
When in Sleep mode, the device can use a separate reduced precision of the trip point. This low-power BOR
low-power, low-voltage/retention regulator to power circuit can be activated when the main BOR is disabled.
critical circuits. This regulator, which operates at 1V The circuit is enabled by programming the LPBOREN
nominal, maintains power to data RAM, WDT, Timer1 Configuration bit (FPOR<3>) to ‘1’.
PIC32MM0064GPL036 FAMILY
TABLE 22-3:
Virtual Address PERIPHERAL MODULE DISABLE REGISTER MAP
Bits
All Resets
Bit Range
(BF80_#)
Register
Name(1)
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
31:16 — — — — — — — — — — — — — — — — 0000
2C00 PMDCON
15:0 — — — — PMDLOCK — — — — — — — — — — — 0000
31:16 — — — — — — — — — — — HLVDMD — — — — FFEF
2C10 PMD1
15:0 — — — VREFMD — — — — — — — — — — — ADCMD EFFE
31:16 — — — — — — CLC2MD CLC1MD — — — — — — — — FCFF
2C20 PMD2
15:0 — — — — — — — — — — — — — — CMP2MD CMP1MD FFFC
31:16 — — — — — — — — — — — — — — — — FFFF
2C30 PMD3
15:0 — — — — — CCP3MD CCP2MD CCP1MD — — — — — — — — F8FF
31:16 — — — — — — — — — — — — — — — — FFFF
2C40 PMD4
15:0 — — — — — — — — — — — — — — — T1MD FFFE
31:16 — — — — — — — — — — — — — — r r FFFC
2C50 PMD5
15:0 — — — — — — SPI2MD SPI1MD — — — — — — U2MD U1MD FCFC
31:16 — — — — — — — — — — — — — — — — FFFF
2C60 PMD6
15:0 — — — — — — — REFOMD — — — — — — — RTCCMD FEFE
31:16 — — — — — — — — — — — — — — — — FFFF
2C70 PMD7
15:0 — — — — — — — — — — — — CRCMD — — — FFF7
Legend: — = unimplemented, read as ‘1’; r = reserved bit, maintain as ‘1’. 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.
2015-2016 Microchip Technology Inc.
PIC32MM0064GPL036 FAMILY
23.0 SPECIAL FEATURES 23.4 System Registers Write Protection
Note: This data sheet summarizes the features The critical registers in the PIC32MM0064GPL036 family
of the PIC32MM0064GPL036 family of devices are protected (locked) from an accidental write.
devices. However, it is not intended to be If the registers are locked, a special unlock sequence is
a comprehensive reference source. To required to modify the content of these registers.
complement the information in this data To unlock the registers, the following steps should be
sheet, refer to Section 33. “Programming done:
and Diagnostics” (DS61129) in the
1. Disable interrupts prior to the system unlock
“PIC32 Family Reference Manual”, which is
sequence.
available from the Microchip web site
(www.microchip.com/PIC32). The informa- 2. Execute the system unlock sequence by writing
tion in this data sheet supersedes the the key values of 0xAA996655 and
information in the FRM. 0x556699AA to the SYSKEY register, in two
back-to-back assembly or ‘C’ instructions.
3. Write the new value to the required register.
23.1 Configuration Bits
4. Write a non-key value (such as 0x00000000) to
PIC32MM0064GPL036 family devices contain a the SYSKEY register to perform a lock.
Boot Flash Memory (BFM) with an associated config- 5. Re-enable interrupts.
uration space. All Configuration Words are listed in
The registers that require this unlocking sequence are
Table 23-3 and Table 23-4; Register 23-1 through
listed in Table 23-2.
Register 23-6 describe the configuration options.
TABLE 23-2: SYSTEM LOCKED REGISTERS
23.2 Code Execution from RAM
Register
PIC32MM0064GPL036 family devices allow executing Register Description Peripheral
Name
the code from RAM. The starting boundary of this
special RAM space can be adjusted using the OSCCON Oscillator Control Oscillator
EXECADDR<7:0> bits in the CFGCON register with a SPLLCON System PLL Control Oscillator
1-Kbyte step. Writing a non-zero value to these bits will OSCTUN FRC Tuning Oscillator
move the boundary, effectively reducing the total
PMDCON Peripheral Module PMD
amount of program memory space in RAM. Refer to
Disable Control
Table 23-5 and Register 23-7 for more information.
RSWRST Software Reset Reset
23.3 Device ID RPCON Peripheral Pin Select I/O Ports
Configuration
The Device ID identifies the device used. The ID can be
RNMICON Non-Maskable Interrupt Reset
read from the DEVID register. The Device IDs for
Control
PIC32MM0064GPL036 family devices are listed in
Table 23-1. Also refer to Table 23-5 and Register 23-8 PWRCON Power Control Reset
for more information. RTCCON1 RTCC Control 1 RTCC
The SYSKEY register read value indicates the status.
TABLE 23-1: DEVICE IDs FOR
A value of ‘0’ indicates the system registers are locked.
PIC32MM0064GPL036 FAMILY
A value of ‘1’ indicates the system registers are
DEVICES unlocked. For more information about the SYSKEY
Device DEVID register, refer to Table 23-5 and Register 23-9.
PIC32MM0016GPL020 0x06B04053
PIC32MM0032GPL020 0x06B0C053
PIC32MM0064GPL020 0x06B14053
PIC32MM0016GPL028 0x06B02053
PIC32MM0032GPL028 0x06B0A053
PIC32MM0064GPL028 0x06B12053
PIC32MM0016GPL036 0x06B06053
PIC32MM0032GPL036 0x06B0E053
PIC32MM0064GPL036 0x06B16053
Bits
Bit Range
(BFC0_#)
Register
Name
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
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17C0 RESERVED
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
31:16 USERID<15:0>
17C4 FDEVOPT
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 SOSCHP r-1 r-1 r-1
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17C8 FICD
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 ICS<1:0> JTAGEN r-1 r-1
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17CC FPOR
PIC32MM0064GPL036 FAMILY
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 LPBOREN RETVR BOREN<1:0>
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17D0 FWDT
15:0 FWDTEN RCLKSEL<1:0> RWDTPS<4:0> WINDIS FWDTWINSZ<1:0> SWDTPS<4:0>
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17D4 FOSCSEL
15:0 FCKSM<1:0> r-1 SOSCSEL r-1 OSCIOFNC POSCMOD<1:0> IESO SOSCEN r-1 PLLSRC r-1 FNOSC<2:0>
31:16 CP r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17D8 FSEC
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17DC RESERVED
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
31:16 r-0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17E0 RESERVED
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
17E4 RESERVED
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
Legend: r-0 = Reserved bit, must be programmed as ‘0’; r-1 = Reserved bit, must be programmed as ‘1’.
DS60001324B-page 183
DS60001324B-page 184
PIC32MM0064GPL036 FAMILY
TABLE 23-4: ALTERNATE CONFIGURATION WORDS SUMMARY
Virtual Address
Bits
Bit Range
(BFC0_#)
Register
Name
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
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
1740 RESERVED
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
31:16 USERID<15:0>
1744 AFDEVOPT
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 SOSCHP r-1 r-1 r-1
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
1748 AFICD
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 ICS<1:0> JTAGEN r-1 r-1
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
174C AFPOR
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 LPBOREN RETVR BOREN<1:0>
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
1750 AFWDT
15:0 FWDTEN RCLKSEL<1:0> RWDTPS<4:0> WINDIS FWDTWINSZ<1:0> SWDTPS<4:0>
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
1754 AFOSCSEL
15:0 FCKSM<1:0> r-1 SOSCSEL r-1 OSCIOFNC POSCMOD<1:0> IESO SOSCEN r-1 PLLSRC r-1 FNOSC<2:0>
31:16 CP r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
1758 AFSEC
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
175C RESERVED
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
31:16 r-0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
1760 RESERVED
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
31:16 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
1764 RESERVED
15:0 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1 r-1
Legend: r-0 = Reserved bit, must be programmed as ‘0’; r-1 = Reserved bit, must be programmed as ‘1’.
2015-2016 Microchip Technology Inc.
PIC32MM0064GPL036 FAMILY
bit 31-16 USERID<15:0>: User ID bits (2 bytes which can be programmed to any value)
bit 15-4 Reserved: Program as ‘1’
bit 3 SOSCHP: Secondary Oscillator (SOSC) High-Power Enable bit
1 = SOSC operates in Normal Power mode
0 = SOSC operates in High-Power mode
bit 2-0 Reserved: Program as ‘1’
PIC32MM0064GPL036 FAMILY
TABLE 23-5:
Virtual Address RAM CONFIGURATION, DEVICE ID AND SYSTEM LOCK REGISTERS MAP
Bits
All Resets(1)
Bit Range
(BF80_#)
Register
Name
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
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
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
Bits
All Resets
Bit Range
(BF80_#)
Register
Name
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
31:16 — — — — — — — — — — — — — — — — 0000
2300 ANCFG(1)
15:0 — — — — — — — — — — — — — VBGADC VBGCMP — 0000
Legend: — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1: This register has corresponding CLR, SET and INV registers at its virtual address, plus an offset of 0x4, 0x8 and 0xC, respectively.
PIC32MM0064GPL036 FAMILY
DS60001324B-page 195
PIC32MM0064GPL036 FAMILY
Bits
All Resets
Bit Range
(BF80_#)
Register
Name
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
31:16 xxxx
1840 UDID1 UDID Word 1<31:0>
15:0 xxxx
31:16 xxxx
1844 UDID2 UDID Word 2<31:0>
15:0 xxxx
31:16 xxxx
1848 UDID3 UDID Word 3<31:0>
15:0 xxxx
31:16 xxxx
184C UDID4 UDID Word 4<31:0>
15:0 xxxx
31:16 xxxx
1850 UDID5 UDID Word 5<31:0>
PIC32MM0064GPL036 FAMILY
15:0 xxxx
Legend: x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Bits
All Resets
Bit Range
(BF80_#)
Register
Name
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
31:16 0000
0400 RESERVED1 Reserved Register 1<31:0>
15:0 0000
31:16 0000
0480 RESERVED2 Reserved Register 2<31:0>
15:0 0000
31:16 0C00
2280 RESERVED3 Reserved Register 3<31:0>
15:0 0000
Legend: x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
DS60001324B-page 197
PIC32MM0064GPL036 FAMILY
NOTES:
The MPASM Assembler generates relocatable object • Support for the entire device instruction set
files for the MPLINK Object Linker, Intel® standard HEX • Support for fixed-point and floating-point data
files, MAP files to detail memory usage and symbol • Command-line interface
reference, absolute LST files that contain source lines • Rich directive set
and generated machine code, and COFF files for • Flexible macro language
debugging.
• MPLAB X IDE compatibility
The MPASM Assembler features include:
• Integration into MPLAB X IDE projects
• User-defined macros to streamline
assembly code
• Conditional assembly for multipurpose
source files
• Directives that allow complete control over the
assembly process
† NOTICE: Stresses above those listed under “Absolute Maximum Ratings” may cause permanent damage to the
device. This is a stress rating only and functional operation of the device at those or any other conditions above
those indicated in the operation listings of this specification is not implied. Exposure to maximum rating conditions
for extended periods may affect device reliability.
3.6V 3.6V
PIC32MM00XXGPL0XX
Voltage (VDD)
2.0V(1) 2.0V(1)
DC 25 MHz
Frequency
Param
Symbol Characteristic Min Max Units Conditions
No.
DC10 VDD Supply Voltage 2.0 3.6 V
(1)
DC16 VPOR VDD Start Voltage VSS — V
to Ensure Internal
Power-on Reset Signal
DC17A SVDD(1) VDD Rise Rate 0.05 — V/ms 0-3.3V in 66 ms,
to Ensure Internal 0-2.0V in 40 ms
Power-on Reset Signal
DC17B VBOR Brown-out Reset 2.0 2.22 V
Voltage on VDD
Transition, High-to-Low
Note 1: If the VPOR or SVDD parameters are not met, or the application experiences slow power-down VDD ramp
rates, it is recommended to enable and use BOR.
Param
Symbol Characteristic Min Typ(1) Max Units Conditions
No.
VIL Input Low Voltage(2)
DI10 I/O Pins with ST Buffer VSS — 0.2 VDD V
DI15 MCLR VSS — 0.2 VDD V
DI16 OSC1/CLKI (XT mode) VSS — 0.2 VDD V
DI17 OSC1/CLKI (HS mode) VSS — 0.2 VDD V
VIH Input High Voltage(2)
DI20 I/O Pins with ST Buffer:
without 5V Tolerance 0.8 VDD — VDD V
with 5V Tolerance 0.8 VDD — 5.5 V
DI25 MCLR 0.8 VDD — VDD V
DI26 OSCI/CLKI (XT mode) 0.7 VDD — VDD V
DI27 OSC1/CLKI (HS mode) 0.7 VDD — VDD V
DI30 ICNPU CNPUx Pull-up Current — 350 — µA VPIN = 0V, VDD = 3.3V
DI30A ICNPD CNPDx Pull-Down Current — 300 — µA VPIN = 3.3V, VDD = 3.3V
IIL Input Leakage Current
DI50 I/O Pins – 5V Tolerant — 0.1 1.0 µA VPIN = 3.3V, VDD = 3.3V,
pin at high-impedance
DI51 I/O Pins – Not 5V Tolerant — 0.1 1.0 µA VPIN = 3.3V, VDD = 3.3V,
pin at high-impedance
DI55 MCLR — 0.1 1.0 µA VPIN = 3.3V, VDD = 3.3V
DI56 OSC1/CLKI — 0.1 1.0 µA VPIN = 3.3V, VDD = 3.3V
Note 1: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
2: Refer to Table 1-1 for I/O pin buffer types.
Param.
Symbol Characteristics Min. Max. Units Conditions
No.
DI60a IICL Input Low Injection 0 -5(1,4) mA This parameter applies to all pins.
Current
DI60b IICH Input High Injection 0 +5(2,3,4) mA This parameter applies to all pins,
Current with the exception of all 5V tolerant
pins and SOSCI. Maximum IICH
current for these exceptions is
0 mA.
DI60c IICT Total Input Injection -20(5) +20(5) mA Absolute instantaneous sum of
Current (sum of all I/O all ± input injection currents from
and control pins) all I/O pins,
( | IICL + | IICH | ) IICT
Note 1: VIL Source < (VSS – 0.3). Characterized but not tested.
2: VIH Source > (VDD + 0.3) for non-5V tolerant pins only.
3: Digital 5V tolerant pins do not have an internal high-side diode to VDD, and therefore, cannot tolerate any
“positive” input injection current.
4: Injection currents can affect the ADC results.
5: Any number and/or combination of I/O pins, not excluded under IICL or IICH conditions, are permitted
provided the “absolute instantaneous” sum of the input injection currents from all pins do not
exceed the specified limit.
Param
Symbol Characteristic Min Max Units Conditions
No.
VOL Output Low Voltage
DO10 I/O Ports — 0.36 V IOL = 6.0 mA, VDD = 3.6V
— 0.21 V IOL = 3.0 mA, VDD = 2V
DO16 RA3, RB8, RB9 and RB15 I/O Ports — 0.16 V IOL = 6.0 mA, VDD = 3.6V
— 0.12 V IOL = 3.0 mA, VDD = 2V
VOH Output High Voltage
DO20 I/O Ports 3.25 — V IOH = -6.0 mA, VDD = 3.6V
1.4 — V IOH = -3.0 mA, VDD = 2V
DO26 RA3, RB8, RB9 and RB15 I/O Ports 3.3 — V IOH = -6.0 mA, VDD = 3.6V
1.55 — V IOH = -3.0 mA, VDD = 2V
Param
Symbol Characteristic Min Typ(1) Max Units Conditions
No.
D130 EP Cell Endurance 10000 20000 — E/W
D131 VICSP VDD for In-Circuit Serial VBOR — 3.6 V
Programming™ (ICSP™)
D132 VRTSP VDD for Run-Time 2.0 — 3.6 V
Self-Programming (RTSP)
D133 TIW Self-Timed Double-Word 19.7 21.0 22.3 µs 8 bytes, data is not all ‘1’s
Write Cycle Time
Self-Timed Row Write 1.3 1.4 1.5 ms 256 bytes, data is not all ‘1’s,
Cycle Time SYSCLK > 2 MHz
D133 TIE Self-Timed Page Erase 15.0 16.0 17.0 ms 2048 bytes
Time
D134 TRETD Characteristic Retention 20 — — Year If no other specifications are violated
D136 TCE Self-Timed Chip Erase 16.0 17.0 18.0 ms
Time
Note 1: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
Param
Symbol Characteristics Min Typ(1) Max Units Comments
No.
DVR10 VBG Band Gap Reference Voltage — 1.2 — V
DVR20 VRGOUT Regulator Output Voltage — 1.8 — V VDD > 1.9V
DVR21 CEFC External Filter Capacitor Value 4.7 10 — µF Series Resistance < 3
recommended; < 5 required
DVR30 VLVR Low-Voltage Regulator 0.9 — 1.2 V RETEN = 1,
Output Voltage RETVR (FPOR<2>) = 0
Note 1: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
Param
Symbol Characteristic Min Typ(2) Max Units
No.
DC18 VHLVD(1) HLVD Voltage on VDD HLVDL<3:0> = 0101 3.25 — 3.63 V
Transition HLVDL<3:0> = 0110 2.95 — 3.30 V
HLVDL<3:0> = 0111 2.75 — 3.09 V
HLVDL<3:0> = 1000 2.65 — 2.98 V
HLVDL<3:0> = 1001 2.45 — 2.80 V
HLVDL<3:0> = 1010 2.35 — 2.69 V
HLVDL<3:0> = 1011 2.25 — 2.55 V
HLVDL<3:0> = 1100 2.15 — 2.44 V
HLVDL<3:0> = 1101 2.08 — 2.33 V
HLVDL<3:0> = 1110 2.00 — 2.22 V
DC101 VTHL HLVD Voltage on HLVDL<3:0> = 1111 — 1.2 — V
LVDIN Pin Transition
Note 1: Trip points for values of HLVD<3:0>, from ‘0000’ to ‘0100’, are not implemented.
2: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
Param
Symbol Characteristic Min Typ(2) Max Units
No.
D300 VIOFF Input Offset Voltage -20 — 20 mV
D301 VICM Input Common-Mode Voltage AVSS – 0.3V — AVDD + 0.3V V
D307 TRESP(1) Response Time — 150 — ns
Note 1: Measured with one input at VDD/2 and the other transitioning from VSS to VDD.
2: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
Param
Symbol Characteristic Min Typ(2) Max Units
No.
VRD310 TSET Settling Time(1) — — 10 µs
VRD311 VRA Accuracy -1 — 1 LSb
VRD312 VRUR Unit Resistor Value (R) — 4.5 — k
Note 1: Measures the interval while VRDAT<4:0> transitions from ‘11111’ to ‘00000’.
2: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
Load Condition 1 – for all pins except OSC2/CLKO Load Condition 2 – for OSC2/CLKO
VDD/2
Pin CL
RL
VSS
Pin CL
RL = 464
CL = 50 pF for all pins except OSC2/CLKO
VSS
15 pF for OSC2/CLKO output
OSCI
OS10
OS30 OS30 OS31 OS31
CLKO
OS40 OS41
Param
Symbol Characteristic Min Typ(1) Max Units Conditions
No.
OS10 FOSC External CLKI Frequency DC — 25 MHz EC
2 — 12.5 MHz ECPLL(2)
Oscillator Frequency 3.5 — 10 MHz XT
3.5 — 10 MHz XTPLL(2)
10 — 25 MHz HS
10 — 25 MHz HSPLL(2)
31 — 50 kHz SOSC
OS30 TosL, External Clock in (OSC1) 0.45 x TOSC — 0.55 x TOSC ns EC
TosH High or Low Time
OS31 TosR, External Clock in (OSC1) — — 20 ns EC
TosF Rise or Fall Time
OS40 TckR CLKO Rise Time(3) — 15 20 ns
OS41 TckF CLKO Fall Time(3) — 15 20 ns
Note 1: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
2: PLL dividers and postscalers must be configured so that the system clock frequency does not exceed the
maximum operating frequency.
3: Measurements are taken in EC mode. The CLKO signal is measured on the OSC2 pin.
Param
Symbol Characteristic Min Max Units
No.
OS50 FPLLI PLL Input Frequency Range(1) 2 24 MHz
OS54 FPLLO PLL Output Frequency Range(1) 16 96 MHz
OS52 TLOCK PLL Start-up Time (Lock Time) — 24 µs
OS53 DCLK CLKO Stability (Jitter) -0.12 0.12 %
Note 1: These parameters are characterized but not tested in manufacturing.
Param
Symbol Characteristic Max Units
No.
FR0 TFRC FRC Oscillator Start-up Time 2 µs
FR1 TLPRC Low-Power RC Oscillator Start-up Time 70 µs
I/O Pin
(Input)
DI35
DI40
I/O Pin
Old Value New Value
(Output)
DO31
DO32
Param
Symbol Characteristic Min Typ(1) Max Units
No.
DO31 TIOR Port Output Rise Time — 10 25 ns
DO32 TIOF Port Output Fall Time — 10 25 ns
DI35 TINP INTx Input Pin High or Low 10 — — ns
Time
DI40 TRBP CNx Input Pin High or Low Time 10 — — ns
Note 1: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
TABLE 26-22: RESET, BROWN-OUT RESET AND SLEEP MODES TIMING SPECIFICATIONS
Operating Conditions: 2.0V VDD 3.6V, -40°C TA +85°C (unless otherwise stated)
Param
Symbol Characteristic Min Typ(1) Max Units Conditions
No.
SY10 TMCL MCLR Pulse Width (Low) 2 — — µs
SY13 TIOZ I/O High-Impedance from — 1 — µs
MCLR Low
SY25 TBOR Brown-out Reset Pulse 1 — — µs VDD VBOR
Width
SY45 TRST Reset State Time — 25 — µs
SY71 TWAKE(2) Wake-up Time with Main — 22 — µs Sleep wake-up with
Voltage Regulator VREGS = 0, RETEN = 0,
RETVR = 1
— 3.8 — µs Sleep wake-up with
VREGS = 1, RETEN = 0,
RETVR = 1
SY72 TWAKELVR(2) Wake-up Time with — 163 — µs Sleep wake-up with
Retention Low-Voltage VREGS = 0, RETEN = 1,
Regulator RETVR = 0
— 23 — µs Sleep wake-up with
VREGS = 1, RETEN = 1,
RETVR = 0
Note 1: Data in the “Typ.” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
2: The parameters are measured with the external clock source (EC). To get the full wake-up time, the
oscillator start-up time must be added.
T1CK
TA10 TA11
TA15 TA20
TMR1
Param.
Symbol Characteristics(1) Min Max Units Conditions
No.
TA10 TCKH T1CK High Time Synchronous 1 — TPBCLK Must also meet Parameter TA15
Asynchronous 10 — ns
TA11 TCKL T1CK Low Time Synchronous 1 — TPBCLK Must also meet Parameter TA15
Asynchronous 10 — ns
TA15 TCKP T1CK Input Synchronous 2 — TPBCLK
Period Asynchronous 20 — ns
TA20 TCKEXTMRL Delay from External T1CK Clock — 3 TPBCLK Synchronous mode
Edge to Timer Increment
Note 1: These parameters are characterized but not tested in manufacturing.
TCKIx
TMR10 TMR11
TMR15 TMR20
CCPxTMR
Param.
Symbol Characteristics(1) Min Max Units Conditions
No.
TMR10 TCKH TCKIx High Time Synchronous 1 — TPBCLK Must also meet
Parameter TMR15
Asynchronous 10 — ns
TMR11 TCKL TCKIx Low Time Synchronous 1 — TPBCLK Must also meet
Parameter TMR15
Asynchronous 10 — ns
TMR15 TCKP TCKIx Input Period Synchronous 2 — TPBCLK
Asynchronous 20 — ns
TMR20 TCKEXTMRL Delay from External TCKIx Clock Edge — 1 TPBCLK
to Timer Increment
Note 1: These parameters are characterized but not tested in manufacturing.
ICMx
IC10 IC11
IC15
TABLE 26-25: MCCP AND SCCP INPUT CAPTURE x MODE TIMING REQUIREMENTS
Operating Conditions: 2.0V VDD 3.6V, -40°C TA +85°C (unless otherwise stated)
Param.
Symbol Characteristics(1) Min Max Units Conditions
No.
IC10 TICL ICMx Input Low Time 25 — ns Must also meet Parameter IC15
IC11 TICH ICMx Input High Time 25 — ns Must also meet Parameter IC15
IC15 TICP ICMx Input Period 50 — ns
Note 1: These parameters are characterized but not tested in manufacturing.
FIGURE 26-8: MCCP AND SCCP OUTPUT COMPARE x MODE TIMING CHARACTERISTICS
OCMx
OC11 OC10
TABLE 26-26: MCCP AND SCCP OUTPUT COMPARE x MODE TIMING REQUIREMENTS
Operating Conditions: 2.0V VDD 3.6V, -40°C TA +85°C (unless otherwise stated)
Param.
Symbol Characteristics(1) Min Typ Max Units
No.
OC10 TOCF OCMx Output Fall Time — 10 25 ns
OC11 TOCR OCMx Output Rise Time — 10 25 ns
Note 1: These parameters are characterized but not tested in manufacturing.
OC20
OCFA/OCFB
OC15
Param
Symbol Characteristics(1) Min Max Units
No.
OC15 TFD Fault Input to PWM I/O Change — 30 ns
OC20 TFLT Fault Input Pulse Width 10 — ns
Note 1: These parameters are characterized but not tested in manufacturing.
SCKx
(CKP = 0)
SP10 SP10
SCKx
(CKP = 1)
SP35
SP40 SP41
SP36
SCKx
(CKP = 0)
SP10 SP10
SCKx
(CKP = 1)
SP35
Param.
Symbol Characteristics(1) Min Max Units
No.
SP10 TSCL, TSCH SCKx Output Low or High Time 10 — ns
SP35 TSCH2DOV, SDOx Data Output Valid after SCKx Edge — 7 ns
TSCL2DOV
SP36 TDOV2SC, SDOx Data Output Setup to First SCKx Edge 7 — ns
TDOV2SCL
SP40 TDIV2SCH, Setup Time of SDIx Data Input to SCKx Edge 7 — ns
TDIV2SCL
SP41 TSCH2DIL, Hold Time of SDIx Data Input to SCKx Edge 7 — ns
TSCL2DIL
Note 1: These parameters are characterized but not tested in manufacturing.
SSx
SP50 SP52
SCKx
(CKP = 0)
SP71 SP70
SCKx
(CKP = 1)
SP35
SP51
SP60
SSx
SP50 SP52
SCKx
(CKP = 0)
SP71 SP70
SCKx
(CKP = 1)
SP35
SP51
Param
Symbol Characteristic Min Max Units
No.
Reference Inputs
AD05 VREFH Reference Voltage High AVSS + 1.7 AVDD V
AD06 VREFL Reference Voltage Low AVSS AVDD – 1.7 V
AD07 VREF Absolute Reference AVSS – 0.3 AVDD + 0.3 V
Voltage
Analog Inputs
AD10 VINH-VINL Full-Scale Input Span VREFL VREFH V
AD11 VIN Absolute Input Voltage AVSS – 0.3 AVDD + 0.3 V
AD12 VINL Absolute VINL Input Voltage AVSS – 0.3 AVDD + 0.3 V
AD17 RIN Recommended Impedance of Analog — 2.5K
Voltage Source
TABLE 26-31: ADC ACCURACY AND CONVERSION TIMING REQUIREMENTS FOR 12-BIT MODE(1)
Operating Conditions: VDD = 3.3V, AVSS = VREFL = 0V, AVDD = VREFH = 3.3V, -40°C TA +85°C
Param
Symbol Characteristic Min Typ(2) Max Units
No.
ADC Accuracy
AD20B Nr Resolution — 12 — bits
AD21B INL Integral Nonlinearity — ±2.5 ±3.5 LSb
AD22B DNL Differential Nonlinearity — ±0.75 +1.75/-0.95 LSb
AD23B GERR Gain Error – +2 +3 LSb
AD24B EOFF Offset Error — +1 +2 LSb
Clock Parameters
AD50B TAD ADC Clock Period 280 — — ns
AD61B tPSS Sample Start Delay from Setting 2 — 3 TAD
Sample bit (SAMP)
Conversion Rate
AD55B tCONV Conversion Time — 14 — TAD
AD56B FCNV Throughput Rate — — 200 ksps
Note 1: Measurements are taken with the external VREF+ and VREF- used as the ADC voltage reference.
2: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
TABLE 26-32: ADC ACCURACY AND CONVERSION TIMING REQUIREMENTS FOR 10-BIT MODE(1)
Operating Conditions: VDD = 3.3V, AVSS = VREFL = 0V, AVDD = VREFH = 3.3V, -40°C TA +85°C
Param
Symbol Characteristic Min Typ(2) Max Units
No.
ADC Accuracy
AD20A Nr Resolution — 10 — bits
AD21A INL Integral Nonlinearity — ±0.5 — LSb
AD22A DNL Differential Nonlinearity — ±0.5 — LSb
AD23A GERR Gain Error — +0.75 — LSb
AD24A EOFF Offset Error — +0.25 — LSb
Clock Parameters
AD50A TAD ADC Clock Period 200 — — ns
AD61A tPSS Sample Start Delay from Setting 2 — 3 TAD
Sample bit (SAMP)
Conversion Rate
AD55A tCONV Conversion Time — 12 — TAD
AD56A FCNV Throughput Rate — — 300 ksps
Note 1: Measurements are taken with the external VREF+ and VREF- used as the ADC voltage reference.
2: Data in the “Typ” column is at 3.3V, +25°C unless otherwise stated. Parameters are for design guidance
only and are not tested.
TTCKcyc
TTCKhigh TTCKlow
Trf
TCK
Trf
TMS
TDI
TDO
TRST*
TTRST*low
TTDOout TTDOzstate
Defined Undefined
Trf
Param.
Symbol Description(1) Min Max Units Conditions
No.
EJ1 TTCKCYC TCK Cycle Time 25 — ns
EJ2 TTCKHIGH TCK High Time 10 — ns
EJ3 TTCKLOW TCK Low Time 10 — ns
EJ4 TTSETUP TAP Signals Setup Time before 5 — ns
Rising TCK
EJ5 TTHOLD TAP Signals Hold Time after 3 — ns
Rising TCK
EJ6 TTDOOUT TDO Output Delay Time from — 5 ns
Falling TCK
EJ7 TTDOZSTATE TDO 3-State Delay Time from — 5 ns
Falling TCK
EJ8 TTRSTLOW TRST Low Time 25 — ns
EJ9 TRF TAP Signals Rise/Fall Time, — — ns
All Input and Output
Note 1: These parameters are characterized but not tested in manufacturing.
XXXXXXXXXXX PIC32MM0016
XXXXXXXXXXX GPL020
YYWWNNN 1610017
XXXXXXXX 32MM0016
XXXXXXXX GPL020
YYWWNNN 1610017
XXXXXXXXXXXXXXXXX PIC32MM0064GPL028
XXXXXXXXXXXXXXXXX
YYWWNNN 1610017
XXXXXXXXXXXXXXXXXXXX PIC32MM0032GPL028
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
YYWWNNN 1610017
Note: In the event the full Microchip part number cannot be marked on one line, it will
be carried over to the next line, thus limiting the number of available
characters for customer-specific information.
XXXXXXXXXXXX PIC32MM0064
XXXXXXXXXXXX GPL028
YYWWNNN 1610017
XXXXXXXX 32MM0032
XXXXXXXX GPL028
YYWWNNN 1610017
XXXXXXXX 32MM0032
XXXXXXXX GPL028
YYWWNNN 1610017
XXXXXXXX 32MM0064
XXXXXXXX GPL036
YYWWNNN 1610017
XXXXXXXX 32MM0064
XXXXXXXX GPL036
YYWWNNN 1610017
!
"
#
$ 1%
& %!
%
2
") '
%
2
$%%
"%
%%
033)))&
&3
2
D
N
E1
NOTE 1
1 2
e
b
c
A A2
φ
A1
L1 L
4% 55**
&
5&% 6 67 8
6!&(
$ 6
%
9-./
7
:
% ; ;
"
"2
2
9- - <-
%"$$ - ; ;
7
="% * < <
"
"2
="% * - -+ -9
7
5
% 9 -
1%5
% 5 -- - -
1%
% 5 -*1
5
"2
; -
1%
> > <>
5
"="% ( ; +<
#
$
!"
#$
%!
&'(!%&! %(
%
")%%
%
"
&
"*"%!"
&"$
%! "$
%! %
#
"&&
"
+ &
"%
*,-
./0 . &
%
#%!
))%!%%
*10
$
&
'! !)%!%%
'$$&%
!
) / .
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
0.65 0.45
SILK SCREEN
c
Y1
G
X1
E
Units MILLIMETERS
Dimension Limits MIN NOM MAX
Contact Pitch E 0.65 BSC
Contact Pad Spacing C 7.20
Contact Pad Width (X20) X1 0.45
Contact Pad Length (X20) Y1 1.75
Distance Between Pads G 0.20
Notes:
1. Dimensioning and tolerancing per ASME Y14.5M
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
% &
' #
( ) *+*+, !%&#"
#
$ 1%
& %!
%
2
") '
%
2
$%%
"%
%%
033)))&
&3
2
D D2
EXPOSED
PAD
e
E2
E
2 2 b
1 1
K
N N
NOTE 1 L
TOP VIEW BOTTOM VIEW
A3 A1
4% 55**
&
5&% 6 67 8
6!&(
$ 6
%
-./
7
:
% <
%"$$ -
/%%2
+ *1
7
="% * ./
*#
""="% * 9 <
7
5
% ./
*#
""5
% 9 <
/%%="% ( < - +
/%%5
% 5 + -
/%% % *#
"" ? ; ;
#
$
!"
#$
%!
&'(!%&! %(
%
")%%
%
"
2
) !%
"
+ &
"%
*,-
./0 . &
%
#%!
))%!%%
*10
$
&
'! !)%!%%
'$$&%
!
) / 9.
-
. /
!
./
"
#
$ 1%
& %!
%
2
") '
%
2
$%%
"%
%%
033)))&
&3
2
N
NOTE 1
E1
1 2 3
A A2
L c
A1 b1
b e eB
4% 6/:*
&
5&% 6 67 8
6!&(
$ 6 <
%
./
%
%
; ;
"
"2
2
+- -
.
%
%
- ; ;
!"
%!"
="% * + ++-
"
"2
="% * <- -
7
5
% +- +9-
%
%
5 + -
5
"2
< -
4
) / .
-
!
"
#
$ 1%
& %!
%
2
") '
%
2
$%%
"%
%%
033)))&
&3
2
D
N
E
E1
1 2
b
NOTE 1
e
c
A A2
φ
A1
L1 L
4% 55**
&
5&% 6 67 8
6!&(
$ 6 <
%
9-./
7
:
% ; ;
"
"2
2
9- - <-
%"$$ - ; ;
7
="% * < <
"
"2
="% * - -+ -9
7
5
% -
1%5
% 5 -- - -
1%
% 5 -*1
5
"2
; -
1%
> > <>
5
"="% ( ; +<
#
$
!"
#$
%!
&'(!%&! %(
%
")%%
%
"
&
"*"%!"
&"$
%! "$
%! %
#
"&&
"
+ &
"%
*,-
./0 . &
%
#%!
))%!%%
*10
$
&
'! !)%!%%
'$$&%
!
) / +.
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
-
% &
' #
( ) 0+0 !%&#"
1
2
(
#
$ 1%
& %!
%
2
") '
%
2
$%%
"%
%%
033)))&
&3
2
28-Lead Ultra Thin Plastic Quad Flat, No Lead Package (M6) - 4x4x0.6 mm Body [UQFN]
With Corner Anchors
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
D A B
N
NOTE 1
1
2
E
(DATUM B)
(DATUM A)
2X
0.10 C
2X
0.10 C TOP VIEW
0.10 C A1
C
SEATING A
PLANE 28X
(A3) 0.08 C
SIDE VIEW
0.10 C A B
4x b1 D2
4x b2
4x b2 0.10 C A B
E2
e NOTE 1
2
2
1 K
N
4x b1
L 28X b
e 0.07 C A B
0.05 C
BOTTOM VIEW
Microchip Technology Drawing C04-333-M6 Rev B Sheet 1 of 2
28-Lead Ultra Thin Plastic Quad Flat, No Lead Package (M6) - 4x4x0.6 mm Body [UQFN]
With Corner Anchors
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
Units MILLIMETERS
Dimension Limits MIN NOM MAX
Number of Pins N 28
Pitch e 0.40 BSC
Overall Height A - - 0.60
Standoff A1 0.00 0.02 0.05
Terminal Thickness A3 0.152 REF
Overall Width E 4.00 BSC
Exposed Pad Width E2 1.80 1.90 2.00
Overall Length D 4.00 BSC
Exposed Pad Length D2 1.80 1.90 2.00
Terminal Width b 0.15 0.20 0.25
Corner Anchor Pad b1 0.40 0.45 0.50
Corner Pad, Metal Free Zone b2 0.18 0.23 0.28
Terminal Length L 0.30 0.45 0.50
Terminal-to-Exposed-Pad K - 0.60 -
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. Package is saw singulated
3. Dimensioning and tolerancing per ASME Y14.5M
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
REF: Reference Dimension, usually without tolerance, for information purposes only.
28-Lead Ultra Thin Plastic Quad Flat, No Lead Package (M6) - 4x4x0.6 mm Body [UQFN]
With Corner Anchors
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
C1
X2
EV
28
G3
1
ØV
2
G2
C2 Y2 EV
G1
Y1
Y3
X1
X3 SILK SCREEN
E
36-Terminal Very Thin Plastic Quad Flatpack No-Lead (M2) - 6x6x1.0mm Body [VQFN]
SMSC Legacy "Sawn Quad Flatpack No-Lead [SQFN]"
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
D A
B
NOTE 1 N
1
2
E
(DATUM B)
(DATUM A)
2X
0.10 C
2X
0.10 C TOP VIEW
0.10 C A1
C
SEATING A
PLANE 36X
SIDE VIEW 0.08 C
(A3)
0.10 C A B
D2
0.10 C A B
E2
2
1
NOTE 1 K
N
L 36X b
e 0.10 C A B
0.05 C
BOTTOM VIEW
Microchip Technology Drawing C04-272B-M2 Sheet 1 of 2
36-Terminal Very Thin Plastic Quad Flatpack No-Lead (M2) - 6x6x1.0mm Body [VQFN]
SMSC Legacy "Sawn Quad Flatpack No-Lead [SQFN]"
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
Units MILLIMETERS
Dimension Limits MIN NOM MAX
Number of Terminals N 36
Pitch e 0.50 BSC
Overall Height A 0.80 0.90 1.00
Standoff A1 0.00 0.02 0.05
Terminal Thickness A3 0.20 REF
Overall Width E 6.00 BSC
Exposed Pad Width E2 3.60 3.70 3.80
Overall Length D 6.00 BSC
Exposed Pad Length D2 3.60 3.70 3.80
Terminal Width b 0.18 0.25 0.30
Terminal Length L 0.50 0.60 0.75
Terminal-to-Exposed-Pad K 0.45 0.55 -
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. Package is saw singulated
3. Dimensioning and tolerancing per ASME Y14.5M
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
REF: Reference Dimension, usually without tolerance, for information purposes only.
36-Terminal Very Thin Plastic Quad Flatpack No-Lead (M2) - 6x6x0.9 mm Body [VQFN]
SMSC Legacy "Sawn Quad Flatpack No-Lead [SQFN]"
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
C1
X2
EV
36
G2
1
2
Y2
ØV
EV
C2
G1
Y1
X1
E SILK SCREEN
Notes:
1. Dimensioning and tolerancing per ASME Y14.5M
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
2. For best soldering results, thermal vias, if used, should be filled or tented to avoid solder loss during
reflow process
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
Key Feature L = Up to 25 MHz operating frequency with basic peripheral set of 2 UART
and 2 SPI modules
• Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
• There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip’s Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
• Microchip is willing to work with the customer who is concerned about the integrity of their code.
• Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as “unbreakable.”
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.