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

产品描述

搜索
 

PIC24FJ128GB610-I/BG

器件型号:PIC24FJ128GB610-I/BG
器件类别:半导体    嵌入式处理器和控制器   
厂商名称:Microchip
厂商官网:https://www.microchip.com
标准:
下载文档

器件描述

IC MCU 16BIT 128KB FLASH 121BGA

参数
产品属性属性值
核心处理器:PIC
核心尺寸:16-位
速度:32MHz
连接性:I²C,IrDA,LINbus,PMP,SPI,UART/USART,USB OTG
外设:断电检测/复位,DMA,HLVD,POR,PWM,WDT
I/O 数:85
程序存储容量:128KB(43K x 24)
程序存储器类型:闪存
EEPROM 容量:-
RAM 容量:32K x 8
电压 - 电源(Vcc/Vdd):2 V ~ 3.6 V
数据转换器:A/D 24x10b/12b
振荡器类型:内部
工作温度:-40°C ~ 85°C(TA)
封装/外壳:121-TFBGA
供应商器件封装:121-TFBGA(10x10)

PIC24FJ128GB610-I/BG器件文档内容

                                          PIC24FJ1024GA610/GB610 FAMILY

      16-Bit Microcontrollers with Large, Dual Partition

      Flash Program Memory and USB On-The-Go (OTG)

High-Performance CPU                                         Low-Power Features

•  Modified Harvard Architecture                             •  Sleep and Idle modes Selectively Shut Down

•  Largest Program Memory Available for PIC24                   Peripherals and/or Core for Substantial Power

   (1024 Kbytes) for the Most Complex Applications              Reduction and Fast Wake-up

•  32 Kbytes SRAM for All Part Variants                      •  Doze mode Allows CPU to Run at a Lower Clock

•  Up to 16 MIPS Operation @ 32 MHz                             Speed than Peripherals

•  8 MHz Fast RC Internal Oscillator:                        •  Alternate Clock modes Allow On-the-Fly Switching to

   -  96 MHz PLL option                                         a Lower Clock Speed for Selective Power Reduction

   -  Multiple clock divide options                          •  Wide Range Digitally Controlled Oscillator (DCO) for

   -  Run-time self-calibration capability for maintaining      Fast Start-up and Low-Power Operation

      better than ±0.20% accuracy                            Special Microcontroller Features

   -  Fast start-up

•  17-Bit x 17-Bit Single-Cycle Hardware                     •  Large, Dual Partition Flash Program Array:

   Fractional/Integer Multiplier                                -  Capable of holding two independent software

•  32-Bit by 16-Bit Hardware Divider                               applications, including bootloader

•  16-Bit x 16-Bit Working Register Array                       -  Permits simultaneous programming of one partition

•  C Compiler Optimized Instruction Set Architecture               while executing application code from the other

•  Two Address Generation Units for Separate Read               -  Allows run-time switching between

   and Write Addressing of Data Memory                             Active Partitions

                                                             •  10,000 Erase/Write Cycle Endurance, Typical

Universal Serial Bus Features                                •  Data Retention: 20 Years Minimum

•  USB v2.0 On-The-Go (OTG) Compliant                        •  Self-Programmable under Software Control

•  Dual Role Capable – Can Act as Either Host or Peripheral  •  Supply Voltage Range of 2.0V to 3.6V

•  Low-Speed (1.5 Mb/s) and Full-Speed (12 Mb/s)             •  Operating Ambient Temperature Range of

   USB Operation in Host mode                                   -40°C to +85°C

•  Full-Speed USB Operation in Device mode                   •  On-Chip Voltage Regulators (1.8V) for Low-Power

•  High-Precision PLL for USB                                   Operation

•  USB Device mode Operation from FRC Oscillator –           •  Programmable Reference Clock Output

   No Crystal Oscillator Required                            •  In-Circuit Serial Programming™ (ICSP™) and

•  Supports up to 32 Endpoints (16 bidirectional):              In-Circuit Emulation (ICE) via 2 Pins

   -  USB module can use any RAM location on the             •  JTAG Boundary Scan Support

      device as USB endpoint buffers                         •  Fail-Safe Clock Monitor Operation:

•  On-Chip USB Transceiver with Interface for Off-Chip          -  Detects clock failure and switches to on-chip,

   USB Transceiver                                                 low-power RC Oscillator

•  Supports Control, Interrupt, Isochronous and              •  Power-on Reset (POR), Brown-out Reset (BOR),

   Bulk Transfers                                               Power-up Timer (PWRT) and Oscillator Start-up

•  On-Chip Pull-up and Pull-Down Resistors                      Timer (OST)

                                                             •  Programmable High/Low-Voltage Detect (HLVD)

Analog Features                                              •  Flexible Watchdog Timer (WDT) with its Own

                                                                RC Oscillator for Reliable Operation

•  10/12-Bit, up to 24-Channel Analog-to-Digital (A/D)

   Converter:

   -  12-bit conversion rate of 200 ksps

   -  Auto-scan and threshold compare features

   -  Conversion available during Sleep

•  Three Rail-to-Rail, Enhanced Analog Comparators

   with Programmable Input/Output Configuration

•  Charge Time Measurement Unit (CTMU):

   -  Used for capacitive touch sensing, up to 24 channels

   -  Time measurement down to 100 ps resolution

 2015-2018 Microchip Technology Inc.                                                               DS30010074F-page 1
PIC24FJ1024GA610/GB610                                   FAMILY

Peripheral Features                                      •  Enhanced Parallel Master/Slave Port (EPMP/EPSP)

•  Peripheral Pin Select (PPS) –Allows Independent       •  Hardware Real-Time Clock/Calendar (RTCC) with

   I/O Mapping of Many Peripherals                          Timestamping

•  Up to 5 External Interrupt Sources                    •  Three 3-Wire/4-Wire SPI modules:

•  Configurable Interrupt-on-Change on All I/O Pins:        -  Support 4 Frame modes

   -  Each pin is independently configurable for rising     -  8-level FIFO buffer

      edge or falling edge change detection                 -  Support I2S operation

•  Eight-Channel DMA Supports All Peripheral modules:    •  Three I2C modules Support Multi-Master/Slave

   -  Minimizes CPU overhead and increases data             mode and 7-Bit/10-Bit Addressing

      throughput                                         •  Six UART modules:

•  Five 16-Bit Timers/Counters with Prescalers:             -  Support RS-485, RS-232 and LIN/J2602

   -  Can be paired as 32-bit timers/counters               -  On-chip hardware encoder/decoder for IrDA®

•  Six Input Capture modules, Each with a Dedicated         -  Auto-wake-up on Auto-Baud Detect (ABD)

   16-Bit Timer                                             -  4-level deep FIFO buffer

•  Six Output Compare/PWM modules, Each with a           •  Programmable 32-Bit Cyclic Redundancy Check

   Dedicated 16-Bit Timer                                   (CRC) Generator

•  Four Single Output CCPs (SCCPs) and Three             •  Four Configurable Logic Cells (CLCs):

   Multiple Output CCPs (MCCPs):                            -  Two inputs and one output, all mappable to

   -  Independent 16/32-bit time base for each module          peripherals or I/O pins

   -  Internal time base and period registers               -  AND/OR/XOR logic and D/JK flip-flop functions

   -  Legacy PIC24F Capture and Compare modes            •  High-Current Sink/Source (18 mA/18 mA) on All I/O Pins

      (16 and 32-bit)                                    •  Configurable Open-Drain Outputs on Digital I/O Pins

   -  Special Variable Frequency Pulse and Brushless     •  5.5V Tolerant Inputs on Multiple I/O Pins

      DC Motor Output modes

DS30010074F-page 2                                                            2015-2018 Microchip Technology Inc.
                                                                   PIC24FJ1024GA610/GB610                                                                                              FAMILY

PIC24FJ1024GA610/GB610 FAMILY

PRODUCT FAMILIES

The  device  names,        pin  counts,            memory          sizes     and

peripheral   availability  of       each     device                are  listed                   in

Table 1. Their pinout diagrams appear on the following

pages.

TABLE 1:        PIC24FJ1024GA610/GB610 GENERAL PURPOSE FAMILIES

                                Memory                      Pins                                 Analog                                                        Digital

        Device             Program  (bytes)  Data  (bytes)  Total       I/O  10/12-Bit A/D (ch)      Comparator  CTM U  16/32-Bit Timer  IC/OC/PWM  MCCP/SCCP  I2C  SPI  UART w/IrDA®  EPMP/EPSP  CLC  RTCC  USB OTG

PIC24FJ128GA606            128K              32K            64     53        16                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     N

PIC24FJ256GA606            256K              32K            64     53        16                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     N

PIC24FJ512GA606            512K              32K            64     53        16                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     N

PIC24FJ1024GA606           1024K             32K            64     53        16                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     N

PIC24FJ128GA610            128K              32K            100    85        24                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     N

PIC24FJ256GA610            256K              32K            100    85        24                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     N

PIC24FJ512GA610            512K              32K            100    85        24                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     N

PIC24FJ1024GA610           1024K             32K            100    85        24                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     N

PIC24FJ128GB606            128K              32K            64     53        16                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     Y

PIC24FJ256GB606            256K              32K            64     53        16                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     Y

PIC24FJ512GB606            512K              32K            64     53        16                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     Y

PIC24FJ1024GB606           1024K             32K            64     53        16                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     Y

PIC24FJ128GB610            128K              32K            100    85        24                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     Y

PIC24FJ256GB610            256K              32K            100    85        24                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     Y

PIC24FJ512GB610            512K              32K            100    85        24                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     Y

PIC24FJ1024GB610           1024K             32K            100    85        24                      3           Y      5/2              6/6        3/4        3    3    6/2           Y          4    Y     Y

 2015-2018 Microchip Technology Inc.                                                                                                                                                  DS30010074F-page 3
PIC24FJ1024GA610/GB610                                                           FAMILY

Pin Diagrams(2)

64-Pin TQFP

64-Pin QFN(1)

                              RE4  RE3  RE2   RE1          RE0  RF1  RF0   N/C   VCAP  RD7  RD6  RD5  RD4  RD3  RD2  RD1

                              64   63   62    61           60   59   58    57    56    55   54   53   52   51   50   49

                    RE5   1                                                                                               48  RC14

                    RE6   2                                                                                               47  RC13

                    RE7   3                                                                                               46  RD0

                    RG6   4                                                                                               45  RD11

                    RG7   5                                                                                               44  RD10

                    RG8   6                                                                                               43  RD9

                    MCLR  7                                                                                               42  RD8

                    RG9   8                   PIC24FJXXXXGA606                                                            41  VSS

                    VSS   9                                                                                               40  OSCO/RC15

                    VDD   10                                                                                              39  OSCI/RC12

                    RB5   11                                                                                              38  VDD

                    RB4   12                                                                                              37  RG2

                    RB3   13                                                                                              36  RG3

                    RB2   14                                                                                              35  RF6

                    RB1   15                                                                                              34  RF2

                    RB0   16                                                                                              33  RF3

                              17   18   19    20           21   22   23    24    25    26   27    28    29    30    31   32

                              RB6  RB7  AVDD  AVSS         RB8  RB9  RB10  RB11  VSS   VDD  RB12  RB13  RB14  RB15  RF4  RF5

Legend:  See Table 2 for a complete description of pin functions.

Note 1:  It is recommended to connect the metal pad on the bottom                of    the       64-pin    QFN       package  to VSS.

2:       Gray shading indicates 5.5V tolerant input pins.

DS30010074F-page 4                                                                                                             2015-2018  Microchip  Technology  Inc.
                                          PIC24FJ1024GA610/GB610 FAMILY

TABLE 2:   COMPLETE PIN FUNCTION DESCRIPTIONS (PIC24FJXXXGA606 TQFP/QFN)

Pin                          Function                                 Pin                         Function

1    IC4/CTED4/PMD5/RE5                                               33   RP16/RF3

2    SCL3/IC5/PMD6/RE6                                                34   RP30/RF2

3    SDA3/IC6/PMD7/RE7                                                35   INT0/RF6

4    C1IND/RP21/ICM1/OCM1A/PMA5/RG6                                   36   SDA1/RG3

5    C1INC/RP26/OCM1B/PMA4/RG7                                        37   SCL1/RG2

6    C2IND/RP19/ICM2/OCM2A/PMA3/RG8                                   38   VDD

7    MCLR                                                             39   OSCI/CLKI/RC12

8    C1INC/C2INC/C3INC/RP27/OCM2B/PMA2/PMALU/RG9                      40   OSCO/CLKO/RC15

9    VSS                                                              41   VSS

10   VDD                                                              42   CLC4OUT/RP2/U6RTS/U6BCLK/ICM5/RD8

11   PGEC3/AN5/C1INA/RP18/ICM3/OCM3A/RB5                              43   RP4/PMACK2/RD9

12   PGED3/AN4/C1INB/RP28/OCM3B/RB4                                   44   RP3/PMA15/PMCS2/RD10

13   AN3/C2INA/RB3                                                    45   RP12/PMA14/PMCS1/RD11

14   AN2/CTCMP/C2INB/RP13/CTED13/RB2                                  46   CLC3OUT/RP11/U6CTS/ICM6/RD0

15   PGEC1/ALTCVREF-/ALTVREF-/AN1/RP1/CTED12/RB1                      47   SOSCI/C3IND/RC13

16   PGED1/ALTCVREF+/ALTVREF+/AN0/RP0/PMA6/RB0                        48   SOSCO/C3INC/RPI37/PWRLCLK/RC14

17   PGEC2/AN6/RP6/RB6                                                49   RP24/U5TX/ICM4/RD1

18   PGED2/AN7/RP7/U6TX/RB7                                           50   RP23/PMACK1/RD2

19   AVDD                                                             51   RP22/ICM7/PMBE0/RD3

20   AVSS                                                             52   RP25/PMWR/PMENB/RD4

21   AN8/RP8/PWRGT/RB8                                                53   RP20/PMRD/PMWR/RD5

22   AN9/TMPR/RP9/T1CK/PMA7/RB9                                       54   C3INB/U5RX/OC4/RD6

23   TMS/CVREF/AN10/PMA13/RB10                                        55   C3INA/U5RTS/U5BCLK/OC5/RD7

24   TDO/AN11/REFI/PMA12/RB11                                         56   VCAP

25   VSS                                                              57   N/C

26   VDD                                                              58   U5CTS/OC6/RF0

27   TCK/AN12/U6RX/CTED2/PMA11/RB12                                   59   RF1

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

29   AN14/RP14/CTED5/CTPLS/PMA1/PMALH/RB14                            61   PMD1/RE1

30   AN15/RP29/CTED6/PMA0/PMALL/RB15                                  62   PMD2/RE2

31   RP10/SDA2/PMA9/RF4                                               63   CTED9/PMD3/RE3

32   RP17/SCL2/PMA8/RF5                                               64   HLVDIN/CTED8/PMD4/RE4

Legend:   RPn and RPIn represent remappable pins for Peripheral  Pin  Select (PPS) functions.

 2015-2018 Microchip Technology Inc.                                                                       DS30010074F-page 5
PIC24FJ1024GA610/GB610                                                           FAMILY

Pin Diagrams(2) (Continued)

64-Pin TQFP

64-Pin QFN(1)

                                 RE4  RE3  RE2   RE1       RE0  RF1  RF0   N/C   VCAP  RD7  RD6  RD5  RD4  RD3  RD2  RD1

                                 64   63   62    61        60   59   58    57   56     55   54   53   52   51   50   49

                    RE5      1                                                                                            48  RC14

                    RE6      2                                                                                            47  RC13

                    RE7      3                                                                                            46  RD0

                    RG6      4                                                                                            45  RD11

                    RG7      5                                                                                            44  RD10

                    RG8      6                                                                                            43  RD9

                    MCLR     7                                                                                            42  RD8

                    RG9      8                   PIC24FJXXXXGB606                                                         41  VSS

                    VSS      9                                                                                            40  OSCO/RC15

                    VDD      10                                                                                           39  OSCI/RC12

                    RB5      11                                                                                           38  VDD

                    RB4      12                                                                                           37  D+/RG2

                    RB3      13                                                                                           36  D-/RG3

                    RB2      14                                                                                           35  VUSB3V3

                    RB1      15                                                                                           34  VBUS/RF7

                    RB0      16                                                                                           33  RF3

                                 17   18   19    20        21   22   23    24    25    26   27    28    29    30    31   32

                                 RB6  RB7  AVDD  AVSS      RB8  RB9  RB10  RB11  VSS   VDD  RB12  RB13  RB14  RB15  RF4  RF5

Legend:  See Table 3 for a complete description of pin functions.

Note 1:  It is recommended to connect the metal pad on the bottom                of    the       64-pin    QFN       package  to VSS.

2:       Gray shading indicates 5.5V tolerant input pins.

DS30010074F-page 6                                                                                                             2015-2018  Microchip  Technology  Inc.
                                          PIC24FJ1024GA610/GB610 FAMILY

TABLE 3:   COMPLETE PIN FUNCTION DESCRIPTIONS (PIC24FJXXXGB606 TQFP/QFN)

Pin                          Function                                 Pin                         Function

1    IC4/CTED4/PMD5/RE5                                               33   RP16/USBID/RF3

2    SCL3/IC5/PMD6/RE6                                                34   VBUS/RF7

3    SDA3/IC6/PMD7/RE7                                                35   VUSB3V3

4    C1IND/RP21/ICM1/OCM1A/PMA5/RG6                                   36   D-/RG3

5    C1INC/RP26/OCM1B/PMA4/RG7                                        37   D+/RG2

6    C2IND/RP19/ICM2/OCM2A/PMA3/RG8                                   38   VDD

7    MCLR                                                             39   OSCI/CLKI/RC12

8    C1INC/C2INC/C3INC/RP27/OCM2B/PMA2/PMALU/RG9                      40   OSCO/CLKO/RC15

9    VSS                                                              41   VSS

10   VDD                                                              42   CLC4OUT/RP2/U6RTS/U6BCLK/ICM5/RD8

11   PGEC3/AN5/C1INA/RP18/ICM3/OCM3A/RB5                              43   RP4/SDA1/PMACK2/RD9

12   PGED3/AN4/C1INB/RP28/USBOEN/OCM3B/RB4                            44   RP3/SCL1/PMA15/PMCS2/RD10

13   AN3/C2INA/RB3                                                    45   RP12/PMA14/PMCS1/RD11

14   AN2/CTCMP/C2INB/RP13/CTED13/RB2                                  46   CLC3OUT/RP11/U6CTS/ICM6/INT0/RD0

15   PGEC1/ALTCVREF-/ALTVREF-/AN1/RP1/CTED12/RB1                      47   SOSCI/C3IND/RC13

16   PGED1/ALTCVREF+/ALTVREF+/AN0/RP0/PMA6/RB0                        48   SOSCO/C3INC/RPI37/PWRLCLK/RC14

17   PGEC2/AN6/RP6/RB6                                                49   RP24/U5TX/ICM4/RD1

18   PGED2/AN7/RP7/U6TX/RB7                                           50   RP23/PMACK1/RD2

19   AVDD                                                             51   RP22/ICM7/PMBE0/RD3

20   AVSS                                                             52   RP25/PMWR/PMENB/RD4

21   AN8/RP8/PWRGT/RB8                                                53   RP20/PMRD/PMWR/RD5

22   AN9/TMPR/RP9/T1CK/PMA7/RB9                                       54   C3INB/U5RX/OC4/RD6

23   TMS/CVREF/AN10/PMA13/RB10                                        55   C3INA/U5RTS/U5BCLK/OC5/RD7

24   TDO/AN11/REFI/PMA12/RB11                                         56   VCAP

25   VSS                                                              57   N/C

26   VDD                                                              58   U5CTS/OC6/RF0

27   TCK/AN12/U6RX/CTED2/PMA11/RB12                                   59   RF1

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

29   AN14/RP14/CTED5/CTPLS/PMA1/PMALH/RB14                            61   PMD1/RE1

30   AN15/RP29/CTED6/PMA0/PMALL/RB15                                  62   PMD2/RE2

31   RP10/SDA2/PMA9/RF4                                               63   CTED9/PMD3/RE3

32   RP17/SCL2/PMA8/RF5                                               64   HLVDIN/CTED8/PMD4/RE4

Legend:   RPn and RPIn represent remappable pins for Peripheral  Pin  Select (PPS) functions.

 2015-2018 Microchip Technology Inc.                                                                        DS30010074F-page 7
PIC24FJ1024GA610/GB610 FAMILY

Pin Diagrams(1) (Continued)

100-Pin TQFP

                             RE4  RE3  RE2  RG13  RG12  RG14  RE1  RE0  RA7  RA6   RG0  RG1  RF1  RF0   N/C  VCAP  RD7  RD6  RD5  RD4  RD13  RD12  RD3  RD2  RD1

                             100  99   98   97    96    95    94   93   92   91    90   89   88   87    86   85    84   83   82   81   80    79    78   77   76

         RG15            1                                                                                                                                        75  VSS

                    VDD  2                                                                                                                                        74  RC14

                    RE5  3                                                                                                                                        73  RC13

                    RE6  4                                                                                                                                        72  RD0

                    RE7  5                                                                                                                                        71  RD11

                    RC1  6                                                                                                                                        70  RD10

                    RC2  7                                                                                                                                        69  RD9

                    RC3  8                                                                                                                                        68  RD8

                    RC4  9                                                                                                                                        67  RA15

                    RG6  10                                                                                                                                       66  RA14

                    RG7  11                                                                                                                                       65  VSS

                    RG8  12                                                                                                                                       64  OSCO/RC15

         MCLR            13                                        PIC24FJXXXXGA610                                                                               63  OSCI/RC12

                    RG9  14                                                                                                                                       62  VDD

                    VSS  15                                                                                                                                       61  RA5

                    VDD  16                                                                                                                                       60  RA4

                    RA0  17                                                                                                                                       59  RA3

                    RE8  18                                                                                                                                       58  RA2

                    RE9  19                                                                                                                                       57  RG2

                    RB5  20                                                                                                                                       56  RG3

                    RB4  21                                                                                                                                       55  RF6

                    RB3  22                                                                                                                                       54  RF7

                    RB2  23                                                                                                                                       53  RF8

                    RB1  24                                                                                                                                       52  RF2

                    RB0  25                                                                                                                                       51  RF3

                            26   27   28   29    30    31    32   33   34    35    36   37   38   39    40    41    42    43    44    45   46   47    48    49   50

                            RB6  RB7  RA9  RA10  AVDD  AVSS  RB8  RB9  RB10  RB11  VSS  VDD  RA1  RF13  RF12  RB12  RB13  RB14  RB15  VSS  VDD  RD14  RD15  RF4  RF5

Legend:  See Table 4 for a complete description of pin functions.

Note 1:  Gray shading indicates 5.5V tolerant input pins.

DS30010074F-page 8                                                                                                                                                 2015-2018 Microchip  Technology  Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 4:         COMPLETE PIN FUNCTION DESCRIPTIONS (PIC24FJXXXGA610 TQFP)

Pin                          Function                                Pin                          Function

1    OCM1C/CTED3/RG15                                                51   RP16/RF3

2    VDD                                                             52   RP30/RF2

3    IC4/CTED4/PMD5/RE5                                              53   RP15/RF8

4    SCL3/IC5/PMD6/RE6                                               54   RF7

5    SDA3/IC6/PMD7/RE7                                               55   INT0/RF6

6    RPI38/OCM1D/RC1                                                 56   SDA1/RG3

7    RPI39/OCM2C/RC2                                                 57   SCL1/RG2

8    RPI40/OCM2D/RC3                                                 58   PMPCS1/SCL2/RA2

9    AN16/RPI41/OCM3C/PMCS2/RC4                                      59   SDA2/PMA20/RA3

10   AN17/C1IND/RP21/ICM1/OCM1A/PMA5/RG6                             60   TDI/PMA21/RA4

11   AN18/C1INC/RP26/OCM1B/PMA4/RG7                                  61   TDO/RA5

12   AN19/C2IND/RP19/ICM2/OCM2A/PMA3/RG8                             62   VDD

13   MCLR                                                            63   OSCI/CLKI/RC12

14   AN20/C1INC/C2INC/C3INC/RP27/OCM2B/PMA2/PMALU/RG9                64   OSCO/CLKO/RC15

15   VSS                                                             65   VSS

16   VDD                                                             66   RPI36/PMA22/RA14

17   TMS/OCM3D/RA0                                                   67   RPI35/PMBE1/RA15

18   RPI33/PMCS1/RE8                                                 68   CLC4OUT/RP2/U6RTS/U6BCLK/ICM5/RD8

19   AN21/RPI34/PMA19/RE9                                            69   RP4/PMACK2/RD9

20   PGEC3/AN5/C1INA/RP18/ICM3/OCM3A/RB5                             70   RP3/PMA15/PMCS2/RD10

21   PGED3/AN4/C1INB/RP28/OCM3B/RB4                                  71   RP12/PMA14/PMCS1/RD11

22   AN3/C2INA/RB3                                                   72   CLC3OUT/RP11/U6CTS/ICM6/RD0

23   AN2/CTCMP/C2INB/RP13/CTED13/RB2                                 73   SOSCI/C3IND/RC13

24   PGEC1/ALTCVREF-/ALTVREF-/AN1/RP1/CTED12/RB1                     74   SOSCO/C3INC/RPI37/PWRLCLK/RC14

25   PGED1/ALTCVREF+/ALTVREF+/AN0/RP0/RB0                            75   VSS

26   PGEC2/AN6/RP6/RB6                                               76   RP24/U5TX/ICM4/RD1

27   PGED2/AN7/RP7/U6TX/RB7                                          77   RP23/PMACK1/RD2

28   CVREF-/VREF-/PMA7/RA9                                           78   RP22/ICM7/PMBE0/RD3

29   CVREF+/VREF+/PMA6/RA10                                          79   RPI42/OCM3E/PMD12/RD12

30   AVDD                                                            80   OCM3F/PMD13/RD13

31   AVSS                                                            81   RP25/PMWR/PMENB/RD4

32   AN8/RP8/PWRGT/RB8                                               82   RP20/PMRD/PMWR/RD5

33   AN9/TMPR/RP9/T1CK/RB9                                           83   C3INB/U5RX/OC4/PMD14/RD6

34   CVREF/AN10/PMA13/RB10                                           84   C3INA/U5RTS/U5BCLK/OC5/PMD15/RD7

35   AN11/REFI/PMA12/RB11                                            85   VCAP

36   VSS                                                             86   N/C

37   VDD                                                             87   U5CTS/OC6/PMD11/RF0

38   TCK/RA1                                                         88   PMD10/RF1

39   RP31/RF13                                                       89   PMD9/RG1

40   RPI32/CTED7/PMA18/RF12                                          90   PMD8/RG0

41   AN12/U6RX/CTED2/PMA11/RB12                                      91   AN23/OCM1E/RA6

42   AN13/CTED1/PMA10/RB13                                           92   AN22/OCM1F/PMA17/RA7

43   AN14/RP14/CTED5/CTPLS/PMA1/PMALH/RB14                           93   PMD0/RE0

44   AN15/RP29/CTED6/PMA0/PMALL/RB15                                 94   PMD1/RE1

45   VSS                                                             95   CTED11/PMA16/RG14

46   VDD                                                             96   OCM2E/RG12

47   RPI43/RD14                                                      97   OCM2F/CTED10/RG13

48   RP5/RD15                                                        98   PMD2/RE2

49   RP10/PMA9/RF4                                                   99   CTED9/PMD3/RE3

50   RP17/PMA8/RF5                                                   100  HLVDIN/CTED8/PMD4/RE4

Legend:   RPn and RPIn represent remappable pins for Peripheral Pin  Select (PPS) functions.

 2015-2018 Microchip Technology Inc.                                                                       DS30010074F-page 9
PIC24FJ1024GA610/GB610 FAMILY

Pin Diagrams(1) (Continued)

100-Pin TQFP

                              RE4  RE3  RE2  RG13  RG12  RG14  RE1  RE0  RA7  RA6   RG0  RG1  RF1  RF0  N/C  VCA P  RD7  RD6  RD5  RD4  RD13  RD12  RD3  RD2  RD1

                              100  99   98   97    96    95    94   93   92   91    90   89   88   87    86  85     84   83   82   81   80    79    78   77   76

              RG15        1                                                                                                                                        75  VSS

                     VDD  2                                                                                                                                        74  RC14

                     RE5  3                                                                                                                                        73  RC13

                     RE6  4                                                                                                                                        72  RD0

                     RE7  5                                                                                                                                        71  RD11

                     RC1  6                                                                                                                                        70  RD10

                     RC2  7                                                                                                                                        69  RD9

                     RC3  8                                                                                                                                        68  RD8

                     RC4  9                                                                                                                                        67  RA15

                     RG6  10                                                                                                                                       66  RA14

                     RG7  11                                                                                                                                       65  VSS

                     RG8  12                                                                                                                                       64  OSCO/RC15

         MCLR             13                                        PIC24FJXXXXGB610                                                                               63  OSCI/RC12

                     RG9  14                                                                                                                                       62  VDD

                     VSS  15                                                                                                                                       61  RA5

                     VDD  16                                                                                                                                       60  RA4

                     RA0  17                                                                                                                                       59  RA3

                     RE8  18                                                                                                                                       58  RA2

                     RE9  19                                                                                                                                       57  D+/RG2

                     RB5  20                                                                                                                                       56  D-/RG3

                     RB4  21                                                                                                                                       55  VUSB3V3

                     RB3  22                                                                                                                                       54  VBUS/RF7

                     RB2  23                                                                                                                                       53  RF8

                     RB1  24                                                                                                                                       52  RF2

                     RB0  25                                                                                                                                       51  RF3

                             26   27   28   29    30    31    32   33   34    35    36   37   38   39    40    41    42    43    44    45   46   47    48    49   50

                             RB6  RB7  RA9  RA10  AVDD  AVSS  RB8  RB9  RB10  RB11  VSS  VDD  RA1  RF13  RF12  RB12  RB13  RB14  RB15  VSS  VDD  RD14  RD15  RF4  RF5

Legend:  See Table 5 for a complete description of pin functions.

Note 1:  Gray shading indicates 5.5V tolerant input pins.

DS30010074F-page 10                                                                                                                                               2015-2018 Microchip  Technology  Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 5:         COMPLETE PIN FUNCTION DESCRIPTIONS (PIC24FJXXXGB610 TQFP)

Pin                          Function                                Pin                          Function

1    OCM1C/CTED3/RG15                                                51   RP16/USBID/RF3

2    VDD                                                             52   RP30/RF2

3    IC4/CTED4/PMD5/RE5                                              53   RP15/RF8

4    SCL3/IC5/PMD6/RE6                                               54   VBUS/RF7

5    SDA3/IC6/PMD7/RE7                                               55   VUSB3V3

6    RPI38/OCM1D/RC1                                                 56   D-/RG3

7    RPI39/OCM2C/RC2                                                 57   D+/RG2

8    RPI40/OCM2D/RC3                                                 58   PMPCS1/SCL2/RA2

9    AN16/RPI41/OCM3C/PMCS2/RC4                                      59   SDA2/PMA20/RA3

10   AN17/C1IND/RP21/ICM1/OCM1A/PMA5/RG6                             60   TDI/PMA21/RA4

11   AN18/C1INC/RP26/OCM1B/PMA4/RG7                                  61   TDO/RA5

12   AN19/C2IND/RP19/ICM2/OCM2A/PMA3/RG8                             62   VDD

13   MCLR                                                            63   OSCI/CLKI/RC12

14   AN20/C1INC/C2INC/C3INC/RP27/OCM2B/PMA2/PMALU/RG9                64   OSCO/CLKO/RC15

15   VSS                                                             65   VSS

16   VDD                                                             66   RPI36/SCL1/PMA22/RA14

17   TMS/OCM3D/RA0                                                   67   RPI35/SDA1/PMBE1/RA15

18   RPI33/PMCS1/RE8                                                 68   CLC4OUT/RP2/U6RTS/U6BCLK/ICM5/RD8

19   AN21/RPI34/PMA19/RE9                                            69   RP4/PMACK2/RD9

20   PGEC3/AN5/C1INA/RP18/ICM3/OCM3A/RB5                             70   RP3/PMA15/PMCS2/RD10

21   PGED3/AN4/C1INB/RP28/USBOEN/OCM3B/RB4                           71   RP12/PMA14/PMCS1/RD11

22   AN3/C2INA/RB3                                                   72   CLC3OUT/RP11/U6CTS/ICM6/INT0/RD0

23   AN2/CTCMP/C2INB/RP13/CTED13/RB2                                 73   SOSCI/C3IND/RC13

24   PGEC1/ALTCVREF-/ALTVREF-/AN1/RP1/CTED12/RB1                     74   SOSCO/C3INC/RPI37/PWRLCLK/RC14

25   PGED1/ALTCVREF+/ALTVREF+/AN0/RP0/RB0                            75   VSS

26   PGEC2/AN6/RP6/RB6                                               76   RP24/U5TX/ICM4/RD1

27   PGED2/AN7/RP7/U6TX/RB7                                          77   RP23/PMACK1/RD2

28   CVREF-/VREF-/PMA7/RA9                                           78   RP22/ICM7/PMBE0/RD3

29   CVREF+/VREF+/PMA6/RA10                                          79   RPI42/OCM3E/PMD12/RD12

30   AVDD                                                            80   OCM3F/PMD13/RD13

31   AVSS                                                            81   RP25/PMWR/PMENB/RD4

32   AN8/RP8/PWRGT/RB8                                               82   RP20/PMRD/PMWR/RD5

33   AN9/TMPR/RP9/T1CK/RB9                                           83   C3INB/U5RX/OC4/PMD14/RD6

34   CVREF/AN10/PMA13/RB10                                           84   C3INA/U5RTS/U5BCLK/OC5/PMD15/RD7

35   AN11/REFI/PMA12/RB11                                            85   VCAP

36   VSS                                                             86   N/C

37   VDD                                                             87   U5CTS/OC6/PMD11/RF0

38   TCK/RA1                                                         88   PMD10/RF1

39   RP31/RF13                                                       89   PMD9/RG1

40   RPI32/CTED7/PMA18/RF12                                          90   PMD8/RG0

41   AN12/U6RX/CTED2/PMA11/RB12                                      91   AN23/OCM1E/RA6

42   AN13/CTED1/PMA10/RB13                                           92   AN22/OCM1F/PMA17/RA7

43   AN14/RP14/CTED5/CTPLS/PMA1/PMALH/RB14                           93   PMD0/RE0

44   AN15/RP29/CTED6/PMA0/PMALL/RB15                                 94   PMD1/RE1

45   VSS                                                             95   CTED11/PMA16/RG14

46   VDD                                                             96   OCM2E/RG12

47   RPI43/RD14                                                      97   OCM2F/CTED10/RG13

48   RP5/RD15                                                        98   PMD2/RE2

49   RP10/PMA9/RF4                                                   99   CTED9/PMD3/RE3

50   RP17/PMA8/RF5                                                   100  HLVDIN/CTED8/PMD4/RE4

Legend:   RPn and RPIn represent remappable pins for Peripheral Pin  Select (PPS) functions.

 2015-2018 Microchip Technology Inc.                                                                       DS30010074F-page 11
PIC24FJ1024GA610/GB610                                             FAMILY

Pin Diagrams(1) (Continued)

PIC24FJXXXGA610 121-Pin BGA

                     1     2     3     4                   5       6     7     8     9     10     11

         A           RE4   RE3   RG13  RE0                 RG0     RF1   N/C   N/C   RD12  RD2    RD1

         B           N/C   RG15  RE2   RE1                 RA7     RF0   VCAP  RD5   RD3   VSS    RC14

         C           RE6   VDD   RG12  RG14                RA6     N/C   RD7   RD4   N/C   RC13   RD11

         D           RC1   RE7   RE5   N/C                 N/C     N/C   RD6   RD13  RD0   N/C    RD10

         E           RC4   RC3   RG6   RC2                 N/C     RG1   N/C   RA15  RD8   RD9    RA14

         F           MCLR  RG8   RG9   RG7                 VSS     N/C   N/C   VDD   RC12  VSS    RC15

         G           RE8   RE9   RA0   N/C                 VDD     VSS   VSS   N/C   RA5   RA3    RA4

         H           RB5   RB4   N/C   N/C                 N/C     VDD   N/C   RF7   RF6   RG2    RA2

         J           RB3   RB2   RB7   AVDD                RB11    RA1   RB12  N/C   N/C   RF8    RG3

         K           RB1   RB0   RA10  RB8                 N/C     RF12  RB14  VDD   RD15  RF3    RF2

         L           RB6   RA9   AVSS  RB9                 RB10    RF13  RB13  RB15  RD14  RF4    RF5

Legend:  See Table 6 for a complete description of pin functions.

Note 1:  Gray shading indicates 5.5V tolerant input pins.

DS30010074F-page 12                                                                   2015-2018  Microchip  Technology  Inc.
                                            PIC24FJ1024GA610/GB610 FAMILY

TABLE    6:    COMPLETE PIN FUNCTION DESCRIPTIONS (PIC24FJXXXGA610 BGA)

Pin                          Full Pin Name                            Pin                             Full Pin Name

A1       HLVDIN/CTED8/PMD4/RE4                                        E1            AN16/RPI41/OCM3C/PMCS2/RC4

A2       CTED9/PMD3/RE3                                               E2            RPI40/OCM2D/RC3

A3       OCM2F/CTED10/RG13                                            E3            AN17/C1IND/RP21/ICM1/OCM1A/PMA5/RG6

A4       PMD0/RE0                                                     E4            RPI39/OCM2C/RC2

A5       PMD8/RG0                                                     E5            N/C

A6       PMD10/RF1                                                    E6            PMD9/RG1

A7       N/C                                                          E7            N/C

A8       N/C                                                          E8            RPI35/PMBE1/RA15

A9       RPI42/OCM3E/PMD12/RD12                                       E9            CLC4OUT/RP2/U6RTS/U6BCLK/ICM5/RD8

A10      RP23/PMACK1/RD2                                              E10           RP4/PMACK2/RD9

A11      RP24/U5TX/ICM4/RD1                                           E11           RPI36/PMA22/RA14

B1       N/C                                                          F1            MCLR

B2       OCM1C/CTED3/RG15                                             F2            AN19/C2IND/RP19/ICM2/OCM2A/PMA3/RG8

B3       PMD2/RE2                                                     F3            AN20/C1INC/C2INC/C3INC/RP27/OCM2B/PMA2/PMALU/

                                                                                    RG9

B4       PMD1/RE1                                                     F4            AN18/C1INC/RP26/OCM1B/PMA4/RG7

B5       AN22/OCM1F/PMA17/RA7                                         F5            VSS

B6       U5CTS/OC6/PMD11/RF0                                          F6            N/C

B7       VCAP                                                         F7            N/C

B8       RP20/PMRD/PMWR/RD5                                           F8            VDD

B9       RP22/ICM7/PMBE0/RD3                                          F9            OSCI/CLKI/RC12

B10      VSS                                                          F10           VSS

B11      SOSCO/C3INC/RPI37/PWRLCLK/RC14                               F11           OSCO/CLKO/RC15

C1       SCL3/IC5/PMD6/RE6                                            G1            RPI33/PMCS1/RE8

C2       VDD                                                          G2            AN21/RPI34/PMA19/RE9

C3       OCM2E/RG12                                                   G3            TMS/OCM3D/RA0

C4       CTED11/PMA16/RG14                                            G4            N/C

C5       AN23/OCM1E/RA6                                               G5            VDD

C6       N/C                                                          G6            VSS

C7       C3INA/U5RTS/U5BCLK/OC5/PMD15/RD7                             G7            VSS

C8       RP25/PMWR/PMENB/RD4                                          G8            N/C

C9       N/C                                                          G9            TDO/RA5

C10      SOSCI/C3IND/RC13                                             G10           SDA2/PMA20/RA3

C11      RP12/PMA14/PMCS1/RD11                                        G11           TDI/PMA21/RA4

D1       RPI38/OCM1D/RC1                                              H1            PGEC3/AN5/C1INA/RP18/ICM3/OCM3A/RB5

D2       SDA3/IC6/PMD7/RE7                                            H2            PGED3/AN4/C1INB/RP28/OCM3B/RB4

D3       IC4/CTED4/PMD5/RE5                                           H3            N/C

D4       N/C                                                          H4            N/C

D5       N/C                                                          H5            N/C

D6       N/C                                                          H6            VDD

D7       C3INB/U5RX/OC4/PMD14/RD6                                     H7            N/C

D8       OCM3F/PMD13/RD13                                             H8            RF7

D9       CLC3OUT/RP11/U6CTS/ICM6/RD0                                  H9            INT0/RF6

D10      N/C                                                          H10           SCL1/RG2

D11      RP3/PMA15/PMCS2/RD10                                         H11           PMPCS1/SCL2/RA2

Legend:  RPn and RPIn represent remappable pins for  Peripheral  Pin  Select (PPS)  functions.

 2015-2018 Microchip Technology Inc.                                                                           DS30010074F-page 13
PIC24FJ1024GA610/GB610 FAMILY

TABLE    6:    COMPLETE PIN FUNCTION DESCRIPTIONS (PIC24FJXXXGA610 BGA) (CONTINUED)

Pin                         Full Pin Name                            Pin                              Full Pin Name

J1       AN3/C2INA/RB3                                               K7            AN14/RP14/CTED5/CTPLS/PMA1/PMALH/RB14

J2       AN2/CTCMP/C2INB/RP13/CTED13/RB2                             K8            VDD

J3       PGED2/AN7/RP7/U6TX/RB7                                      K9            RP5/RD15

J4       AVDD                                                        K10           RP16/RF3

J5       AN11/REFI/PMA12/RB11                                        K11           RP30/RF2

J6       TCK/RA1                                                     L1            PGEC2/AN6/RP6/RB6

J7       AN12/U6RX/CTED2/PMA11/RB12                                  L2            CVREF-/VREF-/PMA7/RA9

J8       N/C                                                         L3            AVSS

J9       N/C                                                         L4            AN9/TMPR/RP9/T1CK/RB9

J10      RP15/RF8                                                    L5            CVREF/AN10/PMA13/RB10

J11      SDA1/RG3                                                    L6            RP31/RF13

K1       PGEC1/ALTCVREF-/ALTVREF-/AN1/RP1/CTED12/RB1                 L7            AN13/CTED1/PMA10/RB13

K2       PGED1/ALTCVREF+/ALTVREF+/AN0/RP0/RB0                        L8            AN15/RP29/CTED6/PMA0/PMALL/RB15

K3       CVREF+/VREF+/PMA6/RA10                                      L9            RPI43/RD14

K4       AN8/RP8/PWRGT/RB8                                           L10           RP10/PMA9/RF4

K5       N/C                                                         L11           RP17/PMA8/RF5

K6       RPI32/CTED7/PMA18/RF12

Legend:  RPn and RPIn represent remappable pins for Peripheral  Pin  Select (PPS)  functions.

DS30010074F-page 14                                                                             2015-2018 Microchip Technology Inc.
                                              PIC24FJ1024GA610/GB610                                                   FAMILY

Pin  Diagrams(1) (Continued)

     PIC24FJXXXGB610 121-Pin BGA

                 1     2                3     4                 5       6     7     8         9        10      11

              A  RE4   RE3              RG13  RE0               RG0     RF1   N/C   N/C       RD12     RD2     RD1

              B  N/C   RG15             RE2   RE1               RA7     RF0   VCAP  RD5       RD3      VSS     RC14

              C  RE6   VDD              RG12  RG14              RA6     N/C   RD7   RD4       N/C      RC13    RD11

              D  RC1   RE7              RE5   N/C               N/C     N/C   RD6   RD13      RD0      N/C     RD10

              E  RC4   RC3              RG6   RC2               N/C     RG1   N/C   RA15      RD8      RD9     RA14

              F  MCLR  RG8              RG9   RG7               VSS     N/C   N/C   VDD       RC12     VSS     RC15

              G  RE8   RE9              RA0   N/C               VDD     VSS   VSS   N/C       RA5      RA3     RA4

              H  RB5   RB4              N/C   N/C               N/C     VDD   N/C   VBUS/RF7  VUSB3V3  D+/RG2  RA2

              J  RB3   RB2              RB7   AVDD              RB11    RA1   RB12  N/C       N/C      RF8     D-/RG3

              K  RB1   RB0              RA10  RB8               N/C     RF12  RB14  VDD       RD15     RF3     RF2

              L  RB6   RA9              AVSS  RB9               RB10    RF13  RB13  RB15      RD14     RF4     RF5

     Legend:  See Table 7 for a complete description of pin functions.

     Note 1:  Gray shading indicates 5.5V tolerant input pins.

  2015-2018 Microchip Technology Inc.                                                                         DS30010074F-page 15
PIC24FJ1024GA610/GB610 FAMILY

TABLE    7:    COMPLETE PIN FUNCTION DESCRIPTIONS (PIC24FJXXXGB610 BGA)

Pin                          Full Pin  Name                           Pin                            Full Pin Name

A1       HLVDIN/CTED8/PMD4/RE4                                        E1            AN16/RPI41/OCM3C/PMCS2/RC4

A2       CTED9/PMD3/RE3                                               E2            RPI40/OCM2D/RC3

A3       OCM2F/CTED10/RG13                                            E3            AN17/C1IND/RP21/ICM1/OCM1A/PMA5/RG6

A4       PMD0/RE0                                                     E4            RPI39/OCM2C/RC2

A5       PMD8/RG0                                                     E5            N/C

A6       PMD10/RF1                                                    E6            PMD9/RG1

A7       N/C                                                          E7            N/C

A8       N/C                                                          E8            RPI35/SDA1/PMBE1/RA15

A9       RPI42/OCM3E/PMD12/RD12                                       E9            CLC4OUT/RP2/U6RTS/U6BCLK/ICM5/RD8

A10      RP23/PMACK1/RD2                                              E10           RP4/PMACK2/RD9

A11      RP24/U5TX/ICM4/RD1                                           E11           RPI36/SCL1/PMA22/RA14

B1       N/C                                                          F1            MCLR

B2       OCM1C/CTED3/RG15                                             F2            AN19/C2IND/RP19/ICM2/OCM2A/PMA3/RG8

B3       PMD2/RE2                                                     F3            AN20/C1INC/C2INC/C3INC/RP27/OCM2B/PMA2/PMALU/

                                                                                    RG9

B4       PMD1/RE1                                                     F4            AN18/C1INC/RP26/OCM1B/PMA4/RG7

B5       AN22/OCM1F/PMA17/RA7                                         F5            VSS

B6       U5CTS/OC6/PMD11/RF0                                          F6            N/C

B7       VCAP                                                         F7            N/C

B8       RP20/PMRD/PMWR/RD5                                           F8            VDD

B9       RP22/ICM7/PMBE0/RD3                                          F9            OSCI/CLKI/RC12

B10      VSS                                                          F10           VSS

B11      SOSCO/C3INC/RPI37/PWRLCLK/RC14                               F11           OSCO/CLKO/RC15

C1       SCL3/IC5/PMD6/RE6                                            G1            RPI33/PMCS1/RE8

C2       VDD                                                          G2            AN21/RPI34/PMA19/RE9

C3       OCM2E/RG12                                                   G3            TMS/OCM3D/RA0

C4       CTED11/PMA16/RG14                                            G4            N/C

C5       AN23/OCM1E/RA6                                               G5            VDD

C6       N/C                                                          G6            VSS

C7       C3INA/U5RTS/U5BCLK/OC5/PMD15/RD7                             G7            VSS

C8       RP25/PMWR/PMENB/RD4                                          G8            N/C

C9       N/C                                                          G9            TDO/RA5

C10      SOSCI/C3IND/RC13                                             G10           SDA2/PMA20/RA3

C11      RP12/PMA14/PMCS1/RD11                                        G11           TDI/PMA21/RA4

D1       RPI38/OCM1D/RC1                                              H1            PGEC3/AN5/C1INA/RP18/ICM3/OCM3A/RB5

D2       SDA3/IC6/PMD7/RE7                                            H2            PGED3/AN4/C1INB/RP28/USBOEN/OCM3B/RB4

D3       IC4/CTED4/PMD5/RE5                                           H3            N/C

D4       N/C                                                          H4            N/C

D5       N/C                                                          H5            N/C

D6       N/C                                                          H6            VDD

D7       C3INB/U5RX/OC4/PMD14/RD6                                     H7            N/C

D8       OCM3F/PMD13/RD13                                             H8            VBUS/RF7

D9       CLC3OUT/RP11/U6CTS/ICM6/INT0/RD0                             H9            VUSB3V3

D10      N/C                                                          H10           D+/RG2

D11      RP3/PMA15/PMCS2/RD10                                         H11           PMPCS1/SCL2/RA2

Legend:  RPn and RPIn represent remappable pins for  Peripheral  Pin  Select (PPS)  functions.

DS30010074F-page 16                                                                                  2015-2018 Microchip Technology  Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE    7:      COMPLETE PIN FUNCTION DESCRIPTIONS (PIC24FJXXXGB610 BGA) (CONTINUED)

Pin                         Full Pin Name                            Pin                              Full Pin Name

J1       AN3/C2INA/RB3                                               K7            AN14/RP14/CTED5/CTPLS/PMA1/PMALH/RB14

J2       AN2/CTCMP/C2INB/RP13/CTED13/RB2                             K8            VDD

J3       PGED2/AN7/RP7/U6TX/RB7                                      K9            RP5/RD15

J4       AVDD                                                        K10           RP16/USBID/RF3

J5       AN11/REFI/PMA12/RB11                                        K11           RP30/RF2

J6       TCK/RA1                                                     L1            PGEC2/AN6/RP6/RB6

J7       AN12/U6RX/CTED2/PMA11/RB12                                  L2            CVREF-/VREF-/PMA7/RA9

J8       N/C                                                         L3            AVSS

J9       N/C                                                         L4            AN9/TMPR/RP9/T1CK/RB9

J10      RP15/RF8                                                    L5            CVREF/AN10/PMA13/RB10

J11      D-/RG3                                                      L6            RP31/RF13

K1       PGEC1/ALTCVREF-/ALTVREF-/AN1/RP1/CTED12/RB1                 L7            AN13/CTED1/PMA10/RB13

K2       PGED1/ALTCVREF+/ALTVREF+/AN0/RP0/RB0                        L8            AN15/RP29/CTED6/PMA0/PMALL/RB15

K3       CVREF+/VREF+/PMA6/RA10                                      L9            RPI43/RD14

K4       AN8/RP8/PWRGT/RB8                                           L10           RP10/PMA9/RF4

K5       N/C                                                         L11           RP17/PMA8/RF5

K6       RPI32/CTED7/PMA18/RF12

Legend:  RPn and RPIn represent remappable pins for Peripheral  Pin  Select (PPS)  functions.

 2015-2018 Microchip Technology Inc.                                                                     DS30010074F-page 17
PIC24FJ1024GA610/GB610 FAMILY

Table of Contents

1.0   Device Overview ........................................................................................................................................................................ 21

2.0   Guidelines for Getting Started with 16-Bit Microcontrollers ........................................................................................................ 41

3.0   CPU ........................................................................................................................................................................................... 47

4.0   Memory Organization ................................................................................................................................................................. 53

5.0   Direct Memory Access Controller (DMA) ................................................................................................................................... 81

6.0   Flash Program Memory .............................................................................................................................................................. 89

7.0   Resets ........................................................................................................................................................................................ 97

8.0   Interrupt Controller ................................................................................................................................................................... 103

9.0   Oscillator Configuration ............................................................................................................................................................ 115

10.0  Power-Saving Features ............................................................................................................................................................ 137

11.0  I/O Ports ................................................................................................................................................................................... 149

12.0  Timer1 ...................................................................................................................................................................................... 185

13.0  Timer2/3 and Timer4/5 ............................................................................................................................................................ 187

14.0  Input Capture with Dedicated Timers ....................................................................................................................................... 193

15.0  Output Compare with Dedicated Timers .................................................................................................................................. 199

16.0  Capture/Compare/PWM/Timer Modules (MCCP and SCCP) .................................................................................................. 209

17.0  Serial Peripheral Interface (SPI)............................................................................................................................................... 227
      Inter-Integrated Circuit (I2C) ..................................................................................................................................................... 247
18.0

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

20.0  Universal Serial Bus with On-The-Go Support (USB OTG) ..................................................................................................... 265

21.0  Enhanced Parallel Master Port (EPMP) ................................................................................................................................... 299

22.0  Real-Time Clock and Calendar with Timestamp ...................................................................................................................... 311

23.0  32-Bit Programmable Cyclic Redundancy Check (CRC) Generator ........................................................................................ 331

24.0  Configurable Logic Cell (CLC).................................................................................................................................................. 337

25.0  12-Bit A/D Converter with Threshold Detect ............................................................................................................................ 347

26.0  Triple Comparator Module........................................................................................................................................................ 363

27.0  Comparator Voltage Reference................................................................................................................................................ 369

28.0  Charge Time Measurement Unit (CTMU) ................................................................................................................................ 371

29.0  High/Low-Voltage Detect (HLVD)............................................................................................................................................. 381

30.0  Special Features ..................................................................................................................................................................... 383

31.0  Development Support............................................................................................................................................................... 401

32.0  Instruction Set Summary .......................................................................................................................................................... 405

33.0  Electrical Characteristics .......................................................................................................................................................... 413

34.0  Packaging Information.............................................................................................................................................................. 445

Appendix A: Revision History............................................................................................................................................................. 459

Index .................................................................................................................................................................................................   461

The Microchip Web Site ..................................................................................................................................................................... 469

Customer Change Notification Service .............................................................................................................................................. 469

Customer Support .............................................................................................................................................................................. 469

Product Identification System............................................................................................................................................................. 471

DS30010074F-page 18             2015-2018 Microchip Technology Inc.
                                       PIC24FJ1024GA610/GB610 FAMILY

                                       TO OUR VALUED CUSTOMERS

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

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

enhanced as new volumes and updates are introduced.

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

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

Most Current Data Sheet

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

   http://www.microchip.com

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

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

Errata

An errata sheet, describing minor operational differences from the data sheet and recommended workarounds, may exist for current

devices. As device/documentation issues become known to us, we will publish an errata sheet. The errata will specify the revision

of silicon and revision of document to which it applies.

To determine if an errata sheet exists for a particular device, please check with one of the following:

•  Microchip’s Worldwide Web site; http://www.microchip.com

•  Your local Microchip sales office (see last page)

When contacting a sales office, please specify which device, revision of silicon and data sheet (include literature number) you are

using.

Customer Notification System

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

 2015-2018 Microchip Technology Inc.                                                                          DS30010074F-page 19
PIC24FJ1024GA610/GB610 FAMILY

Referenced Sources

This  device  data    sheet    is   based    on  the  following

individual  chapters     of    the  “dsPIC33/PIC24       Family

Reference     Manual”.    These     documents        should  be

considered as the general reference for the operation

of a particular module or device feature.

   Note 1:    To  access       the  documents    listed  below,

              browse to the documentation section of

              the PIC24FJ1024GA610/GB610 product

              page    of       the  Microchip    web     site

              (www.microchip.com)       or   select   a  family

              reference        manual   section  from        the

              following list.

              In addition to parameters, features and

              other documentation, the resulting page

              provides    links     to  the  related     family

              reference manual sections.

•  “CPU with Extended Data Space (EDS)” (DS39732)

•  “Data Memory with Extended Data Space (EDS)” (DS39733)

•  “Direct Memory Access Controller (DMA)” (DS39742)

•  “PIC24F Flash Program Memory” (DS30009715)

•  “Reset” (DS39712)

•  “Interrupts” (DS70000600)

•  “Power-Saving Features” (DS39698)

•  “I/O Ports with Interrupt-on-Change (IOC)” (DS70005186)

•  “Timers” (DS39704)

•  ”Input Capture with Dedicated Timer” (DS70000352)

•  “Output Compare with Dedicated Timer” (DS70005159)

•  “Capture/Compare/PWM/Timer (MCCP and SCCP)” (DS33035A)

•  “Serial Peripheral Interface (SPI) with Audio Codec Support” (DS70005136)

•  “Inter-Integrated Circuit (I2C)” (DS70000195)

•  “UART” (DS39708)

•  “USB On-The-Go (OTG)” (DS39721)

•  “Enhanced Parallel Master Port (EPMP)” (DS39730)

•  “RTCC with Timestamp” (DS70005193)

•  “RTCC with External Power Control” (DS39745)

•  “32-Bit Programmable Cyclic Redundancy Check (CRC)” (DS30009729)

•  “12-Bit A/D Converter with Threshold Detect” (DS39739)

•  “Scalable Comparator Module” (DS39734)

•  “Dual Comparator Module” (DS39710)

•  “Charge Time Measurement Unit (CTMU) and CTMU Operation with Threshold Detect” (DS30009743)

•  “High-Level Integration with Programmable High/Low-Voltage Detect (HLVD)” (DS39725)

•  “Watchdog Timer (WDT)” (DS39697)

•  “CodeGuard™ Intermediate Security” (DS70005182)

•  “High-Level Device Integration” (DS39719)

•  “Programming and Diagnostics” (DS39716)

•  “Dual Partition Flash Program Memory” (DS70005156)

DS30010074F-page 20                                                            2015-2018 Microchip Technology Inc.
                                                     PIC24FJ1024GA610/GB610 FAMILY

1.0        DEVICE OVERVIEW                                          This new low-power mode also supports the continuous

This document contains device-specific information for              operation of the low-power, on-chip Real-Time Clock/

the following devices:                                              Calendar (RTCC), making it possible for an application

                                                                    to keep time while the device is otherwise asleep.

   •  PIC24FJ1024GB610              •     PIC24FJ1024GA610          Aside from this new feature, PIC24FJ1024GA610/GB610

   •  PIC24FJ512GB610               •     PIC24FJ512GA610           family devices also include all of the legacy power-saving

   •  PIC24FJ256GB610               •     PIC24FJ256GA610           features of previous PIC24F microcontrollers, such as:

   •  PIC24FJ128GB610               •     PIC24FJ128GA610           •  On-the-Fly Clock Switching, allowing the selection

   •  PIC24FJ1024GB606              •     PIC24FJ1024GA606             of a lower power clock during run time

   •  PIC24FJ512GB606               •     PIC24FJ512GA606           •  Doze Mode Operation, for maintaining peripheral

                                                                       clock speed while slowing the CPU clock

   •  PIC24FJ256GB606               •     PIC24FJ256GA606           •  Instruction-Based Power-Saving Modes, for quick

   •  PIC24FJ128GB606               •     PIC24FJ128GA606              invocation of the Idle and the Sleep modes

The PIC24FJ1024GA610/GB610 family introduces many                   1.1.3            OSCILLATOR OPTIONS AND

new    analog       features    to     the  extreme     low-power                    FEATURES

Microchip devices. This is a 16-bit microcontroller family          All of the devices in the PIC24FJ1024GA610/GB610

with   a  broad     peripheral  feature     set  and    enhanced    family    offer  six  different  oscillator   options,  allowing

computational performance. This family also offers a                users   a  range      of  choices   in  developing  application

new migration option for those high-performance appli-              hardware. These include:

cations which may be outgrowing their 8-bit platforms,

but do not require the numerical processing power of a              •  Two Crystal modes

Digital Signal Processor (DSP).                                     •  Two External Clock (EC) modes

Table 1-3 lists the functions of the various pins shown             •  A Phase-Locked Loop (PLL) frequency multiplier,

in the pinout diagrams.                                                which allows clock speeds of up to 32 MHz

                                                                    •  A Digitally Controlled Oscillator (DCO) with

1.1        Core Features                                               multiple frequencies and fast wake-up time

1.1.1      16-BIT ARCHITECTURE                                      •  A Fast Internal Oscillator (FRC), a nominal 8 MHz

                                                                       output, with multiple frequency divider options

Central to all PIC24F devices is the 16-bit modified                •  A separate Low-Power Internal RC Oscillator

Harvard architecture, first introduced with Microchip’s                (LPRC), 31 kHz nominal, for low-power,

dsPIC® Digital Signal Controllers (DSCs). The PIC24F                   timing-insensitive applications.

CPU core offers a wide range of enhancements, such                  The  internal    oscillator    block    also  provides  a  stable

as:                                                                 reference  source         for  the  Fail-Safe  Clock    Monitor

•     16-bit data and 24-bit address paths with the                 (FSCM). This option constantly monitors the main clock

      ability to move information between data and                  source against a reference signal provided by the inter-

      memory spaces                                                 nal oscillator and enables the controller to switch to the

•     Linear addressing of up to 12 Mbytes (program                 internal   oscillator,    allowing  for  continued  low-speed

      space) and 32 Kbytes (data)                                   operation or a safe application shutdown.

•     A 16-element Working register array with built-in             1.1.4            EASY MIGRATION

      software stack support                                        Regardless of the memory size, all devices share the

•     A 17 x 17 hardware multiplier with support for                same rich set of peripherals, allowing for a smooth

      integer math                                                  migration path as applications grow and evolve. The

•     Hardware support for 32 by 16-bit division                    consistent pinout scheme used throughout the entire

•     An instruction set that supports multiple                     family also aids in migrating from one device to the next

      addressing modes and is optimized for high-level              larger device, or even in jumping from 64-pin to 100-pin

      languages, such as ‘C’                                        devices.

•     Operational performance up to 16 MIPS                         The PIC24F family is pin-compatible with devices in the

1.1.2      POWER-SAVING TECHNOLOGY                                  dsPIC33 family, and shares some compatibility with the

The   PIC24FJ1024GA610/GB610                family    of  devices   pinout schema for PIC18 and dsPIC30. This extends

includes   Retention    Sleep,         a  low-power   mode  with    the ability of applications to grow from the relatively

essential  circuits  being      powered     from     a    separate  simple, to the powerful and complex, yet still selecting

low-voltage regulator.                                              a Microchip device.

 2015-2018 Microchip Technology Inc.                                                                        DS30010074F-page 21
PIC24FJ1024GA610/GB610                                          FAMILY

1.2  DMA Controller                                             •   Enhanced Parallel Master/Parallel Slave Port:

PIC24FJ1024GA610/GB610 family devices have a Direct                 This module allows rapid and transparent access

Memory Access (DMA) Controller. This module acts in                 to the microcontroller data bus, and enables the

concert with the CPU, allowing data to move between                 CPU to directly address external data memory. The

data memory and peripherals without the intervention of             parallel port can function in Master or Slave mode,

the CPU, increasing data throughput and decreasing exe-             accommodating data widths of 4, 8 or 16 bits and

cution time overhead. Eight independently programmable              address widths of up to 23 bits in Master modes.

channels make it possible to service multiple peripherals       •   Real-Time Clock and Calendar (RTCC): This

at virtually the same time, with each channel peripheral            module implements a full-featured clock and

performing  a  different  operation.  Many  types     of  data      calendar with alarm functions in hardware, freeing

transfer operations are supported.                                  up timer resources and program memory space

                                                                    for use of the core application.

1.3  Other Special Features                                     1.4        Details on Individual Family

•  Peripheral Pin Select: The Peripheral Pin Select                        Members

   (PPS) feature allows most digital peripherals to be          Devices in the PIC24FJ1024GA610/GB610 family are

   mapped over a fixed set of digital I/O pins. Users           available in 64-pin, 100-pin and 121-pin packages. The

   may independently map the input and/or output of             general    block  diagram    for  all  devices  is   shown       in

   any one of the many digital peripherals to any one           Figure 1-1.

   of the I/O pins.

•  Configurable Logic Cell: The Configurable                    The  devices      are  differentiated    from  each  other       in

   Logic Cell (CLC) module allows the user to                   six ways:

   specify combinations of signals as inputs to a               1.   Flash     program      memory       (128   Kbytes      for

   logic function and to use the logic output to control             PIC24FJ128GX6XX         devices,    256    Kbytes      for

   other peripherals or I/O pins.                                    PIC24FJ256GX6XX         devices,    512    Kbytes      for

•  Timing Modules: The PIC24FJ1024GA610/GB610                        PIC24FJ512GX6XX devices and 1024 Kbytes

   family provides five independent, general purpose,                for PIC24FJ1024GX6XX devices).

   16-bit timers (four of which can be combined                 2.   Available I/O pins and ports (53 pins on 6 ports

   into two 32-bit timers). The devices also include                 for 64-pin devices and 85 pins on 7 ports for

   3 multiple output and 4 single output advanced                    100-pin and 121-pin devices).

   Capture/Compare/PWM/Timer peripherals, and                   3.   Available Interrupt-on-Change Notification (IOC)

   6 independent legacy Input Capture and                            inputs (53 on 64-pin devices and 85 on 100-pin

   6 independent legacy Output Compare modules.                      and 121-pin devices).

•  Communications: The PIC24FJ1024GA610/                        4.   Available remappable pins (29 pins on 64-pin

   GB610 family incorporates a range of serial                       devices,     44   pins  on   100-pin      and   121-pin

   communication peripherals to handle a range of                    devices).

   application requirements. There are 3 independent            5.   Available      USB      peripheral     (available      on
   I2C modules that support both Master and Slave
                                                                     PIC24FJXXXGB6XX devices; not available on
   modes of operation. Devices also have, through
                                                                     PIC24FJXXXGA6XX devices).
   the PPS feature, 6 independent UARTs with built-in
   IrDA® encoders/decoders and 3 SPI modules.                   6.   Analog input channels (16 channels for 64-pin

•  Analog Features: All members of the                               devices and 24 channels for 100-pin and 121-pin

   PIC24FJ1024GA610/GB610 family include the                         devices).

   new 12-bit A/D Converter (A/D) module and a                  All other features for devices in this family are identical.

   triple comparator module. The A/D module incor-              These     are  summarized    in   Table 1-1,   Table 1-2    and

   porates a range of new features that allow the               Table 1-3.

   converter to assess and make decisions on                    A   list   of  the     pin   features    available      on  the

   incoming data, reducing CPU overhead for                     PIC24FJ1024GA610/GB610              family     devices,  sorted

   routine A/D conversions. The comparator module               by function, is shown in Table 1-3. Note that this table

   includes three analog comparators that are                   shows the pin location of individual peripheral features

   configurable for a wide range of operations.                 and not how they are multiplexed on the same pin. This

•  CTMU Interface: In addition to their other analog            information is provided in the pinout diagrams in the

   features, members of the PIC24FJ1024GA610/                   beginning of this data sheet. Multiplexed features are

   GB610 family include the CTMU interface module.              sorted by the priority given to a feature, with the highest

   This provides a convenient method for precision              priority peripheral being listed first.

   time measurement and pulse generation, and can

   serve as an interface for capacitive sensors.

DS30010074F-page 22                                                                     2015-2018 Microchip Technology Inc.
                                       PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-1:           DEVICE FEATURES FOR THE PIC24FJ1024GA606/GB606: 64-PIN DEVICES

                Features               PIC24FJ128GX606  PIC24FJ256GX606  PIC24FJ512GX606             PIC24FJ1024GX606

Operating Frequency                                                   DC – 32 MHz

Program Memory (bytes)                 128K             256K                       512K                   1024K

Program Memory (instructions)          44,032           88,064                    176,128                 352,256

Data Memory (bytes)                                                      32K

Interrupt Sources (soft vectors/                                      103 (97/6)

NMI traps)

I/O Ports                                                             Ports B, C, D, E, F, G

Total I/O Pins                                                           53

Remappable Pins                                                       29 (28 I/O, 1 input only)

Timers:

Total Number (16-bit)                                                    5(1)

32-Bit (from paired 16-bit timers)                                       2

Input Capture Channels                                                   6(1)

Output Compare/PWM Channels                                              6(1)

Input Change Notification Interrupt                                      53

Serial Communications:

UART                                                                     6(1)

SPI (3-wire/4-wire)                                                      3(1)

I2C                                                                      3

Configurable Logic Cell (CLC)                                            4(1)

Parallel Communications                                                  Yes

(EPMP/PSP)

Capture/Compare/PWM/Timer                               3 Multiple Outputs and 4 Single Outputs

Modules

JTAG Boundary Scan                                                       Yes

12/10-Bit Analog-to-Digital Converter                                    16

(A/D) Module (input channels)

Analog Comparators                                                       3

CTMU Interface                                                           Yes

Universal Serial Bus Controller                         Yes (PIC24FJ1024GB606 devices only)

Resets (and Delays)                                     Core POR, VDD POR, BOR, RESET Instruction,

                                               MCLR, WDT, Illegal Opcode, REPEAT Instruction,

                                                        Hardware Traps, Configuration Word Mismatch

                                                                      (OST, PLL Lock)

Instruction Set                                76 Base Instructions, Multiple Addressing Mode Variations

Packages                                                              64-Pin TQFP and QFN

Note  1:    Some peripherals are accessible through remappable pins.

 2015-2018 Microchip Technology Inc.                                                                DS30010074F-page 23
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-2:           DEVICE FEATURES FOR THE PIC24FJ1024GX610: 100-PIN AND 121-PIN DEVICES

                 Features              PIC24FJ128GX610  PIC24FJ256GX610  PIC24FJ512GX610         PIC24FJ1024GX610

Operating Frequency                                                   DC – 32 MHz

Program Memory (bytes)                      128K        256K                       512K                      1024K

Program Memory (instructions)               44,032      88,064                    176,128                    352,256

Data Memory (bytes)                                                      32K

Interrupt Sources                                                     103 (97/6)

(soft vectors/NMI traps)

I/O Ports                                                             Ports A, B, C, D, E, F, G

Total I/O Pins                                                           85

Remappable Pins                                         44 (32 I/O, 12 input only)

Timers:

Total Number (16-bit)                                                    5(1)

32-Bit (from paired 16-bit timers)                                       2

Capture/Compare/PWM/Timer                               3 Multiple Outputs and 4 Single Outputs

Modules

Input Capture Channels                                                   6(1)

Output Compare/PWM Channels                                              6(1)

Input Change Notification Interrupt                                      85

Serial Communications:

UART                                                                     6(1)

SPI (3-wire/4-wire)                                                      3(1)

I2C                                                                      3

Configurable Logic Cell (CLC                                             4

Parallel Communications                                                  Yes

(EPMP/PSP)

JTAG Boundary Scan                                                       Yes

12/10-Bit Analog-to-Digital Converter                                    24

(A/D) Module (input channels)

Analog Comparators                                                       3

CTMU Interface                                                           Yes

Universal Serial Bus Controller                         Yes (PIC14FJ1024GB610 devices only)

Resets (and delays)                                 Core POR, VDD POR, BOR, RESET Instruction,

                                                    MCLR, WDT, Illegal Opcode, REPEAT Instruction,

                                                    Hardware Traps, Configuration Word Mismatch

                                                                      (OST, PLL Lock)

Instruction Set                                   76 Base Instructions, Multiple Addressing Mode Variations

Packages                                                100-Pin TQFP and 121-Pin BGA

Note  1:   Some peripherals are accessible  through remappable pins.

DS30010074F-page 24                                                                2015-2018 Microchip Technology Inc.
                                                        PIC24FJ1024GA610/GB610 FAMILY

FIGURE 1-1:               PIC24FJ1024GA610/GB610 FAMILY GENERAL BLOCK DIAGRAM

                      Interrupt                                         Data   Bus

                    Controller                                                                                                    PORTA(1)

                                                                                            16

                                            8            16             16                                                        (12 I/O)

      EDS and                                                                           Data Latch

      Table Data                                                                                                   DMA

Access Control                   PCH                   PCL                              Data RAM              Controller

                           23    Program Counter

                                         Stack         Repeat                           Address                                   PORTB
                                                                                        Latch
                                 Control               Control
                                         Logic          Logic                                                                     (16 I/O)

                  23                                                                        16

                                                                                                        16         16

          Address Latch                                                                 Read AGU

      Program Memory/                                                                   Write AGU

          Extended Data                                                                                                           PORTC(1)

             Space                                                                                                                (8 I/O)

            Data Latch

                                 Address Bus                                            EA MUX                            16

                                         24

                                                                Inst Latch              16          16                            PORTD(1)

                                                                               Literal
                                                                               Data
                                                                                                                                  (16 I/O)
                                                                Inst Register

                                                                                                        DMA

                                            Instruction                                                 Data Bus

               Control Signals           Decode and                                                                               PORTE(1)
                                               Control
                                                                Divide
                                                                Support
OSCO/CLKO                                                                               16 x 16                                   (10 I/O)

OSCI/CLKI                                                       17x17                   W Reg Array

                  Timing                    Power-up            Multiplier

                  Generation                    Timer

      REFO                                  Oscillator

                  FRC/LPRC               Start-up Timer                                                                           PORTF(1)

                  Oscillators               Power-on                                        16-Bit ALU

                                                Reset                                               16                            (11 I/O)

                  Precision                 Watchdog
                  Band Gap
                  Reference                     Timer

                  Voltage                      HLVD &
                                               BOR(2)
                  Regulators
                                                                                                                                  PORTG(1)

                                                                                                                                  (12 I/O)

                    VCAP         VDD, VSS              MCLR

MCCP1/2/3         Timer1       Timer2/3(3)      Timer4/5(3)     RTCC           12-Bit   Comparators(3)  CLC1-4(1)

                                                                               A/D

                                                                                                                                  EPMP/PSP

SCCP4/5/6/7         IC           OC/PWM         IOCs(1)         SPI            I2C      UART            CTMU              USB

                  1-6(3)         1-6(3)                         1-3(3)         1-3         1-6(3)                         Driver

Note  1:    Not all I/O pins or features are implemented on all device pinout configurations. See Table 1-3 for specific implementations by pin count.

      2:    BOR functionality is provided when the on-board voltage regulator is enabled.

      3:    Some peripheral I/Os are only accessible through remappable pins.

 2015-2018 Microchip Technology Inc.                                                                                     DS30010074F-page 25
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input            Description

Function    64-Pin     64-Pin QFN/    100-Pin     100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

AN0         16         16                  25     25       K2       K2               I    ANA     A/D Analog Inputs

AN1         15         15                  24     24       K1       K1               I    ANA

AN2         14         14                  23     23       J2       J2               I    ANA

AN3         13         13                  22     22       J1       J1               I    ANA

AN4         12         12                  21     21       H2       H2               I    ANA

AN5         11         11                  20     20       H1       H1               I    ANA

AN6         17         17                  26     26       L1       L1               I    ANA

AN7         18         18                  27     27       J3       J3               I    ANA

AN8         21         21                  32     32       K4       K4               I    ANA

AN9         22         22                  33     33       L4       L4               I    ANA

AN10        23         23                  34     34       L5       L5               I    ANA

AN11        24         24                  35     35       J5       J5               I    ANA

AN12        27         27                  41     41       J7       J7               I    ANA

AN13        28         28                  42     42       L7       L7               I    ANA

AN14        29         29                  43     43       K7       K7               I    ANA

AN15        30         30                  44     44       L8       L8               I    ANA

AN16        —          —                   9      9        E1       E1               I    ANA

AN17        —          —                   10     10       E3       E3               I    ANA

AN18        —          —                   11     11       F4       F4               I    ANA

AN19        —          —                   12     12       F2       F2               I    ANA

AN20        —          —                   14     14       F3       F3               I    ANA

AN21        —          —                   19     19       G2       G2               I    ANA

AN22        —          —                   92     92       B5       B5               I    ANA

AN23        —          —                   91     91       C5       C5               I    ANA

AVDD        19         19                  30     30       J4       J4               P    —       Positive Supply for Analog

                                                                                                  modules

AVSS        20         20                  31     31       L3       L3               P    —       Ground Reference for Analog

                                                                                                  modules

C1INA       11         11                  20     20       H1       H1               I    ANA     Comparator 1 Input A

C1INB       12         12                  21     21       H2       H2               I    ANA     Comparator 1 Input B

C1INC       5,8        5,8                 11,14  11,14    F4,F3    F4,F3            I    ANA     Comparator 1 Input C

C1IND       4          4                   10     10       E3       E3               I    ANA     Comparator 1 Input D

C2INA       13         13                  22     22       J1       J1               I    ANA     Comparator 2 Input A

C2INB       14         14                  23     23       J2       J2               I    ANA     Comparator 2 Input B

C2INC       8          8                   14     14       F3       F3               I    ANA     Comparator 2 Input C

C2IND       6          6                   12     12       F2       F2               I    ANA     Comparator 2 Input D

C3INA       55         55                  84     84       C7       C7               I    ANA     Comparator 3 Input A

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

DS30010074F-page 26                                                                        2015-2018 Microchip Technology Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

    Pin     GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input                Description

Function    64-Pin     64-Pin QFN/     100-Pin    100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

C3INB       54         54                  83     83       D7       D7               I    ANA     Comparator 3 Input B

C3INC       8,48       8,48                14,74  14,74    F3,B11   F3,B11           I    ANA     Comparator 3 Input C

C3IND       47         47                  73     73       C10      C10              I    ANA     Comparator 3 Input D

CLC3OUT     46         46                  72     72       D9       D9               O    DIG     CLC3 Output

CLC4OUT     42         42                  68     68       E9       E9               O    DIG     CLC4 Output

CLKI        39         39                  63     63       F9       F9               —    —       Main Clock Input Connection

CLKO        40         40                  64     64       F11      F11              O    DIG     System Clock Output

CTCMP       14         14                  23     23       J2       J2               O    ANA     CTMU Comparator 2 Input

                                                                                                  (Pulse mode)

CTED1       28         28                  42     42       L7       L7               I    ST      CTMU External Edge Inputs

CTED2       27         27                  41     41       J7       J7               I    ST

CTED3       —          —                   1      1        B2       B2               I    ST

CTED4       1          1                   3      3        D3       D3               I    ST

CTED5       29         29                  43     43       K7       K7               I    ST

CTED6       30         30                  44     44       L8       L8               I    ST

CTED7       —          —                   40     40       K6       K6               I    ST

CTED8       64         64                  100    100      A1       A1               I    ST

CTED9       63         63                  99     99       A2       A2               I    ST

CTED10      —          —                   97     97       A3       A3               I    ST

CTED11      —          —                   95     95       C4       C4               I    ST

CTED12      15         15                  24     24       K1       K1               I    ST

CTED13      14         14                  23     23       J2       J2               I    ST

CTPLS       29         29                  43     43       K7       K7               O    DIG     CTMU Pulse Output

CVREF       23         23                  34     34       L5       L5               O    ANA     Comparator Voltage Reference

                                                                                                  Output

CVREF+      16         16                  25,29  25,29    K2,K3    K2,K3            I    ANA     Comparator Voltage Reference

                                                                                                  (high) Input

CVREF-      15         15                  24,28  24,28    K1,L2    K1,L2            I    ANA     Comparator Voltage Reference

                                                                                                  (low) Input

D+          —          37                  —      57       —        H10              I/O  XCVR    USB Signaling

D-          —          36                  —      56       —        J11              I/O  XCVR

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

 2015-2018 Microchip Technology Inc.                                                                     DS30010074F-page 27
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input   Description

Function    64-Pin     64-Pin QFN/    100-Pin     100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

IC4         1          1                   3      3        D3       D3               I    ST      Input Capture

IC5         2          2                   4      4        C1       C1               I    ST

IC6         3          3                   5      5        D2       D2               I    ST

ICM1        4          4                   10     10       12       12               I    ST      MCCP1 Input Capture

ICM2        6          6                   12     12       14       14               I    ST      MCCP2 Input Capture

ICM3        11         11                  20     20       23       23               I    ST      MCCP3 Input Capture

ICM4        49         49                  76     76       91       91               I    ST      SCCP4 Input Capture

ICM5        42         42                  68     68       80       80               I    ST      SCCP5 Input Capture

ICM6        46         46                  72     72       86       86               I    ST      SCCP6 Input Capture

ICM7        51         51                  78     78       93       93               I    ST      SCCP7 Input Capture

INT0        35         46                  55     72       H9       D9               I    ST      External Interrupt Input 0

IOCA0       —          —                   17     17       G3       G3               I    ST      PORTA Interrupt-on-Change

IOCA1       —          —                   38     38       J6       J6               I    ST

IOCA2       —          —                   58     58       H11      H11              I    ST

IOCA3       —          —                   59     59       G10      G10              I    ST

IOCA4       —          —                   60     60       G11      G11              I    ST

IOCA5       —          —                   61     61       G9       G9               I    ST

IOCA6       —          —                   91     91       C5       C5               I    ST

IOCA7       —          —                   92     92       B5       B5               I    ST

IOCA9       —          —                   28     28       L2       L2               I    ST

IOCA10      —          —                   29     29       K3       K3               I    ST

IOCA14      —          —                   66     66       E11      E11              I    ST

IOCA15      —          —                   67     67       E8       E8               I    ST

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

DS30010074F-page 28                                                                        2015-2018 Microchip Technology Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

Pin         GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input   Description

Function    64-Pin     64-Pin QFN/     100-Pin    100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

IOCB0       16         16                  25     25       K2       K2               I    ST      PORTB Interrupt-on-Change

IOCB1       15         15                  24     24       K1       K1               I    ST

IOCB2       14         14                  23     23       J2       J2               I    ST

IOCB3       13         13                  22     22       J1       J1               I    ST

IOCB4       12         12                  21     21       H2       H2               I    ST

IOCB5       11         11                  20     20       H1       H1               I    ST

IOCB6       17         17                  26     26       L1       L1               I    ST

IOCB7       18         18                  27     27       J3       J3               I    ST

IOCB8       21         21                  32     32       K4       K4               I    ST

IOCB9       22         22                  33     33       L4       L4               I    ST

IOCB10      23         23                  34     34       L5       L5               I    ST

IOCB11      24         24                  35     35       J5       J5               I    ST

IOCB12      27         27                  41     41       J7       J7               I    ST

IOCB13      28         28                  42     42       L7       L7               I    ST

IOCB14      29         29                  43     43       K7       K7               I    ST

IOCB15      30         30                  44     44       L8       L8               I    ST

IOCC1       —          —                   6      6        D1       D1               I    ST      PORTC Interrupt-on-Change

IOCC2       —          —                   7      7        E4       E4               I    ST

IOCC3       —          —                   8      8        E2       E2               I    ST

IOCC4       —          —                   9      9        E1       E1               I    ST

IOCC12      39         39                  63     63       F9       F9               I    ST

IOCC13      47         47                  73     73       C10      C10              I    ST

IOCC14      48         48                  74     74       B11      B11              I    ST

IOCC15      40         40                  64     64       F11      F11              I    ST

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

 2015-2018 Microchip Technology Inc.                                                             DS30010074F-page 29
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

Pin         GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input   Description

Function    64-Pin     64-Pin QFN/    100-Pin     100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

IOCD0       46         46                  72     72       D9       D9               I    ST      PORTD Interrupt-on-Change

IOCD1       49         49                  76     76       A11      A11              I    ST

IOCD2       50         50                  77     77       A10      A10              I    ST

IOCD3       51         51                  78     78       B9       B9               I    ST

IOCD4       52         52                  81     81       C8       C8               I    ST

IOCD5       53         53                  82     82       B8       B8               I    ST

IOCD6       54         54                  83     83       D7       D7               I    ST

IOCD7       55         55                  84     84       C7       C7               I    ST

IOCD8       42         42                  68     68       E9       E9               I    ST

IOCD9       43         43                  69     69       E10      E10              I    ST

IOCD10      44         44                  70     70       D11      D11              I    ST

IOCD11      45         45                  71     71       C11      C11              I    ST

IOCD12      —          —                   79     79       A9       A9               I    ST

IOCD13      —          —                   80     80       D8       D8               I    ST

IOCD14      —          —                   47     47       L9       L9               I    ST

IOCD15      —          —                   48     48       K9       K9               I    ST

IOCE0       60         60                  93     93       A4       A4               I    ST      PORTE Interrupt-on-Change

IOCE1       61         61                  94     94       B4       B4               I    ST

IOCE2       62         62                  98     98       B3       B3               I    ST

IOCE3       63         63                  99     99       A2       A2               I    ST

IOCE4       64         64                  100    100      A1       A1               I    ST

IOCE5       1          1                   3      3        D3       D3               I    ST

IOCE6       2          2                   4      4        C1       C1               I    ST

IOCE7       3          3                   5      5        D2       D2               I    ST

IOCE8       —          —                   18     18       G1       G1               I    ST

IOCE9       —          —                   19     19       G2       G2               I    ST

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

DS30010074F-page 30                                                                        2015-2018 Microchip Technology Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input   Description

Function    64-Pin     64-Pin QFN/     100-Pin    100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

IOCF0       58         58                  87     87       B6       B6               I    ST      PORTF Interrupt-on-Change

IOCF1       59         59                  88     88       A6       A6               I    ST

IOCF2       34         —                   52     52       K11      K11              I    ST

IOCF3       33         33                  51     51       K10      K10              I    ST

IOCF4       31         31                  49     49       L10      L10              I    ST

IOCF5       32         32                  50     50       L11      L11              I    ST

IOCF6       35         —                   55     —        H9       —                I    ST

IOCF7       —          34                  54     54       H8       H8               I    ST

IOCF8       —          —                   53     53       J10      J10              I    ST

IOCF12      —          —                   40     40       K6       K6               I    ST

IOCF13      —          —                   39     39       L6       L6               I    ST

IOCG0       —          —                   90     90       A5       A5               I    ST      PORTG Interrupt-on-Change

IOCG1       —          —                   89     89       E6       E6               I    ST

IOCG2       37         37                  57     57       H10      H10              I    ST

IOCG3       36         36                  56     56       J11      J11              I    ST

IOCG6       4          4                   10     10       E3       E3               I    ST

IOCG7       5          5                   11     11       F4       F4               I    ST

IOCG8       6          6                   12     12       F2       F2               I    ST

IOCG9       8          8                   14     14       F3       F3               I    ST

IOCG12      —          —                   96     96       C3       C3               I    ST

IOCG13      —          —                   97     97       A3       A3               I    ST

IOCG14      —          —                   95     95       C4       C4               I    ST

IOCG15      —          —                   1      1        B2       B2               I    ST

HLVDIN      64         64                  100    100      A1       A1               I    ANA     High/Low-Voltage Detect Input

MCLR        7          7                   13     13       F1       F1               I    ST      Master Clear (device Reset)

                                                                                                  Input. This line is brought low to

                                                                                                  cause a Reset.

OC4         54         54                  83     83       D7       D7               O    DIG     Output Compare Outputs

OC5         55         55                  84     84       C7       C7               O    DIG

OC6         58         58                  87     87       B6       B6               O    DIG

OCM1A       4          4                   10     10       E3       E3               O    DIG     MCCP1 Outputs

OCM1B       5          5                   11     11       F4       F4               O    DIG

OCM1C       —          —                   1      1        B2       B2               O    DIG

OCM1D       —          —                   6      6        D1       D1               O    DIG

OCM1E       —          —                   91     91       C5       C5               O    DIG

OCM1F       —          —                   92     92       B5       B5               O    DIG

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

 2015-2018 Microchip Technology Inc.                                                             DS30010074F-page 31
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

Pin         GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input           Description

Function    64-Pin     64-Pin QFN/    100-Pin     100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

OCM2A       6          6                   12     12       F2       F2               O    DIG     MCCP2 Outputs

OCM2B       8          8                   14     14       F3       F3               O    DIG

OCM2C       —          —                   7      7        E4       E4               O    DIG

OCM2D       —          —                   8      8        E2       E2               O    DIG

OCM2E       —          —                   96     96       C3       C3               O    DIG

OCM2F       —          —                   97     97       A3       A3               O    DIG

OCM3A       11         11                  20     20       H1       H1               O    DIG     MCCP3 Outputs

OCM3B       12         12                  21     21       H2       H2               O    DIG

OCM3C       —          —                   9      9        E1       E1               O    DIG

OCM3D       —          —                   17     17       G3       G3               O    DIG

OCM3E       —          —                   79     79       A9       A9               O    DIG

OCM3F       —          —                   80     80       D8       D8               O    DIG

OSCI        39         39                  63     63       F9       F9               I    ANA/    Main Oscillator Input Connection

                                                                                          ST

OSCO        40         40                  64     64       F11      F11              O    ANA     Main Oscillator Output

                                                                                                  Connection

PGEC1       15         15                  24     24       K1       K1               I    ST      ICSP™ Programming Clock

PGEC2       17         17                  26     26       L1       L1               I    ST

PGEC3       11         11                  20     20       H1       H1               I    ST

PGED1       16         16                  25     25       K2       K2               I/O  DIG/ST  ICSP Programming Data

PGED2       18         18                  27     27       J3       J3               I/O  DIG/ST

PGED3       12         12                  21     21       H2       H2               I/O  DIG/ST

PMA0/       30         30                  44     44       L8       L8               I/O  DIG/    Parallel Master Port Address<0>/

PMALL                                                                                     ST/TTL  Address Latch Low

PMA1/       29         29                  43     43       K7       K7               I/O  DIG/    Parallel Master Port Address<1>/

PMALH                                                                                     ST/TTL  Address Latch High

PMA14/      45         45                  71     71       C11      C11              I/O  DIG/    Parallel Master Port Address<14>/

PMCS1                                                                                     ST/TTL  Slave Chip Select/Chip Select 1

                                                                                                  Strobe

PMA15/      44         44                  70     70       D11      D11              I/O  DIG/    Parallel Master Port Address<15>/

PMCS2                                                                                     ST/TTL  Chip Select 2 Strobe

PMA6        16         16                  29     29       K3       K3               O    DIG     Parallel Master Port Address

PMA7        22         22                  28     28       L2       L2               O    DIG

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

DS30010074F-page 32                                                                        2015-2018 Microchip Technology Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

Pin         GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input             Description

Function    64-Pin     64-Pin QFN/     100-Pin    100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

PMA8        32         32                  50     50       L11      L11              I/O  DIG/    Parallel Master Port Address

                                                                                          ST/TTL  (Demultiplexed Master mode) or

PMA9        31         31                  49     49       L10      L10              I/O  DIG/    Address/Data (Multiplexed

                                                                                          ST/TTL  Master modes)

PMA10       28         28                  42     42       L7       L7               I/O  DIG/

                                                                                          ST/TTL

PMA11       27         27                  41     41       J7       J7               I/O  DIG/

                                                                                          ST/TTL

PMA12       24         24                  35     35       J5       J5               I/O  DIG/

                                                                                          ST/TTL

PMA13       23         23                  34     34       L5       L5               I/O  DIG/

                                                                                          ST/TTL

PMA16       —          —                   95     95       C4       C4               O    DIG

PMA17       —          —                   92     92       B5       B5               O    DIG

PMA18       —          —                   40     40       K6       K6               O    DIG

PMA19       —          —                   19     19       G2       G2               O    DIG

PMA2/       8          8                   14     14       F3       F3               O    DIG     Parallel Master Port Address<2>/

PMALU                                                                                             Address Latch Upper

PMA3        6          6                   12     12       F2       F2               O    DIG     Parallel Master Port Address

PMA4        5          5                   11     11       F4       F4               O    DIG

PMA5        4          4                   10     10       E3       E3               O    DIG

PMA20       —          —                   59     59       G10      G10              O    DIG     Parallel Master Port Address

PMA21       —          —                   60     60       G11      G11              O    DIG     (Demultiplexed Master mode)   or

PMA22       —          —                   66     66       E11      E11              O    DIG     Address/Data (Multiplexed

                                                                                                  Master modes)

PMACK1      50         50                  77     77       A10      A10              I    ST/TTL  Parallel Master Port

                                                                                                  Acknowledge Input 1

PMACK2      43         43                  69     69       E10      E10              I    ST/TTL  Parallel Master Port

                                                                                                  Acknowledge Input 2

PMBE0       51         51                  78     78       B9       B9               O    DIG     Parallel Master Port Byte

                                                                                                  Enable 0 Strobe

PMBE1       —          —                   67     67       E8       E8               O    DIG     Parallel Master Port Byte

                                                                                                  Enable 1 Strobe

PMCS1       —          —                   18     18       G1       G1               O    DIG     Parallel Master Port Chip

                                                                                                  Select 1 Strobe

PMCS2       —          —                   9      9        E1       E1               O    DIG     Parallel Master Port Chip

                                                                                                  Select 2 Strobe

PMPCS1      —          —                   58     58       H11      H11              O    DIG     Parallel Master Port Chip

                                                                                                  Select 1

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

 2015-2018 Microchip Technology Inc.                                                                       DS30010074F-page 33
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

Pin         GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input           Description

Function    64-Pin     64-Pin QFN/    100-Pin     100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

PMD0        60         60                  93     93       A4       A4               I/O  DIG/    Parallel Master Port Data

                                                                                          ST/TTL  (Demultiplexed Master mode) or

PMD1        61         61                  94     94       B4       B4               I/O  DIG/    Address/Data (Multiplexed

                                                                                          ST/TTL  Master modes)

PMD2        62         62                  98     98       B3       B3               I/O  DIG/

                                                                                          ST/TTL

PMD3        63         63                  99     99       A2       A2               I/O  DIG/

                                                                                          ST/TTL

PMD4        64         64                  100    100      A1       A1               I/O  DIG/

                                                                                          ST/TTL

PMD5        1          1                   3      3        D3       D3               I/O  DIG/

                                                                                          ST/TTL

PMD6        2          2                   4      4        C1       C1               I/O  DIG/

                                                                                          ST/TTL

PMD7        3          3                   5      5        D2       D2               I/O  DIG/

                                                                                          ST/TTL

PMD8        —          —                   90     90       A5       A5               I/O  DIG/

                                                                                          ST/TTL

PMD9        —          —                   89     89       E6       E6               I/O  DIG/

                                                                                          ST/TTL

PMD10       —          —                   88     88       A6       A6               I/O  DIG/

                                                                                          ST/TTL

PMD11       —          —                   87     87       B6       B6               I/O  DIG/

                                                                                          ST/TTL

PMD12       —          —                   79     79       A9       A9               I/O  DIG/

                                                                                          ST/TTL

PMD13       —          —                   80     80       D8       D8               I/O  DIG/

                                                                                          ST/TTL

PMD14       —          —                   83     83       D7       D7               I/O  DIG/

                                                                                          ST/TTL

PMD15       —          —                   84     84       C7       C7               I/O  DIG/

                                                                                          ST/TTL

PMRD/       53         53                  82     82       B8       B8               I/O  DIG/    Parallel Master Port Read

PMWR                                                                                      ST/TTL  Strobe/Write Strobe

PMWR/       52         52                  81     81       C8       C8               I/O  DIG/    Parallel Master Port Write

PMENB                                                                                     ST/TTL  Strobe/Enable Strobe

PWRGT       21         21                  32     32       K4       K4               O    DIG     Real-Time Clock Power Control

                                                                                                  Output

PWRLCLK     48         48                  74     74       B11      B11              I    ST      Real-Time Clock 50/60 Hz Clock

                                                                                                  Input

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

DS30010074F-page 34                                                                        2015-2018 Microchip Technology Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input   Description

Function    64-Pin     64-Pin QFN/     100-Pin    100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

RA0         —          —                   17     17       G3       G3               I/O  DIG/ST  PORTA Digital I/Os

RA1         —          —                   38     38       J6       J6               I/O  DIG/ST

RA2         —          —                   58     58       H11      H11              I/O  DIG/ST

RA3         —          —                   59     59       G10      G10              I/O  DIG/ST

RA4         —          —                   60     60       G11      G11              I/O  DIG/ST

RA5         —          —                   61     61       G9       G9               I/O  DIG/ST

RA6         —          —                   91     91       C5       C5               I/O  DIG/ST

RA7         —          —                   92     92       B5       B5               I/O  DIG/ST

RA9         —          —                   28     28       L2       L2               I/O  DIG/ST

RA10        —          —                   29     29       K3       K3               I/O  DIG/ST

RA14        —          —                   66     66       E11      E11              I/O  DIG/ST

RA15        —          —                   67     67       E8       E8               I/O  DIG/ST

RB0         16         16                  25     25       K2       K2               I/O  DIG/ST  PORTB Digital I/Os

RB1         15         15                  24     24       K1       K1               I/O  DIG/ST

RB2         14         14                  23     23       J2       J2               I/O  DIG/ST

RB3         13         13                  22     22       J1       J1               I/O  DIG/ST

RB4         12         12                  21     21       H2       H2               I/O  DIG/ST

RB5         11         11                  20     20       H1       H1               I/O  DIG/ST

RB6         17         17                  26     26       L1       L1               I/O  DIG/ST

RB7         18         18                  27     27       J3       J3               I/O  DIG/ST

RB8         21         21                  32     32       K4       K4               I/O  DIG/ST

RB9         22         22                  33     33       L4       L4               I/O  DIG/ST

RB10        23         23                  34     34       L5       L5               I/O  DIG/ST

RB11        24         24                  35     35       J5       J5               I/O  DIG/ST

RB12        27         27                  41     41       J7       J7               I/O  DIG/ST

RB13        28         28                  42     42       L7       L7               I/O  DIG/ST

RB14        29         29                  43     43       K7       K7               I/O  DIG/ST

RB15        30         30                  44     44       L8       L8               I/O  DIG/ST

RC1         —          —                   6      6        D1       D1               I/O  DIG/ST  PORTC Digital I/Os

RC2         —          —                   7      7        E4       E4               I/O  DIG/ST

RC3         —          —                   8      8        E2       E2               I/O  DIG/ST

RC4         —          —                   9      9        E1       E1               I/O  DIG/ST

RC12        39         39                  63     63       F9       F9               I/O  DIG/ST

RC13        47         47                  73     73       C10      C10              I/O  DIG/ST

RC14        48         48                  74     74       B11      B11              I/O  DIG/ST

RC15        40         40                  64     64       F11      F11              I/O  DIG/ST

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

 2015-2018 Microchip Technology Inc.                                                             DS30010074F-page 35
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input   Description

Function    64-Pin     64-Pin QFN/    100-Pin     100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

RD0         46         46                  72     72       D9       D9               I/O  DIG/ST  PORTD Digital I/Os

RD1         49         49                  76     76       A11      A11              I/O  DIG/ST

RD2         50         50                  77     77       A10      A10              I/O  DIG/ST

RD3         51         51                  78     78       B9       B9               I/O  DIG/ST

RD4         52         52                  81     81       C8       C8               I/O  DIG/ST

RD5         53         53                  82     82       B8       B8               I/O  DIG/ST

RD6         54         54                  83     83       D7       D7               I/O  DIG/ST

RD7         55         55                  84     84       C7       C7               I/O  DIG/ST

RD8         42         42                  68     68       E9       E9               I/O  DIG/ST

RD9         43         43                  69     69       E10      E10              I/O  DIG/ST

RD10        44         44                  70     70       D11      D11              I/O  DIG/ST

RD11        45         45                  71     71       C11      C11              I/O  DIG/ST

RD12        —          —                   79     79       A9       A9               I/O  DIG/ST

RD13        —          —                   80     80       D8       D8               I/O  DIG/ST

RD14        —          —                   47     47       L9       L9               I/O  DIG/ST

RD15        —          —                   48     48       K9       K9               I/O  DIG/ST

RE0         60         60                  93     93       A4       A4               I/O  DIG/ST  PORTE Digital I/Os

RE1         61         61                  94     94       B4       B4               I/O  DIG/ST

RE2         62         62                  98     98       B3       B3               I/O  DIG/ST

RE3         63         63                  99     99       A2       A2               I/O  DIG/ST

RE4         64         64                  100    100      A1       A1               I/O  DIG/ST

RE5         1          1                   3      3        D3       D3               I/O  DIG/ST

RE6         2          2                   4      4        C1       C1               I/O  DIG/ST

RE7         3          3                   5      5        D2       D2               I/O  DIG/ST

RE8         —          —                   18     18       G1       G1               I/O  DIG/ST

RE9         —          —                   19     19       G2       G2               I/O  DIG/ST

REFI        24         24                  35     35       J5       J5               I    ST      Reference Clock Input

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

DS30010074F-page 36                                                                        2015-2018 Microchip Technology  Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input   Description

Function    64-Pin     64-Pin QFN/     100-Pin    100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

RF0         58         58                  87     87       B6       B6               I/O  DIG/ST  PORTF Digital I/Os

RF1         59         59                  88     88       A6       A6               I/O  DIG/ST

RF2         34         —                   52     52       K11      K11              I/O  DIG/ST

RF3         33         33                  51     51       K10      K10              I/O  DIG/ST

RF4         31         31                  49     49       L10      L10              I/O  DIG/ST

RF5         32         32                  50     50       L11      L11              I/O  DIG/ST

RF6         35         —                   55     —        H9       —                I/O  DIG/ST

RF7         —          34                  54     54       H8       H8               I/O  DIG/ST

RF8         —          —                   53     53       J10      J10              I/O  DIG/ST

RF12        —          —                   40     40       K6       K6               I/O  DIG/ST

RF13        —          —                   39     39       L6       L6               I/O  DIG/ST

RG0         —          —                   90     90       A5       A5               I/O  DIG/ST  PORTG Digital I/Os

RG1         —          —                   89     89       E6       E6               I/O  DIG/ST

RG2         37         37                  57     57       H10      H10              I/O  DIG/ST

RG3         36         36                  56     56       J11      J11              I/O  DIG/ST

RG6         4          4                   10     10       E3       E3               I/O  DIG/ST

RG7         5          5                   11     11       F4       F4               I/O  DIG/ST

RG8         6          6                   12     12       F2       F2               I/O  DIG/ST

RG9         8          8                   14     14       F3       F3               I/O  DIG/ST

RG12        —          —                   96     96       C3       C3               I/O  DIG/ST

RG13        —          —                   97     97       A3       A3               I/O  DIG/ST

RG14        —          —                   95     95       C4       C4               I/O  DIG/ST

RG15        —          —                   1      1        B2       B2               I/O  DIG/ST

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

 2015-2018 Microchip Technology Inc.                                                             DS30010074F-page 37
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input   Description

Function    64-Pin     64-Pin QFN/    100-Pin     100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

RP0         16         16                  25     25       K2       K2               I/O  DIG/ST  Remappable Peripherals

RP1         15         15                  24     24       K1       K1               I/O  DIG/ST  (input or output)

RP2         42         42                  68     68       E9       E9               I/O  DIG/ST

RP3         44         44                  70     70       D11      D11              I/O  DIG/ST

RP4         43         43                  69     69       E10      E10              I/O  DIG/ST

RP5         —          —                   48     48       K9       K9               I/O  DIG/ST

RP6         17         17                  26     26       L1       L1               I/O  DIG/ST

RP7         18         18                  27     27       J3       J3               I/O  DIG/ST

RP8         21         21                  32     32       K4       K4               I/O  DIG/ST

RP9         22         22                  33     33       L4       L4               I/O  DIG/ST

RP10        31         31                  49     49       L10      L10              I/O  DIG/ST

RP11        46         46                  72     72       D9       D9               I/O  DIG/ST

RP12        45         45                  71     71       C11      C11              I/O  DIG/ST

RP13        14         14                  23     23       J2       J2               I/O  DIG/ST

RP14        29         29                  43     43       K7       K7               I/O  DIG/ST

RP15        —          —                   53     53       J10      J10              I/O  DIG/ST

RP16        33         33                  51     51       K10      K10              I/O  DIG/ST

RP17        32         32                  50     50       L11      L11              I/O  DIG/ST

RP18        11         11                  20     20       H1       H1               I/O  DIG/ST

RP19        6          6                   12     12       F2       F2               I/O  DIG/ST

RP20        53         53                  82     82       B8       B8               I/O  DIG/ST

RP21        4          4                   10     10       E3       E3               I/O  DIG/ST

RP22        51         51                  78     78       B9       B9               I/O  DIG/ST

RP23        50         50                  77     77       A10      A10              I/O  DIG/ST

RP24        49         49                  76     76       A11      A11              I/O  DIG/ST

RP25        52         52                  81     81       C8       C8               I/O  DIG/ST

RP26        5          5                   11     11       F4       F4               I/O  DIG/ST

RP27        8          8                   14     14       F3       F3               I/O  DIG/ST

RP28        12         12                  21     21       H2       H2               I/O  DIG/ST

RP29        30         30                  44     44       L8       L8               I/O  DIG/ST

RP30        34         —                   52     52       K11      K11              I/O  DIG/ST

RP31        —          —                   39     39       L6       L6               I/O  DIG/ST

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

DS30010074F-page 38                                                                        2015-2018 Microchip Technology  Inc.
                                           PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610    GA612    GB612            I/O  Input               Description

Function    64-Pin     64-Pin QFN/     100-Pin    100-Pin  121-Pin  121-Pin               Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/    BGA      BGA

            QFP                            QFP    QFP

RPI32       —          —                   40     40       K6       K6               I    DIG/ST  Remappable Peripherals

RPI33       —          —                   18     18       G1       G1               I    DIG/ST  (input only)

RPI34       —          —                   19     19       G2       G2               I    DIG/ST

RPI35       —          —                   67     67       E8       E8               I    DIG/ST

RPI36       —          —                   66     66       E11      E11              I    DIG/ST

RPI37       48         48                  74     74       B11      B11              I    DIG/ST

RPI38       —          —                   6      6        D1       D1               I    DIG/ST

RPI39       —          —                   7      7        E4       E4               I    DIG/ST

RPI40       —          —                   8      8        E2       E2               I    DIG/ST

RPI41       —          —                   9      9        E1       E1               I    DIG/ST

RPI42       —          —                   79     79       A9       A9               I    DIG/ST

RPI43       —          —                   47     47       L9       L9               I    DIG/ST

SCL1        37         44                  57     66       H10      E11              I/O  I2C     I2C1 Synchronous Serial Clock

                                                                                                  Input/Output

SCL2        32         32                  58     58       H11      H11              I/O  I2C     I2C2 Synchronous Serial Clock

                                                                                                  Input/Output

SCL3        2          2                   4      4        C1       C1               I/O  I2C     I2C3 Synchronous Serial Clock

                                                                                                  Input/Output

SDA1        36         43                  56     67       J11      E8               I/O  I2C     I2C1 Data Input/Output

SDA2        31         31                  59     59       G10      G10              I/O  I2C     I2C2 Data Input/Output

SDA3        3          3                   5      5        D2       D2               I/O  I2C     I2C3 Data Input/Output

SOSCI       47         47                  73     73       C10      C10              I    ANA/    Secondary Oscillator/Timer1

                                                                                          ST      Clock Input

SOSCO       48         48                  74     74       B11      B11              O    ANA     Secondary Oscillator/Timer1

                                                                                                  Clock Output

T1CK        22         22                  33     33       L4       L4               I    ST      Timer1 Clock

TCK         27         27                  38     38       J6       J6               I    ST      JTAG Test Clock/Programming

                                                                                                  Clock Input

TDI         28         28                  60     60       G11      G11              I    ST      JTAG Test Data/Programming

                                                                                                  Data Input

TDO         24         24                  61     61       G9       G9               O    DIG     JTAG Test Data Output

TMPR        22         22                  33     33       L4       L4               I    ST      Tamper Detect Input

TMS         23         23                  17     17       G3       G3               I    ST      JTAG Test Mode Select Input

U5CTS       58         58                  87     87       B6       B6               I    ST      UART5 CTS Output

U5RTS/      55         55                  84     84       C7       C7               O    DIG     UART5 RTS Input

U5BCLK

U5RX        54         54                  83     83       D7       D7               I    ST      UART5 Receive Input

U5TX        49         49                  76     76       A11      A11              O    DIG     UART5 Transmit Output

U6CTS       46         46                  72     72       D9       D9               I    ST      UART6 CTS Output

U6RTS/      42         42                  68     68       E9       E9               O    DIG     UART6 RTS Input

U6BCLK

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

 2015-2018 Microchip Technology Inc.                                                             DS30010074F-page 39
PIC24FJ1024GA610/GB610 FAMILY

TABLE 1-3:  PIC24FJ1024GA610/GB610 FAMILY PINOUT DESCRIPTIONS (CONTINUED)

                                  Pin Number/Grid Locator

     Pin    GA606      GB606               GA610  GB610      GA612    GB612          I/O  Input              Description

Function    64-Pin     64-Pin QFN/    100-Pin     100-Pin    121-Pin  121-Pin             Buffer

            QFN/TQFP/  TQFP/QFP            TQFP/  TQFP/      BGA      BGA

            QFP                            QFP    QFP

U6RX        27         27                  41     41         J7       J7             I    ST      UART6 Receive Input

U6TX        18         18                  27     27         J3       J3             O    DIG     UART6 Transmit Output

USBID       —          33                  —      51         —        K10            I    ST      USB OTG ID Input

USBOEN      —          12                  —      21         —        H2             O    DIG     USB Output Enable (active-low)

VBUS        —          34                  —      54         —        H8             I    —       VBUS Supply Detect

VCAP        56         56                  85     85         B7       B7             P    —       External Filter Capacitor

                                                                                                  Connection (regulator enabled)

VDD         10,26,38   10,26,38       2,16,37,    2,16,37,   C2,F8,   C2,F8,         P    —       Positive Supply for Peripheral

                                           46,62  46,62      G5,H6,   G5,H6,                      Digital Logic and I/O Pins

                                                             K8       K8

VREF+       16         16                  25,29  25,29      K2,K3    K2,K3          I    ANA     Comparator and A/D Reference

                                                                                                  Voltage (high) Input

VREF-       15         15                  24,28  24,28      K1,L2    K1,L2          I    ANA     Comparator and A/D Reference

                                                                                                  Voltage (low) Input

VSS         9,25,41    9,25,41        15,36,45,   15,36,45,  B10,F5,  B10,F5,        P    —       Ground Reference for

                                           65,75  65,75      F10,G6,  F10,G6,                     Peripheral Digital Logic and I/O

                                                             G7       G7                          Pins

VUSB3V3     —          35                  —      55         —        H9             P    —       3.3V VUSB

Legend:   TTL = TTL input buffer                  ST = Schmitt Trigger input buffer
                                                  I2C = I2C/SMBus input buffer
          ANA = Analog level input/output

          DIG = Digital input/output              XCVR = Dedicated Transceiver

DS30010074F-page 40                                                                        2015-2018 Microchip Technology Inc.
                                            PIC24FJ1024GA610/GB610 FAMILY

2.0       GUIDELINES FOR GETTING                           FIGURE     2-1:         RECOMMENDED

          STARTED WITH 16-BIT                                                      MINIMUM CONNECTIONS

          MICROCONTROLLERS

                                                                                                  C2(2)

2.1       Basic Connection Requirements                    VDD

Getting started with the PIC24FJ1024GA610/GB610            R1                                  VDD  VSS       (1)

family of 16-bit microcontrollers requires attention to a        R2

minimal   set  of  device     pin  connections     before             MCLR                          VCAP

proceeding with development.

The following pins must always be connected:               C1                                                      C7

•  All VDD and VSS pins                                                            PIC24FJXXXX

   (see Section 2.2 “Power Supply Pins”)                              VSS                                VDD

•  The USB transceiver supply, VUSB3V3, regardless         C6(2)                                              C3(2)

   of whether or not the USB module is used                           VDD                                VSS

   (see Section 2.2 “Power Supply Pins”)                                     AVDD     AVSS     VDD  VSS

•  All AVDD and AVSS pins, regardless of whether or

   not the analog device features are used                                   C5(2)                C4(2)

   (see Section 2.2 “Power Supply Pins”)

•  MCLR pin

   (see Section 2.3 “Master Clear (MCLR) Pin”)             Key (all values are recommendations):

•  VCAP pin (PIC24F J devices only)                        C1 through C6: 0.1 F, 50V ceramic

   (see Section 2.4 “Voltage Regulator Pin (VCAP)”)        C7: 10 F, 16V or greater, ceramic

These pins must also be connected if they are being        R1: 10 kΩ

used in the end application:                               R2: 100Ω to 470Ω

•  PGECx/PGEDx pins used for In-Circuit Serial             Note   1:  See Section 2.4 “Voltage Regulator Pin

   Programming™ (ICSP™) and debugging purposes                        (VCAP)” for an explanation of voltage

   (see Section 2.5 “ICSP Pins”)                                      regulator pin connections.

•  OSCI and OSCO pins when an external oscillator                 2:  The example shown is for a PIC24F device

   source is used                                                     with five VDD/VSS and AVDD/AVSS pairs.

   (see Section 2.6 “External Oscillator Pins”)                       Other devices may have more or less pairs;

Additionally, the following pins may be required:                     adjust the number of decoupling capacitors

                                                                      appropriately.

•  VREF+/VREF- pins used when external voltage

   reference for analog modules is implemented

   Note:     The AVDD and AVSS pins must always be

             connected, regardless of whether any of

             the analog modules are being used.

The minimum mandatory connections are shown in

Figure 2-1.

 2015-2018 Microchip Technology Inc.                                                          DS30010074F-page 41
PIC24FJ1024GA610/GB610                                          FAMILY

2.2       Power Supply Pins                                     2.3        Master Clear (MCLR) Pin

2.2.1        DECOUPLING CAPACITORS                              The MCLR pin provides two specific device functions:

The  use  of  decoupling   capacitors   on    every   pair  of  device    Reset,    and       device   programming      and  debug-

power  supply    pins,  such  as  VDD,  VSS,  AVDD      and     ging. If programming and debugging are not required

AVSS, is required.                                              in  the   end      application,     a  direct   connection   to   VDD

                                                                may    be     all  that   is  required.   The     addition   of   other

Consider the following criteria when using decoupling           components,         to    help        increase    the   application’s

capacitors:                                                     resistance to spurious Resets from voltage sags, may

•  Value and type of capacitor: A 0.1 F (100 nF),              be   beneficial.    A     typical      configuration    is  shown       in

   16V-50V capacitor is recommended. The                        Figure 2-1. Other circuit designs may be implemented

   capacitor should be a low-ESR device with a                  depending on the application’s requirements.

   self-resonance frequency in the range of 200 MHz             During    programming            and   debugging,      the  resistance

   and higher. Ceramic capacitors are                           and capacitance that can be added to the pin must

   recommended.                                                 be considered. Device programmers and debuggers

•  Placement on the printed circuit board: The                  drive    the   MCLR       pin.    Consequently,    specific  voltage

   decoupling capacitors should be placed as close              levels (VIH and VIL) and fast signal transitions must

   to the pins as possible. It is recommended to                not be adversely affected. Therefore, specific values

   place the capacitors on the same side of the                 of R1 and C1 will need to be adjusted based on the

   board as the device. If space is constricted, the            application and PCB requirements. For example, it is

   capacitor can be placed on another layer on the              recommended         that      the     capacitor,  C1,   be   isolated

   PCB using a via; however, ensure that the trace              from the MCLR pin during programming and debug-

   length from the pin to the capacitor is no greater           ging operations by using a jumper (Figure 2-2). The

   than 0.25 inch (6 mm).                                       jumper is replaced for normal run-time operations.

•  Handling high-frequency noise: If the board is               Any    components             associated  with     the      MCLR   pin

   experiencing high-frequency noise (upward of                 should be placed within 0.25 inch (6 mm) of the pin.

   tens of MHz), add a second ceramic type capaci-

   tor in parallel to the above described decoupling            FIGURE 2-2:                       EXAMPLE OF MCLR PIN

   capacitor. The value of the second capacitor can                                               CONNECTIONS

   be in the range of 0.01 F to 0.001 F. Place this

   second capacitor next to each primary decoupling                            VDD

   capacitor. In high-speed circuit designs, consider

   implementing a decade pair of capacitances as                                   R1

   close to the power and ground pins as possible                                               R2

   (e.g., 0.1 F in parallel with 0.001 F).                                                           MCLR

•  Maximizing performance: On the board layout                                     JP                  PIC24FJXXXX

   from the power supply circuit, run the power and

   return traces to the decoupling capacitors first,                               C1

   and then to the device pins. This ensures that the

   decoupling capacitors are first in the power chain.

   Equally important is to keep the trace length

   between the capacitor and the power pins to a                    Note   1:      R1  10 k is recommended. A suggested

   minimum, thereby reducing PCB trace                                             starting value is 10 k. Ensure that the MCLR

   inductance.                                                                     pin VIH and VIL specifications are met.

2.2.2        TANK CAPACITORS                                               2:      R2  470 will limit any current flowing into

                                                                                   MCLR from the external capacitor, C, in the

On boards with power traces running longer than six                                event  of  a   MCLR    pin   breakdown,   due  to

inches in length, it is suggested to use a tank capacitor                          Electrostatic  Discharge     (ESD)  or   Electrical

for  integrated  circuits  including  microcontrollers      to                     Overstress (EOS). Ensure that the MCLR pin

supply a local power source. The value of the tank                                 VIH and VIL specifications are met.

capacitor should be determined based on the trace

resistance that connects the power supply source to

the device, and the maximum current drawn by the

device in the application. In other words, select the tank

capacitor so that it meets the acceptable voltage sag at

the device. Typical values range from 4.7 F to 47 F.

DS30010074F-page 42                                                                        2015-2018 Microchip Technology Inc.
                                                      PIC24FJ1024GA610/GB610 FAMILY

2.4         Voltage Regulator Pin (VCAP)                               FIGURE 2-3:                  FREQUENCY vs. ESR

                 This  section    applies     only   to  PIC24FJ                                    PERFORMANCE FOR

    Note:                                                                                           SUGGESTED VCAP

                 devices with an on-chip voltage regulator.                        10

Refer to Section 30.3 “On-Chip Voltage Regulator”

for     details  on    connecting      and    using   the     on-chip              1

regulator.

A low-ESR (< 5Ω) capacitor is required on the VCAP pin                    ESR ()  0.1

to stabilize the voltage regulator output voltage. The

VCAP pin must not be connected to VDD and must use a

capacitor of 10 µF connected to ground. The type can be                            0.01

ceramic or tantalum. Suitable examples of capacitors

are     shown    in   Table 2-1.  Capacitors  with       equivalent

specifications can be used.                                               0.001          0.01  0.1  1     10         100  1000           10,000

Designers        may   use  Figure 2-3  to    evaluate     the  ESR                                 Frequency (MHz)

equivalence of candidate devices.                                         Note:          Typical data measurement at +25°C, 0V DC bias.

The placement of this capacitor should be close to VCAP.

It  is  recommended         that  the  trace  length     not  exceed

0.25 inch   (6   mm).  Refer      to   Section 33.0      “Electrical

Characteristics” for additional information.

                                                                       .

TABLE 2-1:             SUITABLE CAPACITOR EQUIVALENTS (0805 CASE SIZE)

        Make                                Part #                     Nominal                 Base Tolerance        Rated Voltage

                                                                       Capacitance

        TDK                 C2012X5R1E106K085AC                        10 µF                        ±10%                  25V

        TDK                 C2012X5R1C106K085AC                        10 µF                        ±10%                  16V

        Kemet                     C0805C106M4PACTU                     10 µF                        ±10%                  16V

        Murata                    GRM21BR61E106KA3L                    10 µF                        ±10%                  25V

        Murata                    GRM21BR61C106KE15                    10 µF                        ±10%                  16V

 2015-2018 Microchip Technology Inc.                                                                          DS30010074F-page 43
PIC24FJ1024GA610/GB610                                                 FAMILY

2.4.1         CONSIDERATIONS FOR CERAMIC                               FIGURE 2-4:                                           DC BIAS VOLTAGE vs.

              CAPACITORS                                                                                                     CAPACITANCE

In recent years, large value, low-voltage, surface-mount                                                                     CHARACTERISTICS

ceramic capacitors have become very cost effective in

sizes up to a few tens of microfarad. The low-ESR, small               Capacitance Change (%)

physical   size     and    other    properties      make   ceramic                             10

                                                                                               0

capacitors very attractive in many types of applications.                                      -10                                       16V Capacitor

                                                                                               -20

Ceramic capacitors are suitable for use with the inter-                                        -30

nal voltage regulator of this microcontroller. However,                                        -40                        10V Capacitor

                                                                                               -50

some   care     is  needed      in  selecting   the  capacitor   to                            -60

ensure that it maintains sufficient capacitance over the                                       -70     6.3V Capacitor

                                                                                               -80

intended operating range of the application.                                                        0  1  2  3  4      5  6    7  8   9  10   11  12  13  14  15  16  17

Typical low-cost, 10 F ceramic capacitors are available                                                               DC Bias Voltage (VDC)

in X5R, X7R and Y5V dielectric ratings (other types are                When selecting a ceramic capacitor to be used with the

also available, but are less common). The initial tolerance            internal voltage regulator, it is suggested to select a

specifications      for  these  types  of  capacitors      are  often  high-voltage rating so that the operating voltage is a

specified as ±10% to ±20% (X5R and X7R) or -20%/                       small percentage of the maximum rated capacitor volt-

+80% (Y5V). However, the effective capacitance that                    age. For example, choose a ceramic capacitor rated at

these capacitors provide in an application circuit will also           a minimum of 16V for the 1.8V core voltage. Suggested

vary based on additional factors, such as the applied DC               capacitors are shown in Table 2-1.

bias voltage and the temperature. The total in-circuit tol-

erance is, therefore, much wider than the initial tolerance

specification.                                                         2.5                                ICSP Pins

The X5R and X7R capacitors typically exhibit satisfac-                 The PGECx and PGEDx pins are used for In-Circuit

tory   temperature       stability  (ex:   ±15%      over  a     wide  Serial Programming (ICSP) and debugging purposes.

temperature range, but consult the manufacturer’s data                 It is recommended to keep the trace length between

sheets for exact specifications). However, Y5V capaci-                 the ICSP connector and the ICSP pins on the device as

tors   typically    have   extreme     temperature        tolerance    short as possible. If the ICSP connector is expected to

specifications      of   +22%/-82%.       Due   to   the   extreme     experience an ESD event, a series resistor is recom-

temperature tolerance, a 10 F nominal rated Y5V type                  mended, with the value in the range of a few tens of

capacitor may not deliver enough total capacitance to                  ohms, not to exceed 100Ω.

meet minimum internal voltage regulator stability and                  Pull-up resistors, series diodes and capacitors on the

transient   response       requirements.        Therefore,       Y5V   PGECx and PGEDx pins are not recommended as they

capacitors    are   not    recommended         for   use   with  the   will interfere with the programmer/debugger communi-

internal regulator if the application must operate over a              cations to the device. If such discrete components are

wide temperature range.                                                an application requirement, they should be removed

In  addition    to  temperature        tolerance,    the   effective   from the circuit during programming and debugging.

capacitance of large value ceramic capacitors can vary                 Alternatively, refer to the AC/DC characteristics and

substantially,      based  on   the    amount    of  DC    voltage     timing                          requirements          information      in  the     respective

applied to the capacitor. This effect can be very signifi-             device Flash programming specification for information

cant,  but    is    often  overlooked      or   is   not   always      on capacitive loading limits, and pin Voltage Input High

documented.                                                            (VIH) and Voltage Input Low (VIL) requirements.

A typical DC bias voltage vs. capacitance graph for                    For device emulation, ensure that the “Communication

X7R type capacitors is shown in Figure 2-4.                            Channel                               Select”      pins       (i.e.,   PGECx/PGEDx),

                                                                       programmed                               into      the  device,       match    the     physical

                                                                       connections for the ICSP to the Microchip debugger/

                                                                       emulator tool.

                                                                       For                             more  information          on     available         Microchip

                                                                       development tools connection requirements, refer to

                                                                       Section 31.0 “Development Support”.

DS30010074F-page 44                                                                                                     2015-2018 Microchip Technology Inc.
                                                      PIC24FJ1024GA610/GB610 FAMILY

2.6         External Oscillator Pins                                    FIGURE      2-5:              SUGGESTED

Many microcontrollers have options for at least two                                                   PLACEMENT OF THE

oscillators: a high-frequency Primary Oscillator and a                                                OSCILLATOR CIRCUIT

low-frequency           Secondary         Oscillator   (refer    to                   Single-Sided and In-Line Layouts:

Section 9.0 “Oscillator Configuration” for details).

The oscillator circuit should be placed on the same                                   Copper Pour        Primary Oscillator
                                                                                                         Crystal
                                                                                    (tied to ground)

side of the board as the device. Place the oscillator                                                    DEVICE PINS

circuit close to the respective oscillator pins with no

more     than  0.5      inch  (12   mm)    between     the  circuit

components and the pins. The load capacitors should

be placed next to the oscillator itself, on the same side               Primary                                              OSCI
                                                                        Oscillator
of the board.
                                                                        C1
Use   a  grounded       copper      pour   around     the  oscillator                     `                                  OSCO

circuit  to    isolate  it    from  surrounding       circuits.  The    C2                                                   GND

grounded copper pour should be routed directly to the                                     `

MCU ground. Do not run any signal traces or power                                                                            SOSCO

traces inside the ground pour. Also, if using a two-sided                                                                    SOSC I

board, avoid any traces on the other side of the board                  Secondary

where the crystal is placed.                                            Oscillator
                                                                        Crystal                       `

Layout suggestions are shown in Figure 2-5. In-line

packages may be handled with a single-sided layout

that completely encompasses the oscillator pins. With                        Sec      Oscillator: C1     Sec Oscillator: C2

fine-pitch packages, it is not always possible to com-

pletely surround the pins and components. A suitable

solution is to tie the broken guard sections to a mirrored                                Fine-Pitch (Dual-Sided) Layouts:

ground layer. In all cases, the guard trace(s) must be

returned to ground.                                                                          Top Layer Copper Pour

In planning the application’s routing and I/O assign-                                                 (tied to ground)

ments,   ensure     that      adjacent    port  pins,  and       other  Bottom Layer

signals in close proximity to the oscillator, are benign                Copper Pour

(i.e., free of high frequencies, short rise and fall times              (tied to ground)

and other similar noise).

For  additional     information     and    design     guidance   on     OSCO

oscillator   circuits,  please      refer  to   these      Microchip                                                         C2

Application Notes, available at the corporate web site                                                                       Oscillator

(www.microchip.com):                                                    GND                                                      Crystal

•  AN943, “Practical PICmicro® Oscillator Analysis                                                                           C1

   and Design”

•  AN949, “Making Your Oscillator Work”                                 OSCI

•  AN1798, “Crystal Selection for Low-Power

   Secondary Oscillator”

                                                                                    DEVICE PINS

 2015-2018 Microchip Technology Inc.                                                                    DS30010074F-page 45
PIC24FJ1024GA610/GB610                                            FAMILY

2.7        Configuration of Analog and                            When    a  Microchip  debugger/emulator    is  used  as      a

           Digital Pins During ICSP                               programmer,  the      user  application  firmware    must

           Operations                                             correctly configure the ADxPCFG or ANSx registers.

                                                                  Automatic initialization of these registers is only done

If an ICSP compliant emulator is selected as a debug-             during     debugger   operation.  Failure  to  correctly

ger, it automatically initializes all of the A/D input pins       configure the register(s) will result in all A/D pins being

(ANx)  as    “digital”  pins.   Depending   on   the  particular  recognized as analog input pins, resulting in the port

device, this is done by setting all bits in the ADxPCFG           value being read as a logic ‘0’, which may affect user

register(s) or clearing all bits in the ANSx registers.           application functionality.

All  PIC24F    devices  will    have  either    one   or  more    2.8        Unused I/Os

ADxPCFG registers, or several ANSx registers (one for

each   port);    no     device  will  have  both.     Refer  to   Unused I/O pins should be configured as outputs and

(Section 11.2      “Configuring       Analog       Port   Pins    driven to a logic low state. Alternatively, connect a 1 kΩ

(ANSx)”) for more specific information.                           to 10 kΩ resistor to VSS on unused pins and drive the

The bits in these registers that correspond to the A/D            output to logic low.

pins that initialized the emulator must not be changed

by    the    user       application   firmware;    otherwise,

communication errors will result between the debugger

and the device.

If your application needs to use certain A/D pins as

analog input pins during the debug session, the user

application    must     modify  the   appropriate  bits   during

initialization of the A/D module, as follows:

•  For devices with an ADxPCFG register, clear the

   bits corresponding to the pin(s) to be configured

   as analog. Do not change any other bits, particu-

   larly those corresponding to the PGECx/PGEDx

   pair, at any time.

•  For devices with ANSx registers, set the bits

   corresponding to the pin(s) to be configured as

   analog. Do not change any other bits, particularly

   those corresponding to the PGECx/PGEDx pair,

   at any time.

DS30010074F-page 46                                                                      2015-2018 Microchip Technology Inc.
                                                     PIC24FJ1024GA610/GB610 FAMILY

3.0        CPU                                                           The    core  supports    Inherent  (no    operand),    Relative,

                                                                         Literal, Memory Direct Addressing modes along with

    Note:      This data sheet summarizes the features of                three groups of addressing modes. All modes support

               this  group     of   PIC24F    devices.     It  is  not   Register Direct and various Register Indirect modes.

               intended to be a comprehensive reference                  Each    group  offers    up   to  seven   addressing   modes.

               source. For more information on the CPU,                  Instructions are associated with predefined addressing

               refer to the “dsPIC33/PIC24 Family Ref-                   modes depending upon their functional requirements.

               erence Manual”, “CPU with Extended                        For most instructions, the core is capable of executing

               Data Space (EDS)” (DS39732), which is                     a data (or program data) memory read, a Working reg-

               available      from    the     Microchip    web     site  ister (data) read, a data memory write and a program

               (www.microchip.com). The information in                   (instruction) memory read per instruction cycle. As a

               this      data      sheet      supersedes           the   result, three parameter instructions can be supported,

               information in the FRM.                                   allowing trinary operations (that is, A + B = C) to be

The PIC24F CPU has a 16-bit (data) modified Harvard                      executed in a single cycle.

architecture with an enhanced instruction set and a                      A  high-speed,       17-bit   x   17-bit  multiplier  has  been

24-bit instruction word with a variable length opcode                    included to significantly enhance the core arithmetic

field. The Program Counter (PC) is 23 bits wide and                      capability   and     throughput.   The    multiplier   supports

addresses      up    to  4M    instructions      of  user  program       Signed, Unsigned and Mixed mode, 16-bit x 16-bit or

memory     space.        A  single-cycle      instruction      prefetch  8-bit   x    8-bit,  integer     multiplication.  All  multiply

mechanism is used to help maintain throughput and                        instructions execute in a single cycle.

provides predictable execution. All instructions execute                 The 16-bit ALU has been enhanced with integer divide

in a single cycle, with the exception of instructions that               assist hardware that supports an iterative non-restoring

change     the  program        flow,     the  double-word       move     divide  algorithm.   It  operates  in     conjunction  with  the

(MOV.D)    instruction         and    the     table      instructions.   REPEAT instruction looping mechanism and a selection

Overhead-free program loop constructs are supported                      of iterative divide instructions to support 32-bit (or 16-bit),

using the REPEAT instructions, which are interruptible                   divided by 16-bit, integer signed and unsigned division.

at any point.                                                            All divide operations require 19 cycles to complete but

PIC24F devices have sixteen, 16-bit Working registers                    are interruptible at any cycle boundary.

in  the    programmer’s        model.      Each  of  the       Working   The PIC24F has a vectored exception scheme with up

registers can act as a Data, Address or Address Offset                   to 8 sources of non-maskable traps and up to 118 inter-
register. The 16th Working register (W15) operates as
                                                                         rupt sources. Each interrupt source can be assigned to
a Software Stack Pointer (SSP) for interrupts and calls.
                                                                         one of seven priority levels.

The lower 32 Kbytes of the Data Space (DS) can be                        A block diagram of the CPU is shown in Figure 3-1.

accessed linearly. The upper 32 Kbytes of the Data

Space are referred to as Extended Data Space (EDS),                      3.1        Programmer’s Model

to  which  the     extended        data    RAM,  EPMP          memory

space or program memory can be mapped.                                   The programmer’s model for the PIC24F is shown in

The  Instruction         Set   Architecture      (ISA)   has       been  Figure 3-2. All registers in the programmer’s model are

significantly enhanced beyond that of the PIC18, but                     memory-mapped and can be manipulated directly by

maintains an acceptable level of backward compatibil-                    instructions.

ity. All PIC18 instructions and addressing modes are                     A description of each register is provided in Table 3-1.

supported, either directly, or through simple macros.                    All registers associated with the programmer’s model

Many of the ISA enhancements have been driven by                         are memory-mapped.

compiler efficiency needs.

 2015-2018 Microchip Technology Inc.                                                                              DS30010074F-page 47
PIC24FJ1024GA610/GB610 FAMILY

FIGURE 3-1:              PIC24F    CPU CORE BLOCK            DIAGRAM

    EDS and Table

    Data Access

    Control Block

                                                             Data Bus

                       Interrupt

                       Controller                                                                     16

                                   8                  16     16

                                                                                  Data Latch

            23                                                                    Data RAM

                         23        PCH          PCL                               Up to 0x7FFF                                            16

                                   Program Counter

                                   Stack              Loop                              Address
                                                                                        Latch
                                   Control          Control
                                   Logic              Logic

                   23                                                                                 16

         Address Latch                                                                  RAGU

                                                                                        WAGU

        Program Memory/

         Extended Data

            Space                                                                   EA MUX

                                   Address Bus

         Data Latch                                              ROM Latch

                                   24                                                   16                16

                                   Instruction                                          Literal Data

                                   Decode and

                                   Control                       Instruction Reg

                                   Control Signals

                                   to Various Blocks             Hardware

                                                                 Multiplier             16 x 16

                                                                 Divide           W Register Array

                                                                 Support                                              16

                                                                                                      16-Bit ALU

                                                                                                                  16

                                                                                                                  To Peripheral  Modules

TABLE 3-1:         CPU CORE REGISTERS

            Register(s) Name                                                      Description

W0 through  W15                                       Working Register Array

PC                                                    23-Bit Program Counter

SR                                                    ALU STATUS Register

SPLIM                                                 Stack Pointer Limit Value Register

TBLPAG                                                Table Memory Page Address Register

RCOUNT                                                REPEAT Loop Counter Register

CORCON                                                CPU Control Register

DISICNT                                               Disable Interrupt Count Register

DSRPAG                                                Data Space Read Page Register

DSWPAG                                                Data Space Write Page Register

DS30010074F-page 48                                                                                    2015-2018 Microchip Technology        Inc.
                                               PIC24FJ1024GA610/GB610 FAMILY

FIGURE 3-2:           PROGRAMMER’S MODEL

                                               15                                   0

Divider Working Registers  W0          (WREG)

                                       W1

                                       W2

Multiplier Registers                   W3

                                       W4

                                       W5

                                       W6

                                       W7                                              Working/Address

                                       W8                                              Registers

                                       W9

                                       W10

                                       W11

                                       W12

                                       W13

                                       W14              Frame Pointer

                                       W15              Stack Pointer               0

                                                        SPLIM                       0  Stack Pointer Limit
                                                                                       Value Register
                      22
                                                                                    0

                                                   PC                               0  Program Counter

                                                              7                     0  Table Memory Page

                                                                       TBLPAG          Address Register

                                                        9                           0

                                                                       DSRPAG          Data Space Read Page Register

                                                           8                        0

                                                                       DSWPAG          Data Space Write Page Register

                                               15                                   0  REPEAT Loop Counter

                                                        RCOUNT                         Register

                                               15  SRH                 SRL          0

                                               — — — — — — — DC 2 IP1L0 RA N OV  Z  C  ALU STATUS Register (SR)

                                               15                                   0

                                               ————————————            IPL3      ———   CPU Control Register (CORCON)

                                                              13                    0

                                                                       DISICNT         Disable Interrupt Count Register

Registers or bits are shadowed for PUSH.S and POP.S instructions.

 2015-2018 Microchip Technology Inc.                                                                   DS30010074F-page 49
PIC24FJ1024GA610/GB610 FAMILY

3.2          CPU Control Registers

REGISTER 3-1:        SR: ALU STATUS REGISTER

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

        —            —              —             —            —                      —            —                  DC

bit 15                                                                                                                    bit 8

     R/W-0(1)     R/W-0(1)      R/W-0(1)          R-0          R/W-0                 R/W-0      R/W-0                 R/W-0

     IPL2(2)       IPL1(2)      IPL0(2)           RA           N                      OV           Z                  C

bit 7                                                                                                                     bit 0

Legend:

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

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

bit 15-9       Unimplemented: Read as ‘0’

bit 8          DC: ALU Half Carry/Borrow bit

               1=  A carry out from the 4th low-order bit (for byte-sized data) or 8th low-order bit (for word-sized      data)

                   of the result occurred
                   No carry out from the 4th or 8th low-order bit of the result has occurred
               0=

bit 7-5        IPL<2:0>: CPU Interrupt Priority Level Status bits(1,2)

               111 = CPU Interrupt Priority Level is 7 (15); user interrupts are disabled

               110 = CPU Interrupt Priority Level is 6 (14)

               101 = CPU Interrupt Priority Level is 5 (13)

               100 = CPU Interrupt Priority Level is 4 (12)

               011 = CPU Interrupt Priority Level is 3 (11)

               010 = CPU Interrupt Priority Level is 2 (10)

               001 = CPU Interrupt Priority Level is 1 (9)

               000 = CPU Interrupt Priority Level is 0 (8)

bit  4         RA: REPEAT Loop Active bit

               1 = REPEAT loop in progress

               0 = REPEAT loop not in progress

bit  3         N: ALU Negative bit

               1 = Result was negative

               0 = Result was not negative (zero or positive)

bit  2         OV: ALU Overflow bit

               1 = Overflow occurred for signed (2’s complement) arithmetic in this arithmetic operation

               0 = No overflow has occurred

bit  1         Z: ALU Zero bit

               1 = An operation, which affects the Z bit, has set it at some time in the past

               0 = The most recent operation, which affects the Z bit, has cleared it (i.e., a non-zero result)

bit  0         C: ALU Carry/Borrow bit

               1 = A carry out from the Most Significant bit (MSb) of the result occurred

               0 = No carry out from the Most Significant bit of the result occurred

Note     1:    The IPLx Status bits are read-only when NSTDIS (INTCON1<15>) = 1.

         2:    The IPLx Status bits are concatenated with the IPL3 Status bit (CORCON<3>) to form the CPU Interrupt

               Priority Level (IPL). The value in parentheses indicates the IPL when IPL3 = 1.

DS30010074F-page 50                                                                       2015-2018 Microchip Technology Inc.
                                            PIC24FJ1024GA610/GB610 FAMILY

REGISTER 3-2:      CORCON: CPU CORE CONTROL REGISTER

       U-0         U-0                 U-0          U-0          U-0                 U-0           U-0           U-0

        —          —                   —            —            —                   —             —                  —

bit 15                                                                                                                   bit 8

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

        —          —                   —            —            IPL3(1)             PSV(2)        —                  —

bit 7                                                                                                                    bit 0

Legend:                 C = Clearable bit

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

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

bit 15-4     Unimplemented: Read as ‘0’

bit 3        IPL3: CPU Interrupt Priority Level Status bit(1)

             1 = CPU Interrupt Priority Level is greater than 7

             0 = CPU Interrupt Priority Level is 7 or less

bit 2        PSV: Program Space Visibility (PSV) in Data Space Enable

             1 = Program space is visible in Data Space

             0 = Program space is not visible in Data Space

bit 1-0      Unimplemented: Read as ‘0’

Note     1:  The IPL3 bit is concatenated with the IPL<2:0> bits (SR<7:5>) to form the CPU Interrupt Priority Level;

             see Register 3-1 for bit description.

         2:  If PSV = 0, any reads from data memory at 0x8000 and above will cause an address trap error instead         of

             reading from the PSV section of program memory. This bit is not individually addressable.

 2015-2018 Microchip Technology Inc.                                                                   DS30010074F-page 51
PIC24FJ1024GA610/GB610 FAMILY

3.3         Arithmetic Logic Unit (ALU)                            3.3.2             DIVIDER

The PIC24F ALU is 16 bits wide and is capable of addi-             The divide block supports 32-bit/16-bit and 16-bit/16-bit

tion, subtraction, bit shifts and logic operations. Unless         signed and unsigned integer divide operations with the

otherwise   mentioned,        arithmetic  operations    are   2’s  following data sizes:

complement in nature. Depending on the operation, the              1.          32-bit signed/16-bit signed divide

ALU may affect the values of the Carry (C), Zero (Z),              2.          32-bit unsigned/16-bit unsigned divide

Negative    (N),    Overflow  (OV)   and   Digit  Carry  (DC)      3.          16-bit signed/16-bit signed divide

Status bits in the SR register. The C and DC Status bits           4.          16-bit unsigned/16-bit unsigned divide

operate as Borrow and Digit Borrow bits, respectively,

for subtraction operations.                                        The quotient for all divide instructions ends up in W0

The    ALU  can     perform   8-bit  or   16-bit  operations,      and         the  remainder    in  W1.    The   16-bit  signed     and

depending on the mode of the instruction that is used.             unsigned DIV instructions can specify any W register

Data   for  the   ALU   operation    can  come    from   the  W    for both the 16-bit divisor (Wn), and any W register

register    array,  or  data  memory,     depending      on   the  (aligned) pair (W(m + 1):Wm) for the 32-bit dividend.

addressing mode of the instruction. Likewise, output               The divide algorithm takes one cycle per bit of divisor,

data from the ALU can be written to the W register array           so both 32-bit/16-bit and 16-bit/16-bit instructions take

or a data memory location.                                         the same number of cycles to execute.

The PIC24F CPU incorporates hardware support for                   3.3.3             MULTI-BIT SHIFT SUPPORT

both   multiplication   and   division.    This   includes    a    The PIC24F ALU supports both single bit and single-

dedicated hardware multiplier and support hardware                 cycle, multi-bit arithmetic and logic shifts. Multi-bit shifts

for 16-bit divisor division.                                       are implemented using a shifter block, capable of per-

3.3.1       MULTIPLIER                                             forming up to a 15-bit arithmetic right shift, or up to a

The    ALU  contains    a     high-speed,    17-bit   x  17-bit    15-bit      left  shift,  in  a  single  cycle.  All   multi-bit  shift

multiplier. It supports unsigned, signed or mixed sign             instructions only support Register Direct Addressing for

operation in several multiplication modes:                         both the operand source and result destination.

•  16-bit x 16-bit signed                                          A   full    summary       of     instructions  that   use  the    shift

                                                                   operation is provided in Table 3-2.

•  16-bit x 16-bit unsigned

•  16-bit signed x 5-bit (literal) unsigned

•  16-bit unsigned x 16-bit unsigned

•  16-bit unsigned x 5-bit (literal) unsigned

•  16-bit unsigned x 16-bit signed

•  8-bit unsigned x 8-bit unsigned

TABLE 3-2:              INSTRUCTIONS THAT USE THE SINGLE BIT AND MULTI-BIT SHIFT OPERATION

       Instruction                                                 Description

            ASR               Arithmetic Shift Right Source register by one or more bits.

            SL                Shift Left Source register by one or more bits.

            LSR               Logical Shift Right Source register by one or more bits.

DS30010074F-page 52                                                                           2015-2018 Microchip Technology Inc.
                                       PIC24FJ1024GA610/GB610 FAMILY

4.0  MEMORY ORGANIZATION                                  User access to the program memory space is restricted

As   Harvard  architecture  devices,   PIC24F   micro-    to the lower half of the address range (000000h to

controllers feature separate program and data memory      7FFFFFh). The exception is the use of TBLRD/TBLWT

spaces and buses. This architecture also allows direct    operations, which use TBLPAG<7> to permit access to

access of program memory from the Data Space during       the Configuration bits and customer OTP sections of

code execution.                                           the configuration memory space.

                                                          The    PIC24FJ1024GA610/GB610            family  of   devices

4.1  Program Memory Space                                 supports a Single Partition mode and two Dual Partition

                                                          modes. The Dual Partition modes allow the device to

The  program     address    memory     space    of  the   be programmed with two separate applications to facil-

PIC24FJ1024GA610/GB610      family     devices  is  4M    itate  bootloading  or   to   allow  an  application  to  be

instructions. The space is addressable by a 24-bit value  programmed at run time without stalling the CPU.

derived from either the 23-bit Program Counter (PC)       Memory  maps        for  the  PIC24FJ1024GA610/GB610

during program execution, or from table operation or      family of devices are shown in Figure 4-1.

Data Space remapping, as described in Section 4.3

“Interfacing Program and Data Memory Spaces”.

 2015-2018 Microchip Technology Inc.                                                          DS30010074F-page 53
PIC24FJ1024GA610/GB610 FAMILY

FIGURE 4-1:            PROGRAM SPACE              MEMORY                 MAP            FOR  PIC24FJ1024GA610/GB610                 FAMILY

                       DEVICES

                       Single Partition Mode                                                 Dual Partition Mode

                                                         000000h                                                                    000000h

                                                                                             User Flash Program Memory

                       User Flash Program Memory

                                                                                             Flash Config Words                     0xxxFEh(1)
                                                                                                                                    0xxx00h(1)
Space                                                                    Space
                       Flash Config Words                0xxxFEh(1)                          Unimplemented

Memory                                                   0xxx00h(1)      Memory                             Read ‘0’

                                                                                                                                    400000h

User                                                                     User                User Flash Program Memory

                       Unimplemented                                                         Flash Config Words                     4xxxFEh(1)
                       Read ‘0’
                                                                                                                                    4xxx00h(1)

                                                                                             Unimplemented

                                                                                                            Read ‘0’

                                                         7FFFFFh                                                                    7FFFFFh
                                                         800000h                                                                    800000h
                       Reserved                          800100h                                            Reserved                800100h

                       Executive Code Memory             800FFEh                             Executive Code Memory                  800FFEh

                       Reserved                          801000h                                            Reserved                801000h
                                                         8016FEh
                                                         801700h                                                                    8016FEh
                                                                                                                                    801700h
                       Customer OTP Memory               8017FEh                             Customer OTP Memory                    8017FEh
Space                                                                    Space
                       FBOOT                             880011880020hh                                     FBOOT                   888000111888000204hhh

                                                         801804h

Memory                                                                   Memory                             Reserved

Configuration          Reserved                                          Configuration

                                                         F9FFFEh                                                                    F9FFFEh
                                                         FA0000h                                                                    FA0000h
                       Flash Write Latches                                                   Flash Write Latches                    FA00FEh
                                                         FA00FEh
                                                         FA0100h                                                                    FA0100h

                       Reserved                          FEFFFEh                                            Reserved

                       DEVID (2)                         FF0000h                                                                    FEFFFEh
                                                                                                            DEVID(2)                FF0000h
                                                         FF0004h                                                                    FF0004h
                       Reserved                          FFFFFFh                                            Reserved
                                                                                                                                    FFFFFFh

Legend:            Memory areas are not shown to scale.

Note 1:            Exact boundary addresses are determined by the        size  of       the  implemented program memory     (Table  4-1).

TABLE 4-1:             PROGRAM MEMORY SIZES AND BOUNDARIES(1)

                       Program Memory Upper Boundary (Instruction Words)

               Device                                    Dual Partition Mode                                          Write                Erase

                       Single Partition                                                                     Blocks(2)               Blocks(2)

                       Mode                       Active Partition                      Inactive Partition

PIC24FJ1024GX6XX       0ABFFEh (352K)             055FFEh (176K)                        455FFEh (176K)                2752                 344

PIC24FJ512GX6XX        055FFEh (176K)             02AFFEh (88k)                         42AFFEh (88k)                 1376                 172

PIC24FJ256GX6XX        02AFFEh (88K)                     0157FEh (44k)                       4157FEh (44k)            688                  86

PIC24FJ128GX6XX        015FFEh (44K)              00AFFEh (22k)                         40AFFEh (22k)                 352                  44

Note           1:  Includes Flash Configuration Words.

               2:  1 Write Block = 128 Instruction Words; 1 Erase Block = 1024 Instruction Words.

DS30010074F-page 54                                                                                          2015-2018 Microchip Technology Inc.
                                                            PIC24FJ1024GA610/GB610 FAMILY

4.1.1          PROGRAM MEMORY                                                       The user can also change which partition is active at run

               ORGANIZATION                                                         time using the BOOTSWP instruction. Issuing a BOOTSWP

The    program        memory         space  is  organized           in    word-     instruction does not affect which partition will be the

addressable blocks. Although it is treated as 24 bits                               Active Partition after a Reset. Figure 4-2 demonstrates

wide, it is more appropriate to think of each address of                            how the relationship between Partitions 1 and 2, shown

the program memory as a lower and upper word, with                                  in red and blue respectively, and the Active and Inactive

the upper byte of the upper word being unimplemented.                               Partitions   are     affected  by     reprogramming    the    Boot

The lower word always has an even address, while the                                Sequence Number or issuing a BOOTSWP instruction.

upper word has an odd address (Figure 4-3).                                         The P2ACTIV bit (NVMCON<10>) can be used to deter-

Program memory addresses are always word-aligned                                    mine which physical partition is the Active Partition. If

on the lower word and addresses are incremented or                                  P2ACTIV = 1, Partition 2 is active; if P2ACTIV = 0,

decremented           by    two  during     code   execution.                This   Partition 1 is active.

arrangement           also  provides        compatibility           with     data   4.1.3        HARD MEMORY VECTORS

memory space addressing and makes it possible to                                    All  PIC24F  devices         reserve   the  addresses  between

access data in the program memory space.                                            000000h and 000200h for hard-coded program execu-

In  Single     Partition    mode,     user      program         memory       is     tion vectors. A hardware Reset vector is provided to

arranged       in  a  contiguous      block     starting        at  address,        redirect code execution from the default value of the PC

000000h.                                                                            on a device Reset to the actual start of code. A GOTO

4.1.2          DUAL PARTITION FLASH PROGRAM                                         instruction is programmed by the user at 000000h, with

               MEMORY ORGANIZATION                                                  the actual address for the start of code at 000002h.

In the Dual Partition modes, the device’s memory is                                 The PIC24FJ1024GA610/GB610 devices can have up to

divided evenly into two physical sections, known as                                 two Interrupt Vector Tables (IVT). The first is located from

Partition 1 and Partition 2. Each of these partitions con-                          addresses, 000004h to 0000FFh. The Alternate Interrupt

tains  its     own    program         memory     and    Configuration               Vector Table (AIVT) can be enabled by the AIVTDIS Con-

Words. During program execution, the code on only                                   figuration bit if the Boot Segment (BS) is present. If the

one    of  these      panels     is   executed;  this       is      the   Active    user has configured a Boot Segment, the AIVT will be

Partition. The other partition, or the Inactive Partition, is                       located at the address, (BSLIM<12:0> – 1) x 0x800.

not used, but can be programmed.                                                    These        vector  tables  allow  each    of  the  many   device

                                                                                    interrupt sources to be handled by separate ISRs. A

The    Active      Partition     is   always     mapped             to   logical    more detailed discussion of the Interrupt Vector Tables is

address,       000000h,     while     the   Inactive        Partition        will   provided in Section 8.1 “Interrupt Vector Table”.

always be mapped to logical address, 400000h. Note                                  4.1.4        CONFIGURATION BITS OVERVIEW

that   even    when         the  code       partitions  are         switched

between Active and Inactive by the user, the address of                             The Configuration bits are stored in the last page loca-

the Active Partition will still be at 000000h and the                               tion of implemented program memory. These bits can be

address of the Inactive Partition will still be at 400000h.                         set or cleared to select various device configurations.

The    Boot    Sequence          Configuration     Word             (FBTSEQ)        There are two types of Configuration bits: system oper-

determines whether Partition 1 or Partition 2 will be active                        ation bits and code-protect bits. The system operation

after Reset. If the part is operating in Dual Partition mode,                       bits determine the power-on settings for system-level

the partition with the lower Boot Sequence Number will                              components, such as the oscillator and the Watchdog

operate as the Active Partition (FBTSEQ is unused in                                Timer. The code-protect bits prevent program memory

Single Partition mode). The partitions can be switched                              from being read and written.

between     Active    and     Inactive      by  reprogramming                their  Table 4-2 lists the Configuration register address range

Boot Sequence Numbers, but the Active Partition will not                            for each device in Single and Dual Partition modes.

change until a device Reset is performed. If both Boot                              Table 4-2 lists all of the Configuration bits found in the

Sequence       Numbers           are  the   same,       or      if  both     are    PIC24FJ1024GA610/GB610 family devices, as well as

corrupted, the part will use Partition 1 as the Active Parti-                       their  Configuration         register     locations.   Refer  to

tion. If only one Boot Sequence Number is corrupted, the                            Section 30.0 “Special Features” in this data sheet for

device will use the partition without a corrupted Boot                              the    full  Configuration     register   description  for  each

Sequence Number as the Active Partition.                                            specific device.

Should      a  Boot       Sequence         Number       be          invalid  (or

unprogrammed), it will be overridden to value, 0x000FFF

(i.e., the highest possible Boot Sequence Number).

 2015-2018 Microchip Technology Inc.                                                                                           DS30010074F-page 55
PIC24FJ1024GA610/GB610 FAMILY

FIGURE 4-2:          RELATIONSHIP BETWEEN PARTITIONS 1/2 AND        ACTIVE/INACTIVE  PARTITIONS

000000h              Partition 1  000000h              Partition 2         000000h   Partition 1

Active Partition

                     BSEQ = 10                         BSEQ = 15                     BSEQ = 10

                                  BOOTSWP Instruction               Reset

400000h              Partition 2  400000h              Partition 1         400000h   Partition 2

Inactive Partition

                     BSEQ = 15                         BSEQ = 10                     BSEQ = 15

000000h              Partition 1  000000h              Partition 1         000000h   Partition 2

Active Partition

                     BSEQ = 10                         BSEQ = 10                     BSEQ = 5

                                  Reprogram BSEQ                    Reset

400000h              Partition 2  400000h              Partition 2         400000h   Partition 1

Inactive Partition

                     BSEQ = 15                         BSEQ = 5                      BSEQ = 10

DS30010074F-page 56                                                  2015-2018 Microchip Technology Inc.
                                       PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-2:     CONFIGURATION WORD ADDRESSES

Configuration                          Single Partition Mode

Register       PIC24FJ1024GX6XX        PIC24FJ512GX6XX  PIC24FJ256GX6XX  PIC24FJ128GX6XX

FSEC           0ABF00h                 055F00h           02AF00h                                           015F00h

FBSLIM         0ABF10h                 055F10h           02AF10h                                           015F10h

FSIGN          0ABF14h                 055F14h           02AF14h                                           015F14h

FOSCSEL        0ABF18h                 055F18h           02AF18h                                           015F18h

FOSC           0ABF1Ch                 055F1Ch           02AF1Ch                                           015F1Ch

FWDT           0ABF20h                 055F20h           02AF20h                                           015F20h

FPOR           0ABF24h                 055F24h           02AF24h                                           015F24h

FICD           0ABF28h                 055F28h           02AF28h                                           015F28h

FDEVOPT1       0ABF2Ch                 055F2Ch           02AF2Ch                                           015F2Ch

FBOOT                                           801800h

                                       Dual     Partition Modes(1)

FSEC(2)        055F00h/455F00h         02AF00h/42AF00h  015700h/415700h  00AF00h/40AF00h

FBSLIM(2)      055F10h/455F10h         02AF10h/42AF10h  015710h/415710h  00AF10h/40AF10h

FSIGN(2)       055F14h/455F14h         02AF14h/42AF14h  015714h/415714h  00AF14h/40AF14h

FOSCSEL        055F18h/455F18h         02AF18h/42AF18h  015718h/415718h  00AF18h/40AF18h

FOSC           055F1Ch/455F1Ch         02AF1Ch/42AF1Ch  01571Ch/41571Ch  00AF1Ch/40AF1Ch

FWDT           055F20h/455F20h         02AF20h/42AF20h  015720h/415720h  00AF20h/40AF20h

FPOR           055F24h/455F24h         02AF24h/42AF24h  015724h/415724h  00AF24h/40AF24h

FICD           055F28h/455F28h         02AF28h/42AF28h  015728h/415728h  00AF28h/40AF28h

FDEVOPT1       055F2Ch/455F2Ch         02AF2Ch/42AF2Ch  01572Ch/41572Ch  00AF2Ch/40AF2Ch

FBTSEQ(3)      055FFCh/455FFCh         02AFFCh/42AFFCh  0157FCh/4157FCh  00AFFCh/40AFFCh

FBOOT                                           801800h

Note  1:   Addresses shown for Dual Partition modes are for the Active/Inactive Partitions, respectively.

      2:   Changes to these Inactive Partition Configuration Words affect how the Active Partition accesses the

           Inactive Partition.

      3:   FBTSEQ is a 24-bit Configuration Word, using all three bytes of the program memory width.

 2015-2018 Microchip Technology Inc.                                    DS30010074F-page 57
PIC24FJ1024GA610/GB610                                       FAMILY

4.1.5     CODE-PROTECT CONFIGURATION                         Customer OTP memory may be programmed in any

          BITS                                               mode, including user RTSP mode, but it cannot be

The device implements intermediate security features         erased. Data is not cleared by a chip erase.

defined by the FSEC register. The Boot Segment (BS)          Do not write the OTP memory more than one time.

is the higher privilege segment and the General Seg-         Writing to the OTP memory more than once may result

ment (GS) is the lower privilege segment. The total          in a permanent ECC Double-Bit Error (ECCDBE) trap.

user code memory can be split into BS or GS. The size        Therefore, writing to OTP memory should only be done

of the segments is determined by the BSLIM<12:0>             after  the  firmware  is  debugged  and       the  part     is

bits. The relative location of the segments within user      programmed in a production environment.

space  does    not  change,  such  that  BS  (if  present)

occupies  the  memory     area  just  after  the  Interrupt  4.1.7       DUAL PARTITION CONFIGURATION

Vector Table (IVT) and the GS occupies the space just                    WORDS

after the BS.                                                In Dual Partition modes, each partition has its own set of

The Configuration Segment (CS) is a small segment            Flash Configuration Words. The full set of Configuration

(less than a page, typically just one row) within user       registers in the Active Partition is used to determine the

Flash address space. It contains all user configuration      device’s configuration; the Configuration Words in the

data that is loaded by the NVM Controller during the         Inactive Partition are used to determine the device’s

Reset sequence.                                              configuration when that partition becomes active. How-

4.1.6     CUSTOMER OTP MEMORY                                ever, some of the Configuration registers in the Inactive

                                                             Partition (FSEC, FBSLIM and FSIGN) may be used to

PIC24FJ1024GA610/GB610          family   devices  provide    determine how the Active Partition is able or allowed to

256 bytes of One-Time-Programmable (OTP) mem-                access the Inactive Partition.

ory, located at addresses, 801700h through 8017FEh.

This memory can be used for persistent storage of

application-specific information that will not be erased

by  reprogramming    the  device.  This  includes    many

types of information, such as (but not limited to):

•  Application Checksums

•  Code Revision Information

•  Product Information

•  Serial Numbers

•  System Manufacturing Dates

•  Manufacturing Lot Numbers

DS30010074F-page 58                                                       2015-2018 Microchip Technology Inc.
                                              PIC24FJ1024GA610/GB610 FAMILY

4.2    Data Memory Space                                              The upper half of data memory address space (8000h to

                                                                      FFFFh) is used as a window into the Extended Data

Note:       This data sheet summarizes the features of                Space (EDS). This allows the microcontroller to directly

            this  group  of   PIC24F   devices.   It  is  not         access a greater range of data beyond the standard

            intended  to  be   a   comprehensive      refer-          16-bit address range. EDS is discussed in detail in

            ence source. For more information, refer                  Section 4.2.5 “Extended Data Space (EDS)”.

            to the “dsPIC33/PIC24 Family Reference                    The lower half of DS is compatible with previous PIC24F

            Manual”, “Data Memory with Extended                       microcontrollers without EDS. All PIC24FJ1024GA610/

            Data Space (EDS)” (DS39733). The infor-                   GB610  family  devices      implement  30  Kbytes   of   data

            mation in this data sheet supersedes the                  RAM in the lower half of DS, from 0800h to 7FFF.

            information in the FRM.

The PIC24F core has a 16-bit wide data memory space,                  4.2.1        DATA SPACE WIDTH

addressable as a single linear range. The Data Space is               The    data  memory     space  is      organized   in    byte-

accessed using two Address Generation Units (AGUs),                   addressable, 16-bit wide blocks. Data is aligned in

one each for read and write operations. The Data Space                data memory and registers as 16-bit words, but all Data

memory map is shown in Figure 4-3.                                    Space  EAs   resolve    to  bytes.  The  Least    Significant

The 16-bit wide data addresses in the data memory                     Bytes (LSBs) of each word have even addresses, while

space point to bytes within the Data Space (DS). This                 the    Most  Significant    Bytes   (MSBs)        have   odd

gives a DS address range of 32 Kbytes or 16K words.                   addresses.

The  lower  half  (0000h       to  7FFFh)     is  used    for

implemented (on-chip) memory addresses.

FIGURE 4-3:              DATA      SPACE MEMORY           MAP FOR PIC24FJ1024GA610/GB610 FAMILY DEVICES

                         MSB       MSB            LSB          LSB

                      Address                             Address

                      0001h            SFR Space               0000h  SFR

                      07FFh                                    07FEh  Space  Near

                      0801h                                    0800h         Data Space

                      1FFFh                                    1FFEh

                      2001h                                    2000h

Lower 32 Kbytes

     Data Space

                                   30 Kbytes Data RAM                        EDS Page 0x1            Internal Extended

                                                                      (2 Kbytes implemented)         Data RAM (2 Kbytes)

                      7FFFh                                    7FFEh                                 EPMP Memory Space

                      8001h                                    8000h         EDS Page 0x2

                                                                             EDS Page 0x1FF

Upper 32 Kbytes                        EDS Window                            EDS Page 0x200          Program Space Visibility

     Data Space                                                                                      Area to Access Lower

                                                                             EDS Page 0x2FF          Word of Program Memory

                                                                             EDS Page 0x300          Program Space Visibility

                                                                                                     Area to Access Upper

                      FFFFh                                    FFFEh         EDS Page 0x3FF          Word of Program Memory

Note:       Memory areas not shown to scale.

 2015-2018 Microchip Technology Inc.                                                                     DS30010074F-page 59
PIC24FJ1024GA610/GB610 FAMILY

4.2.2        DATA MEMORY ORGANIZATION                                           A Sign-Extend (SE) instruction is provided to allow users

             AND ALIGNMENT                                                      to translate 8-bit signed data to 16-bit signed values.

To maintain backward compatibility with PIC® MCUs and                           Alternatively, for 16-bit unsigned data, users can clear

improve   Data      Space      memory        usage     efficiency,  the         the MSB of any W register by executing a Zero-Extend

PIC24F    instruction     set  supports      both    word     and   byte        (ZE) instruction on the appropriate address.

operations. As a consequence of byte accessibility, all                         Although most instructions are capable of operating on

EA calculations are internally scaled to step through                           word or byte data sizes, it should be noted that some

word-aligned memory. For example, the core recognizes                           instructions operate only on words.

that Post-Modified Register Indirect Addressing mode,                           4.2.3          NEAR DATA SPACE

[Ws++],   will  result    in   a   value     of  Ws    +   1  for   byte

operations and Ws + 2 for word operations.                                      The     8-Kbyte   area    between       0000h  and     1FFFh     is

Data byte reads will read the complete word, which                              referred to as the Near Data Space. Locations in this

contains the byte, using the LSB of any EA to deter-                            space are directly addressable via a 13-bit absolute

mine which byte to select. The selected byte is placed                          address field within all memory direct instructions. The

onto the LSB of the data path. That is, data memory                             remainder of the Data Space is addressable indirectly.

and registers are organized as two parallel, byte-wide                          Additionally,     the  whole      Data  Space  is   addressable

entities  with  shared         (word)     address      decode,      but         using MOV instructions, which support Memory Direct

separate write lines. Data byte writes only write to the                        Addressing with a 16-bit address field.

corresponding       side   of     the  array     or    register  which          4.2.4          SPECIAL FUNCTION REGISTER

matches the byte address.                                                                      (SFR) SPACE

All word accesses must be aligned to an even address.                           The first 2 Kbytes of the Near Data Space, from 0000h

Misaligned word data fetches are not supported, so                              to 07FFh, are primarily occupied with Special Function

care   must     be  taken      when    mixing        byte  and      word        Registers (SFRs). These are used by the PIC24F core

operations or translating from 8-bit MCU code. If a                             and peripheral modules for controlling the operation of

misaligned read or write is attempted, an address error                         the device.

trap will be generated. If the error occurred on a read,

the instruction underway is completed; if it occurred on                        SFRs are distributed among the modules that they con-

a write, the instruction will be executed but the write will                    trol    and  are  generally    grouped  together    by   module.

not occur. In either case, a trap is then executed, allow-                      Much of the SFR space contains unused addresses;

ing the system and/or user to examine the machine                               these are read as ‘0’. A diagram of the SFR space,

state prior to execution of the address Fault.                                  showing where the SFRs are actually implemented, is

All byte loads into any W register are loaded into the                          shown in Table 4-3. Each implemented area indicates

LSB. The Most Significant Byte (MSB) is not modified.                           a  32-byte     region     where   at    least  one  address      is

                                                                                implemented as an SFR. A complete list of imple-

                                                                                mented SFRs, including their addresses, is shown in

                                                                                Tables 4-3 through 4-11.

TABLE 4-3:             IMPLEMENTED REGIONS                          OF SFR DATA SPACE

                                                                    SFR Space Address

          xx00      xx10   xx20        xx30      xx40      xx50     xx60  xx70    xx80  xx90      xxA0    xxB0    xxC0  xxD0       xxE0  xxF0

000h                                                                         Core

100h      OSC   Reset(1)               EPMP                CRC      REFO     PMD                  Timers          CTM              RTCC

200h            Capture                          Compare                                     MCCP                                  Comp  ANCFG

300h                                             SCCP                                                             UART                        SPI

400h                          SPI                          —              CLC                             I2C                      DMA

500h         DMA               —       —         —                           USB                               —  —     —           —    —

600h      —         —          —       —         —                                           I/O                                         —

700h      —                            A/D                          —     —        —                              PPS

Legend:   — = No implemented SFRs in this block

Note 1:   Includes HLVD control.

DS30010074F-page 60                                                                                        2015-2018 Microchip Technology Inc.
                                                 PIC24FJ1024GA610/GB610                                    FAMILY

TABLE 4-4:       SFR MAP: 0000h BLOCK

      File Name  Address                               All Resets        File Name  Address                All Resets

CPU CORE                                                           INTERRUPT  CONTROLLER (CONTINUED)

WREG0                 0000                             0000        IEC1             009A                   0000

WREG1                 0002                             0000        IEC2             009C                   0000

WREG2                 0004                             0000        IEC3             009E                   0000

WREG3                 0006                             0000        IEC4             00A0                   0000

WREG4                 0008                             0000        IEC5             00A2                   0000

WREG5                 000A                             0000        IEC6             00A4                   0000

WREG6                 000C                             0000        IEC7             00A6                   0000

WREG7                 000E                             0000        IPC0             00A8                   4444

WREG8                 0010                             0000        IPC1             00AA                   4444

WREG9                 0012                             0000        IPC2             00AC                   4444

WREG10                0014                             0000        IPC3             00AE                   4444

WREG11                0016                             0000        IPC4             00B0                   4444

WREG12                0018                             0000        IPC5             00B2                   4404

WREG13                001A                             0000        IPC6             00B4                   4444

WREG14                001C                             0000        IPC7             00B6                   4444

WREG15                001E                             0800        IPC8             00B8                   0044

SPLIM                 0020                             xxxx        IPC9             00BA                   4444

PCL                   002E                             0000        IPC10            00BC                   4444

PCH                   0030                             0000        IPC11            00BE                   4444

DSRPAG                0032                             0000        IPC12            00C0                   4444

DSWPAG                0034                             0000        IPC13            00C2                   0440

RCOUNT                0036                             xxxx        IPC14            00C4                   4400

SR                    0042                             0000        IPC15            00C6                   4444

CORCON                0044                             0004        IPC16            00C8                   4444

DISICNT               0052                             xxxx        IPC17            00CA                   4444

TBLPAG                0054                             0000        IPC18            00CC                   0044

INTERRUPT CONTROLLER                                               IPC19            00CE                   0040

INTCON1               0080                             0000        IPC20            00D0                   4440

INTCON2               0082                             8000        IPC21            00D2                   4444

INTCON4               0086                             0000        IPC22            00D4                   4444

IFS0                  0088                             0000        IPC23            00D6                   4400

IFS1                  008A                             0000        IPC24            00D8                   4444

IFS2                  008C                             0000        IPC25            00DA                   0440

IFS3                  008E                             0000        IPC26            00DC                   0400

IFS4                  0090                             0000        IPC27            00DE                   4440

IFS5                  0092                             0000        IPC28            00E0                   4444

IFS6                  0094                             0000        IPC29            00E2                   0044

IFS7                  0096                             0000        INTTREG          00E4                   0000

IEC0                  0098                             0000

Legend:   — = unimplemented, read      as  ‘0’;  x  =  undefined.  Reset values are shown in hexadecimal.

 2015-2018 Microchip Technology Inc.                                                                      DS30010074F-page 61
PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-5:      SFR MAP: 0100h BLOCK

     File Name       Address                         All Resets       File Name   Address                        All Resets

OSCILLATOR                                                       PMD (CONTINUED)

OSCCON               0100                            xxx0        PMD5             0180                           0000

CLKDIV               0102                            30x0        PMD6             0182                           0000

OSCTUN               0106                            xxxx        PMD7             0184                           0000

DCOTUN               0108                            0000        PMD8             0186                           0000

DCOCON               010A                            0x00        TIMER

OSCDIV               010C                            0001        TMR1             0190                           0000

OSCFDIV              010E                            0000        PR1              0192                           FFFF

RESET                                                            T1CON            0194                           0000

RCON                 0110                            0003        TMR2             0196                           0000

HLVD                                                             TMR3HLD          0198                           0000

HLVDCON              0114                            0600        TMR3             019A                           0000

PMP                                                              PR2              019C                           FFFF

PMCON1               0128                            0000        PR3              019E                           FFFF

PMCON2               012A                            0000        T2CON            01A0                           0x00

PMCON3               012C                            0000        T3CON            01A2                           0x00

PMCON4               012E                            0000        TMR4             01A4                           0000

PMCS1CF              0130                            0000        TMR5HLD          01A6                           0000

PMCS1BS              0132                            0000        TMR5             01A8                           0000

PMCS1MD              0134                            0000        PR4              01AA                           FFFF

PMCS2CF              0136                            0000        PR5              01AC                           FFFF

PMCS2BS              0138                            0000        T4CON            01AE                           0x00

PMCS2MD              013A                            0000        T5CON            01B0                           0x00

PMDOUT1              013C                            xxxx        CTMU

PMDOUT2              013E                            xxxx        CTMUCON1L        01C0                           0000

PMDIN1               0140                            xxxx        CTMUCON1H        01C2                           0000

PMDIN2               0142                            xxxx        CTMUCON2L        01C4                           0000

PMSTAT               0144                            008F        REAL-TIME CLOCK AND CALENDAR            (RTCC)

CRC                                                              RTCCON1L         01CC                           xxxx

CRCCON1              0158                            00x0        RTCCON1H         01CE                           xxxx

CRCCON2              015A                            0000        RTCCON2L         01D0                           xxxx

CRCXORL              015C                            0000        RTCCON2H         01D2                           xxxx

CRCXORH              015E                            0000        RTCCON3L         01D4                           xxxx

CRCDATL              0160                            xxxx        RTCSTATL         01D8                           00xx

CRCDATH              0162                            xxxx        TIMEL            01DC                           xx00

CRCWDATL             0164                            xxxx        TIMEH            01DE                           xxxx

CRCWDATH             0166                            xxxx        DATEL            01E0                           xx0x

REFO                                                             DATEH            01E2                           xxxx

REFOCONL             0168                            0000        ALMTIMEL         01E4                           xx00

REFOCONH             016A                            0000        ALMTIMEH         01E6                           xxxx

REFOTRIML            016C                            0000        ALMDATEL         01E8                           xx0x

PMD                                                              ALMDATEH         01EA                           xxxx

PMD1                 0178                            0000        TSATIMEL         01EC                           xx00

PMD2                 017A                            0000        TSATIMEH         01EE                           xxxx

PMD3                 017C                            0000        TSADATEL         01F0                           xx0x

PMD4                 017E                            0000        TSADATEH         01F2                           xxxx

Legend:   —=    unimplemented, read  as  ‘0’;  x  =  undefined.  Reset values are shown in hexadecimal.

DS30010074F-page 62                                                                2015-2018            Microchip Technology  Inc.
                                                 PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-6:     SFR MAP: 0200h BLOCK

File Name       Address                                All Resets  File Name  Address                      All Resets

INPUT CAPTURE                                                      OUTPUT CAPTURE (CONTINUED)

IC1CON1         0200                                   0000        OC4R       0254                         xxxx

IC1CON2         0202                                   000D        OC4TMR     0256                         xxxx

IC1BUF          0204                                   0000        OC5CON1    0258                         0000

IC1TMR          0206                                   0000        OC5CON2    025A                         000C

IC2CON1         0208                                   0000        OC5RS      025C                         xxxx

IC2CON2         020A                                   000D        OC5R       025E                         xxxx

IC2BUF          020C                                   0000        OC5TMR     0260                         xxxx

IC2TMR          020E                                   0000        OC6CON1    0262                         0000

IC3CON1         0210                                   0000        OC6CON2    0264                         000C

IC3CON2         0212                                   000D        OC6RS      0266                         xxxx

IC3BUF          0214                                   0000        OC6R       0268                         xxxx

IC3TMR          0216                                   0000        OC6TMR     026A                         xxxx

IC4CON1         0218                                   0000        MULTIPLE OUTPUT CAPTURE/COMPARE/PWM

IC4CON2         021A                                   000D        CCP1CON1L  026C                         0000

IC4BUF          021C                                   0000        CCP1CON1H  026E                         0000

IC4TMR          021E                                   0000        CCP1CON2L  0270                         0000

IC5CON1         0220                                   0000        CCP1CON2H  0272                         0100

IC5CON2         0222                                   000D        CCP1CON3L  0274                         0000

IC5BUF          0224                                   0000        CCP1CON3H  0276                         0000

IC5TMR          0226                                   0000        CCP1STATL  0278                         00x0

IC6CON1         0228                                   0000        CCP1STATH  027A                         0000

IC6CON2         022A                                   000D        CCP1TMRL   027C                         0000

IC6BUF          022C                                   0000        CCP1TMRH   027E                         0000

IC6TMR          022E                                   0000        CCP1PRL    0280                         FFFF

OUTPUT COMPARE                                                     CCP1PRH    0282                         FFFF

OC1CON1         0230                                   0000        CCP1RAL    0284                         0000

OC1CON2         0232                                   000C        CCP1RAH    0286                         0000

OC1RS           0234                                   xxxx        CCP1RBL    0288                         0000

OC1R            0236                                   xxxx        CCP1RBH    028A                         0000

OC1TMR          0238                                   xxxx        CCP1BUFL   028C                         0000

OC2CON1         023A                                   0000        CCP1BUFH   028E                         0000

OC2CON2         023C                                   000C        CCP2CON1L  0290                         0000

OC2RS           023E                                   xxxx        CCP2CON1H  0292                         0000

OC2R            0240                                   xxxx        CCP2CON2L  0294                         0000

OC2TMR          0242                                   xxxx        CCP2CON2H  0296                         0100

OC3CON1         0244                                   0000        CCP2CON3L  0298                         0000

OC3CON2         0246                                   000C        CCP2CON3H  029A                         0000

OC3RS           0248                                   xxxx        CCP2STATL  029C                         00x0

OC3R            024A                                   xxxx        CCP2STATH  029E                         0000

OC3TMR          024C                                   xxxx        CCP2TMRL   02A0                         0000

OC4CON1         024E                                   0000        CCP2TMRH   02A2                         0000

OC4CON2         0250                                   000C        CCP2PRL    02A4                         FFFF

OC4RS           0252                                   xxxx        CCP2PRH    02A6                         FFFF

Legend:  — = unimplemented, read       as  ‘0’;  x  =  undefined.  Reset values are shown in hexadecimal.

 2015-2018 Microchip Technology Inc.                                                                      DS30010074F-page 63
PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-6:   SFR MAP: 0200h BLOCK (CONTINUED)

File Name            Address         All Resets            File Name    Address                    All Resets

MULTIPLE OUTPUT CAPTURE/COMPARE/PWM                        MULTIPLE OUTPUT CAPTURE/COMPARE/PWM

(CONTINUED)                                                (CONTINUED)

CCP2RAL              02A8            0000                  CCP3PRL               02C8              FFFF

CCP2RAH              02AA            0000                  CCP3PRH               02CA              FFFF

CCP2RBL              02AC            0000                  CCP3RAL               02CC              0000

CCP2RBH              02AE            0000                  CCP3RAH               02CE              0000

CCP2BUFL             02B0            0000                  CCP3RBL               02D0              0000

CCP2BUFH             02B2            0000                  CCP3RBH               02D2              0000

CCP3CON1L            02B4            0000                  CCP3BUFL              02D4              0000

CCP3CON1H            02B6            0000                  CCP3BUFH              02D6              0000

CCP3CON2L            02B8            0000                  COMPARATORS

CCP3CON2H            02BA            0100                  CMSTAT                02E6              0000

CCP3CON3L            02BC            0000                  CVRCON                02E8              00xx

CCP3CON3H            02BE            0000                  CM1CON                02EA              0000

CCP3STATL            02C0            00x0                  CM2CON                02EC              0000

CCP3STATH            02C2            0000                  CM3CON                02EE              0000

CCP3TMRL             O2C4            0000                  ANALOG CONFIGURATION

CCP3TMRH             02C6            0000                  ANCFG                 02F4              0000

Legend:    — = unimplemented, read as ‘0’; x = undefined.  Reset values are shown in hexadecimal.

DS30010074F-page 64                                                      2015-2018 Microchip Technology       Inc.
                                       PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-7:  SFR MAP: 0300h BLOCK

File Name   Address                    All Resets  File Name  Address                             All Resets

SINGLE OUTPUT CAPTURE/COMPARE/PWM                  SINGLE OUTPUT CAPTURE/COMPARE/PWM (CONTINUED)

CCP4CON1L   0300                       0000        CCP6STATH  0356                                0000

CCP4CON1H   0302                       0000        CCP6TMRL   0358                                0000

CCP4CON2L   0304                       0000        CCP6TMRH   035A                                0000

CCP4CON2H   0306                       0100        CCP6PRL    035C                                FFFF

CCP4CON3L   0308                       0000        CCP6PRH    035E                                FFFF

CCP4CON3H   030A                       0000        CCP6RAL    0360                                0000

CCP4STATL   030C                       00x0        CCP6RAH    0362                                0000

CCP4STATH   030E                       0000        CCP6RBL    0364                                0000

CCP4TMRL    0310                       0000        CCP6RBH    0366                                0000

CCP4TMRH    0312                       0000        CCP6BUFL   0368                                0000

CCP4PRL     0314                       FFFF        CCP6BUFH   036A                                0000

CCP4PRH     0316                       FFFF        CCP7CON1L  036C                                0000

CCP4RAL     0318                       0000        CCP7CON1H  036E                                0000

CCP4RAH     031A                       0000        CCP7CON2L  0370                                0000

CCP4RBL     031C                       0000        CCP7CON2H  0372                                0100

CCP4RBH     031E                       0000        CCP7CON3L  0374                                0000

CCP4BUFL    0320                       0000        CCP7CON3H  0376                                0000

CCP4BUFH    0322                       0000        CCP7STATL  0378                                00x0

CCP5CON1L   0324                       0000        CCP7STATH  037A                                0000

CCP5CON1H   0326                       0000        CCP7TMRL   037C                                0000

CCP5CON2L   0328                       0000        CCP7TMRH   037E                                0000

CCP5CON2H   032A                       0100        CCP7PRL    0380                                FFFF

CCP5CON3L   032C                       0000        CCP7PRH    0382                                FFFF

CCP5CON3H   032E                       0000        CCP7RAL    0384                                0000

CCP5STATL   0330                       00x0        CCP7RAH    0386                                0000

CCP5STATH   0332                       0000        CCP7RBL    0388                                0000

CCP5TMRL    0334                       0000        CCP7RBH    038A                                0000

CCP5TMRH    0336                       0000        CCP7BUFL   038C                                0000

CCP5PRL     0338                       FFFF        CCP7BUFH   038E                                0000

CCP5PRH     033A                       FFFF        UART

CCP5RAL     033C                       0000        U1MODE     0398                                0000

CCP5RAH     033E                       0000        U1STA      039A                                0110

CCP5RBL     0340                       0000        U1TXREG    039C                                x0xx

CCP5RBH     0342                       0000        U1RXREG    039E                                0000

CCP5BUFL    0344                       0000        U1BRG      03A0                                0000

CCP5BUFH    0346                       0000        U1ADMD     03A2                                0000

CCP6CON1L   0348                       0000        U2MODE     03AE                                0000

CCP6CON1H   034A                       0000        U2STA      03B0                                0110

CCP6CON2L   034C                       0000        U2TXREG    03B2                                xxxx

CCP6CON2H   034E                       0100        U2RXREG    03B4                                0000

CCP6CON3L   0350                       0000        U2BRG      03B6                                0000

CCP6CON3H   0352                       0000        U2ADMD     03B8                                0000

CCP6STATL   0354                       00x0        U3MODE     03C4                                0000

Legend:    — = unimplemented, read as ‘0’; x = undefined. Reset values are shown in hexadecimal.

 2015-2018 Microchip Technology Inc.                                                             DS30010074F-page 65
PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-7:  SFR MAP: 0300h BLOCK (CONTINUED)

File Name            Address                      All Resets       File Name    Address               All Resets

UART (CONTINUED)                                              UART (CONTINUED)

U3STA                03C6                         0110        U5BRG             03E4                  0000

U3TXREG              03C8                         xxxx        U5ADMD            03E6                  0000

U3RXREG              03CA                         0000        U6MODE            03E8                  0000

U3BRG                03CC                         0000        U6STA             03EA                  0110

U3ADMD               03CE                         0000        U6TXREG           03EC                  xxxx

U4MODE               03D0                         0000        U6RXREG           03EE                  0000

U4STA                03D2                         0110        U6BRG             03F0                  0000

U4TXREG              03D4                         xxxx        U6ADMD            03F2                  0000

U4RXREG              03D6                         0000        SPI

U4BRG                03D8                         0000        SPI1CON1L         03F4                  0x00

U4ADMD               03DA                         0000        SPI1CON1H         03F6                  0000

U5MODE               03DC                         0000        SPI1CON2L         03F8                  0000

U5STA                03DE                         0110        SPI1STATL         03FC                  0028

U5TXREG              03E0                         xxxx        SPI1STATH         03FE                  0000

U5RXREG              03E2                         0000

Legend:  — = unimplemented, read  as  ‘0’;  x  =  undefined.  Reset values are shown in hexadecimal.

DS30010074F-page 66                                                              2015-2018           Microchip Technology  Inc.
                                             PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-8:       SFR MAP: 0400h BLOCK

File Name        Address                           All Resets       File Name         Address          All Resets

SPI (CONTINUED)                                                CONFIGURABLE    LOGIC  CELL (CLC)       (CONTINUED)

SPI1BUFL         0400                              0000        CLC3CONL               047C             0000

SPI1BUFH         0402                              0000        CLC3CONH               047E             0000

SPI1BRGL         0404                              xxxx        CLC3SEL                0480             0000

SPI1IMSK1        0408                              0000        CLC3GLSL               0484             0000

SPI1IMSK2        040A                              0000        CLC3GLSH               0486             0000

SPI1URDTL        040C                              0000        CLC4CONL               0488             0000

SPI1URDTH        040E                              0000        CLC4CONH               048A             0000

SPI2CON1L        0410                              0x00        CLC4SEL                048C             0000

SPI2CON1H        0412                              0000        CLC4GLSL               0490             0000

SPI2CON2L        0414                              0000        CLC4GLSH               0492             0000

SPI2STATL        0418                              0028        I2C

SPI2STATH        041A                              0000        I2C1RCV                0494             0000

SPI2BUFL         041C                              0000        I2C1TRN                0496             00FF

SPI2BUFH         041E                              0000        I2C1BRG                0498             0000

SPI2BRGL         0420                              xxxx        I2C1CON1               049A             1000

SPI2IMSK1        0424                              0000        I2C1CON2               049C             0000

SPI2IMSK2        0426                              0000        I2C1STAT               049E             0000

SPI2URDTL        0428                              0000        I2C1ADD                04A0             0000

SPI2URDTH        042A                              0000        I2C1MSK                04A2             0000

SPI3CON1L        042C                              0x00        I2C2RCV                04A4             0000

SPI3CON1H        042E                              0000        I2C2TRN                04A6             00FF

SPI3CON2L        0430                              0000        I2C2BRG                04A8             0000

SPI3STATL        0434                              0028        I2C2CON1               04AA             1000

SPI3STATH        0436                              0000        I2C2CON2               04AC             0000

SPI3BUFL         0438                              0000        I2C2STAT               04AE             0000

SPI3BUFH         043A                              0000        I2C2ADD                04B0             0000

SPI3BRGL         043C                              xxxx        I2C2MSK                04B2             0000

SPI3IMSK1        0440                              0000        I2C3RCV                04B4             0000

SPI3IMSK2        0442                              0000        I2C3TRN                04B6             00FF

SPI3URDTL        0444                              0000        I2C3BRG                04B8             0000

SPI3URDTH        0446                              0000        I2C3CON1               04BA             1000

CONFIGURABLE LOGIC CELL (CLC)                                  I2C3CON2               04BC             0000

CLC1CONL         0464                              0000        I2C3STAT               04BE             0000

CLC1CONH         0466                              0000        I2C3ADD                04C0             0000

CLC1SEL          0468                              0000        I2C3MSK                04C2             0000

CLC1GLSL         046C                              0000        DMA

CLC1GLSH         046E                              0000        DMACON                 04C4             0000

CLC2CONL         0470                              0000        DMABUF                 04C6             0000

CLC2CONH         0472                              0000        DMAL                   04C8             0000

CLC2SEL          0474                              0000        DMAH                   04CA             0000

CLC2GLSL         0478                              0000        DMACH0                 04CC             0000

CLC2GLSH         047A                              0000        DMAINT0                04CE             0000

Legend:    — = unimplemented, read as  ‘0’;  x  =  undefined.  Reset values are shown in hexadecimal.

 2015-2018 Microchip Technology Inc.                                                                  DS30010074F-page 67
PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-8:  SFR MAP: 0400h BLOCK (CONTINUED)

File Name            Address                      All Resets  File Name                  Address       All Resets

DMA (CONTINUED)                                               DMA (CONTINUED)

DMASRC0              04D0                         0000        DMACNT2                    04E8          0001

DMADST0              04D2                         0000        DMACH3                     04EA          0000

DMACNT0              04D4                         0001        DMAINT3                    04EC          0000

DMACH1               04D6                         0000        DMASRC3                    04EE          0000

DMAINT1              04D8                         0000        DMADST3                    04F0          0000

DMASRC1              04DA                         0000        DMACNT3                    04F2          0001

DMADST1              04DC                         0000        DMACH4                     04F4          0000

DMACNT1              04DE                         0001        DMAINT4                    04F6          0000

DMACH2               04E0                         0000        DMASRC4                    04F8          0000

DMAINT2              04E2                         0000        DMADST4                    04FA          0000

DMASRC2              04E4                         0000        DMACNT4                    04FC          0001

DMADST2              04E6                         0000        DMACH5                     04FE          0000

Legend:  — = unimplemented, read  as  ‘0’;  x  =  undefined.  Reset values are shown in  hexadecimal.

DS30010074F-page 68                                                                       2015-2018   Microchip Technology  Inc.
                                                 PIC24FJ1024GA610/GB610                                    FAMILY

TABLE 4-9:       SFR MAP: 0500h BLOCK

      File Name  Address                               All Resets  File Name            Address            All Resets

DMA (CONTINUED)                                                    USB OTG (CONTINUED)

DMAINT5          0500                                  0000        U1ADDR               056E               00xx

DMASRC5          0502                                  0000        U1BDTP1              0570               0000

DMADST5          0504                                  0000        U1FRML               0572               0000

DMACNT5          0506                                  0001        U1FRMH               0574               0000

DMACH6           0508                                  0000        U1TOK                0576               0000

DMAINT6          050A                                  0000        U1SOF                0578               0000

DMASRC6          050C                                  0000        U1BDTP2              057A               0000

DMADST6          050E                                  0000        U1BDTP3              057C               0000

DMACNT6          0510                                  0001        U1CNFG1              057E               0000

DMACH7           0512                                  0000        U1CNFG2              0580               0000

DMAINT7          0514                                  0000        U1EP0                0582               0000

DMASRC7          0516                                  0000        U1EP1                0584               0000

DMADST7          0518                                  0000        U1EP2                0586               0000

DMACNT7          051A                                  0001        U1EP3                0588               0000

USB OTG                                                            U1EP4                058A               0000

U1OTGIR          0558                                  0000        U1EP5                058C               0000

U1OTGIE          055A                                  0000        U1EP6                058E               0000

U1OTGSTAT        055C                                  0000        U1EP7                0590               0000

U1OTGCON         055E                                  0000        U1EP8                0592               0000

U1PWRC           0560                                  00x0        U1EP9                0594               0000

U1IR             0562                                  0000        U1EP10               0596               0000

U1IE             0564                                  0000        U1EP11               0598               0000

U1EIR            0566                                  0000        U1EP12               059A               0000

U1EIE            0568                                  0000        U1EP13               059C               0000

U1STAT           056A                                  0000        U1EP14               059E               0000

U1CON            056C                                  00x0        U1EP15               05A0               0000

Legend:   — = unimplemented, read      as  ‘0’;  x  =  undefined.  Reset values are shown in hexadecimal.

 2015-2018 Microchip Technology Inc.                                                                      DS30010074F-page 69
PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-10:      SFR MAP: 0600h BLOCK

      File Name      Address  All Resets     File Name                                         Address  All Resets

I/O                                          PORTD (CONTINUED)

PADCON               065E              0000  ANSD                                              06A6     FFFF

IOCSTAT              0660              0000  IOCPD                                             06A8     0000

PORTA(1)                                     IOCND                                             06AA     0000

TRISA                0662              FFFF  IOCFD                                             06AC     0000

PORTA                0664              0000  IOCPUD                                            06AE     0000

LATA                 0666              0000  IOCPDD                                            06B0     0000

ODCA                 0668              0000  PORTE

ANSA                 066A              FFFF  TRISE                                             06B2     FFFF

IOCPA                066C              0000  PORTE                                             06B4     0000

IOCNA                066E              0000  LATE                                              06B6     0000

IOCFA                0670              0000  ODCE                                              06B8     0000

IOCPUA               0672              0000  ANSE                                              06BA     FFFF

IOCPDA               0674              0000  IOCPE                                             06BC     0000

PORTB                                        IOCNE                                             06BE     0000

TRISB                0676              FFFF  IOCFE                                             06C0     0000

PORTB                0678              0000  IOCPUE                                            06C2     0000

LATB                 067A              0000  IOCPDE                                            06C4     0000

ODCB                 067C              0000  PORTF

ANSB                 067E              FFFF  TRISF                                             06C6     FFFF

IOCPB                0680              0000  PORTF                                             06C8     0000

IOCNB                0682              0000  LATF                                              06CA     0000

IOCFB                0684              0000  ODCF                                              06CC     0000

IOCPUB               0686              0000  IOCPF                                             06D0     0000

IOCPDB               0688              0000  IOCNF                                             06D2     0000

PORTC                                        IOCFF                                             06D4     0000

TRISC                068A              FFFF  IOCPUF                                            06D6     0000

PORTC                068C              0000  IOCPDF                                            06D8     0000

LATC                 068E              0000  PORTG

ODCC                 0690              0000  TRISG                                             06DA     FFFF

ANSC                 0692              FFFF  PORTG                                             06DC     0000

IOCPC                0694              0000  LATG                                              06DE     0000

IOCNC                0696              0000  ODCG                                              06E0     0000

IOCFC                0698              0000  ANSG                                              06E2     FFFF

IOCPUC               069A              0000  IOCPG                                             06E4     0000

IOCPDC               069C              0000  IOCNG                                             06E6     0000

PORTD                                        IOCFG                                             06E8     0000

TRISD                069E              FFFF  IOCPUG                                            06EA     0000

PORTD                06A0              0000  IOCPDG                                            06EC     0000

LATD                 06A2              0000

ODCD                 06A4              0000

Legend:    — = unimplemented, read as ‘0’; x = undefined. Reset values are shown in hexadecimal.

Note   1:  PORTA and all associated bits are unimplemented in 64-pin devices and read as ‘0’.

DS30010074F-page 70                                              2015-2018                             Microchip Technology  Inc.
                                                 PIC24FJ1024GA610/GB610                                     FAMILY

TABLE 4-11:     SFR MAP: 0700h BLOCK

     File Name  Address                                All Resets  File Name               Address          All Resets

A/D                                                                PERIPHERAL PIN          SELECT

ADC1BUF0        0712                                   xxxx        RPINR0                          0790     3F3F

ADC1BUF1        0714                                   xxxx        RPINR1                          0792     3F3F

ADC1BUF2        0716                                   xxxx        RPINR2                          0794     3F3F

ADC1BUF3        0718                                   xxxx        RPINR3                          0796     3F3F

ADC1BUF4        071A                                   xxxx        RPINR4                          0798     3F3F

ADC1BUF5        071C                                   xxxx        RPINR5                          079A     3F3F

ADC1BUF6        071E                                   xxxx        RPINR6                          079C     3F3F

ADC1BUF7        0720                                   xxxx        RPINR7                          079E     3F3F

ADC1BUF8        0722                                   xxxx        RPINR8                          07A0     003F

ADC1BUF9        0724                                   xxxx        RPINR11                         07A6     3F3F

ADC1BUF10       0726                                   xxxx        RPINR12                         07A8     3F3F

ADC1BUF11       0728                                   xxxx        RPINR14                         07AC     3F3F

ADC1BUF12       072A                                   xxxx        RPINR15                         07AE     003F

ADC1BUF13       072C                                   xxxx        RPINR17                         07B2     3F00

ADC1BUF14       072E                                   xxxx        RPINR18                         07B4     3F3F

ADC1BUF15       0730                                   xxxx        RPINR19                         07B6     3F3F

ADC1BUF16       0732                                   xxxx        RPINR20                         07B8     3F3F

ADC1BUF17       0734                                   xxxx        RPINR21                         07BA     3F3F

ADC1BUF18       0736                                   xxxx        RPINR22                         07BC     3F3F

ADC1BUF19       0738                                   xxxx        RPINR23                         07BE     3F3F

ADC1BUF20       073A                                   xxxx        RPINR25                         07C2     3F3F

ADC1BUF21       073C                                   xxxx        RPINR27                         07C6     3F3F

ADC1BUF22       073E                                   xxxx        RPINR28                         07C8     3F3F

ADC1BUF23       0740                                   xxxx        RPINR29                         07CA     003F

ADC1BUF24       0742                                   xxxx        RPOR0                           07D4     0000

ADC1BUF25       0744                                   xxxx        RPOR1                           07D6     0000

AD1CON1         0746                                   0000        RPOR2                           07D8     0000

AD1CON2         0748                                   0000        RPOR3                           07DA     0000

AD1CON3         074A                                   0000        RPOR4                           07DC     0000

AD1CHS          074C                                   0000        RPOR5                           07DE     0000

AD1CSSH         074E                                   0000        RPOR6                           07E0     0000

AD1CSSL         0750                                   0000        RPOR7                           07E2     0000

AD1CON4         0752                                   0000        RPOR8                           07E4     0000

AD1CON5         0754                                   0000        RPOR9                           07E6     0000

AD1CHITH        0756                                   0000        RPOR10                          07E8     0000

AD1CHITL        0758                                   0000        RPOR11                          07EA     0000

AD1CTMENH       075A                                   0000        RPOR12                          07EC     0000

AD1CTMENL       075C                                   0000        RPOR13                          07EE     0000

AD1RESDMA       075E                                   0000        RPOR14                          07F0     0000

NVM                                                                RPOR15                          07F2     0000

NVMCON          0760                                   0000

NVMADR          0762                                   xxxx

NVMADRU         0764                                   00xx

NVMKEY          0766                                   0000

Legend:   —=    unimplemented, read    as  ‘0’;  x  =  undefined.  Reset values are shown  in hexadecimal.

 2015-2018 Microchip Technology Inc.                                                                       DS30010074F-page 71
PIC24FJ1024GA610/GB610                                                           FAMILY

4.2.5            EXTENDED DATA SPACE (EDS)                                            The data addressing range of the PIC24FJ1024GA610/

The    Extended       Data       Space     (EDS)    allows     PIC24F                 GB610 family devices depends on the version of the

devices to address a much larger range of data than                                   Enhanced Parallel Master Port implemented on a partic-

would     otherwise     be   possible      with  a    16-bit   address                ular device; this is, in turn, a function of device pin count.

range.    EDS     includes       any    additional    internal     data               Table 4-12 lists the total memory accessible by each of

memory not directly accessible by the lower 32-Kbyte                                  the devices in this family. For more details on accessing

data address space and any external memory through                                    external memory using EPMP, refer to the “dsPIC33/

EPMP.                                                                                 PIC24 Family Reference Manual”, “Enhanced Parallel

In  addition,     EDS    also    allows       read    access   to      the            Master Port (EPMP)” (DS39730).

program memory space. This feature is called Program                                  .

Space     Visibility  (PSV)      and  is   discussed       in  detail  in             TABLE 4-12:        TOTAL ACCESSIBLE DATA

Section 4.3.3 “Reading Data from Program Memory                                                          MEMORY

Using EDS”.                                                                                                       Internal        External RAM

Figure 4-4 displays the entire EDS space. The EDS is                                             Family           RAM             Access Using

organized as pages, called EDS pages, with one page                                                                               EPMP

equal to the size of the EDS window (32 Kbytes). A par-                                  PIC24FJXXXGX610          32K             Up to 16 Mbytes

ticular EDS page is selected through the Data Space                                      PIC24FJXXXGX606          32K             Up to 64K

Read Page register (DSRPAG) or the Data Space Write

Page register (DSWPAG). For PSV, only the DSRPAG

register  is     used.  The      combination      of  the      DSRPAG                    Note:    Accessing Page 0 in the EDS window will

register value and the 16-bit wide data address forms a                                           generate an address error trap as Page 0

24-bit Effective Address (EA).                                                                    is the base data memory (data locations,

                                                                                                  0800h to 7FFFh, in the lower Data Space).

FIGURE 4-4:                      EXTENDED DATA SPACE

        Special   0000h

       Function
       Registers
                  0800h

        Internal

          Data

        Memory

        Space

        (up to

     30 Kbytes)

                                                                                 EDS Pages

                  8000h          008000h          018000h          FF8000h               000000h         7F8000h  000001h         7F8001h

       32-Kbyte                  Internal           External           External          Program         Program  Program         Program

          EDS                    Data               Memory             Memory            Space           Space    Space           Space

        Window                   Memory             Access             Access            Access          Access   Access          Access

                                 Space              Using              Using             (Lower          (Lower   (Upper          (Upper

                                 2 Kbytes         EPMP(1)          EPMP(1)               Word)           Word)    Word)           Word)

                  FFFEh          008800h          01FFFEh          FFFFFEh               007FFEh         7FFFFEh  007FFFh         7FFFFFh

                                 DSxPAG           DSxPAG           DSxPAG                DSRPAG          DSRPAG   DSRPAG          DSRPAG
                                 = 001h             = 002h             = 1FFh            = 200h          = 2FFh   = 300h          = 3FFh

                                                    EPMP Memory Space(1)                                 Program Memory

     Note 1:      The range  of  addressable  memory available is dependent on   the  device pin count  and EPMP implementation.

DS30010074F-page 72                                                                                       2015-2018 Microchip Technology Inc.
                                                        PIC24FJ1024GA610/GB610 FAMILY

4.2.5.1       Data Read from EDS                                                  Example 4-1         shows     how  to  read     a  byte,  word  and

In order to read the data from the EDS space, first, an                           double word from EDS.

Address Pointer is set up by loading the required EDS                                  Note:         All read operations from EDS space have

page number into the DSRPAG register and assigning                                                   an   overhead   of  one      instruction  cycle.

the offset address to one of the W registers. Once the                                               Therefore, a minimum of two instruction

above assignment is done, the EDS window is enabled                                                  cycles are required to complete an EDS

by  setting  bit   15  of  the     Working         register  which     is                            read. For EDS reads under the REPEAT

assigned with the offset address; then, the contents of                                              instruction;  the  first  two   accesses  take

the pointed EDS location can be read.                                                                three  cycles       and      the  subsequent

Figure 4-5 illustrates how the EDS space address is                                                  accesses take one cycle.

generated for read operations.

When the Most Significant bit (MSb) of EA is ‘1’ and

DSRPAG<9> = 0, the lower 9 bits of DSRPAG are con-

catenated to the lower 15 bits of EA to form a 24-bit

EDS space address for read operations.

FIGURE 4-5:                EDS ADDRESS GENERATION                           FOR READ OPERATIONS

                                           Select            1                             Wn

                       9     8                               0

                                   DSRPAG Reg

                                           9 Bits                                       15 Bits

                                                                       24-Bit EA

                             0  =  Extended SRAM      and  EPMP                                             Wn<0> is Byte Select

EXAMPLE 4-1:               EDS READ CODE IN ASSEMBLY

;   Set  the  EDS      page     from   where       the   data     to   be   read

    mov                #0x0002,        w0

    mov                w0,      DSRPAG             ;page     2  is    selected    for   read

    mov                #0x0800,        w1          ;select      the    location   (0x800)        to   be  read

    bset               w1,      #15                ;set    the    MSB  of   the   base     address,       enable   EDS  mode

;Read    a   byte  from      the     selected         location

    mov.b              [w1++],         w2          ;read     Low    byte

    mov.b              [w1++],         w3          ;read     High     byte

;Read    a   word  from      the     selected         location

    mov                [w1],       w2              ;

;Read    Double    -   word     from       the  selected        location

    mov.d              [w1],       w2              ;two    word     read,   stored     in  w2    and  w3

 2015-2018 Microchip Technology Inc.                                                                                          DS30010074F-page 73
PIC24FJ1024GA610/GB610                                                                     FAMILY

4.2.5.2        Data Write into EDS                                                         0x8000. While developing code in assembly, care must

In order to write data to EDS, such as in EDS reads, an                                    be taken to update the Data Space Page registers when

Address Pointer is set up by loading the required EDS                                      an Address Pointer crosses the page boundary. The ‘C’

page number into the DSWPAG register and assigning                                         compiler keeps track of the addressing, and increments

the offset address to one of the W registers. Once the                                     or  decrements        the  Page    registers    accordingly,  while

above assignment is done, then the EDS window is                                           accessing contiguous data memory locations.

enabled    by  setting          bit  15   of  the      Working           register,             Note 1:      All write operations to EDS are executed

assigned      with  the  offset      address          and    the     accessed                               in a single cycle.

location can be written.                                                                                    Use of Read/Modify/Write operation on

Figure 4-2 illustrates how the EDS address is generated                                                 2:

for write operations.                                                                                       any     EDS     location  under    a     REPEAT

                                                                                                            instruction is not supported. For example,

When     the  MSbs       of     EA   are    ‘1’,     the  lower       9  bits   of                          BCLR, BSW, BTG, RLC       f, RLNC     f, RRC  f,

DSWPAG are concatenated to the lower 15 bits of EA                                                          RRNC      f, ADD  f, SUB  f, SUBR     f, AND  f,

to  form  a   24-bit  EDS            address      for     write   operations.                               IOR     f, XOR    f, ASR  f, ASL   f.

Example 4-2    shows            how  to   write        a  byte,   word      and                         3:  Use       the     DSRPAG       register      while

double word to EDS.                                                                                         performing Read/Modify/Write operations.

The Data Space Page registers (DSRPAG/DSWPAG)

do  not   update    automatically             while       crossing       a  page

boundary when the rollover happens from 0xFFFF to

FIGURE 4-6:                     EDS ADDRESS GENERATION                                     FOR WRITE OPERATIONS

                                                     Select           1                           Wn

                             8                                        0

                                         DSWPAG Reg

                                              9 Bits                                           15 Bits

                                                                                24-Bit EA

                                                                                                                    Wn<0> is Byte  Select

EXAMPLE 4-2:                    EDS WRITE CODE IN ASSEMBLY

;   Set   the  EDS    page           where    the      data      to   be    written

      mov           #0x0002,         w0

      mov           w0,  DSWPAG                   ;page      2    is     selected    for   write

      mov           #0x0800,         w1           ;select         the    location     (0x800)     to  be    written

      bset          w1,  #15                      ;set       the  MSB       of  the  base  address,         enable    EDS  mode

;Write     a   byte   to        the  selected             location

      mov           #0x00A5,         w2

      mov           #0x003C,         w3

      mov.b         w2,  [w1++]                   ;write        Low      byte

      mov.b         w3,  [w1++]                   ;write        High     byte

;Write     a   word   to        the  selected             location

      mov           #0x1234,         w2           ;

      mov           w2,  [w1]                     ;

;Write     a   Double        -  word      to  the         selected          location

      mov           #0x1122,         w2

      mov           #0x4455,         w3

      mov.d         w2,  [w1]                     ;2   EDS      writes

DS30010074F-page 74                                                                                                  2015-2018 Microchip Technology Inc.
                                                   PIC24FJ1024GA610/GB610 FAMILY

TABLE 4-13:             EDS MEMORY ADDRESS WITH DIFFERENT PAGES AND ADDRESSES

        DSRPAG                       DSWPAG               Source/Destination

(Data Space Read                  (Data Space Write           Address while                                            24-Bit EA                Comment

        Register)                    Register)                 Indirect                                Pointing to EDS

                                                               Addressing

              x(1)                       x(1)                 0000h to 1FFFh                                           000000h to            Near Data Space(2)

                                                                                                                       001FFFh

                                                              2000h to 7FFFh                                           002000h to

                                                                                                                       007FFFh

        001h                             001h                                                                          008000h to

                                                                                                                       00FFFEh

        002h                             002h                                                                          010000h to

                                                                                                                       017FFEh

        003h                             003h                                                                          018000h to

              •                          •                                                                             0187FEh               EPMP Memory Space

              •                          •                    8000h to FFFFh                                                 •

              •                          •                                                                                   •

              •                          •                                                                                   •

              •                          •                                                                                   •

        1FFh                             1FFh                                                                          FF8000h to

                                                                                                                       FFFFFEh

        000h                             000h                                                          Invalid Address                       Address Error Trap(3)

Note    1:       If the source/destination address is below 8000h, the DSRPAG and DSWPAG registers are not considered.

        2:       This Data Space can also be accessed by Direct Addressing.

        3:       When the source/destination address is above 8000h and DSRPAG/DSWPAG are ‘0’, an address error

                 trap will occur.

4.2.6            SOFTWARE STACK                                               desirable to cause a stack error trap when the stack

Apart   from     its  use    as   a  Working   register,  the  W15            grows beyond address 2000h in RAM, initialize the

register in PIC24F devices is also used as a Software                         SPLIM with the value, 1FFEh.

Stack Pointer (SSP). The pointer always points to the                         Similarly, a Stack Pointer underflow (stack error) trap is

first available free word and grows from lower to higher                      generated when the Stack Pointer address is found to

addresses. It pre-decrements for stack pops and post-                         be  less                                 than  0800h.  This    prevents  the  stack   from

increments for stack pushes, as shown in Figure 4-7.                          interfering with the SFR space.

Note that for a PC push during any CALL instruction,                          A write to the SPLIM register should not be immediately

the MSB of the PC is zero-extended before the push,                           followed by an indirect read operation using W15.

ensuring that the MSB is always clear.

Note:            A PC push during exception processing                        FIGURE 4-7:                                            CALL STACK FRAME

                 will concatenate the SRL register to the                     0000h                                    15                    0

                 MSB of the PC prior to the push.

The Stack Pointer Limit Value register (SPLIM), associ-

ated    with  the     Stack  Pointer,    sets  an  upper  address                 Stack Grows Towards  Higher Address

boundary for the stack. SPLIM is uninitialized at Reset.

As  is  the   case      for  the  Stack  Pointer,  SPLIM<0>    is                                                               PC<15:0>        W15 (before CALL)

forced  to    ‘0’   as  all  stack   operations    must   be   word-                                                                 PC<22:16>

aligned. Whenever an EA is generated using W15 as a                                                                    000000000

source or destination pointer, the resulting address is                                                                              W15 (after CALL)

compared with the value in SPLIM. If the contents of                                                                                            POP    :    [--W15]

the Stack Pointer (W15) and the SPLIM register are                                                                                              PUSH :      [W15++]

equal, and a push operation is performed, a stack error

trap will not occur. The stack error trap will occur on a

subsequent push operation. Thus, for example, if it is

 2015-2018 Microchip Technology Inc.                                                                                                           DS30010074F-page 75
PIC24FJ1024GA610/GB610 FAMILY

4.3          Interfacing Program and Data                             4.3.1       ADDRESSING PROGRAM SPACE

             Memory Spaces                                            Since the address ranges for the data and program

The PIC24F architecture uses a 24-bit wide program                    spaces are 16 and 24 bits, respectively, a method is

space and 16-bit wide Data Space. The architecture is                 needed to create a 23-bit or 24-bit program address

also a modified Harvard scheme, meaning that data                     from 16-bit data registers. The solution depends on the

can also be present in the program space. To use this                 interface method to be used.

data successfully, it must be accessed in a way that                  For  table  operations,    the  8-bit  Table  Memory     Page

preserves the alignment of information in both spaces.                Address register (TBLPAG) is used to define a 32K word

Aside from normal execution, the PIC24F architecture                  region within the program space. This is concatenated

provides two methods by which program space can be                    with a 16-bit EA to arrive at a full 24-bit program space

accessed during operation:                                            address. In this format, the MSBs of TBLPAG are used

•  Using table instructions to access individual bytes                to   determine  if  the  operation     occurs  in  the      user

   or words anywhere in the program space                             memory (TBLPAG<7> = 0) or the configuration memory

                                                                      (TBLPAG<7> = 1).

•  Remapping a portion of the program space into                      For remapping operations, the 10-bit Extended Data

   the Data Space (Program Space Visibility)                          Space Read register (DSRPAG) is used to define a

Table instructions allow an application to read or write              16K word page in the program space. When the Most

to small areas of the program memory. This makes the                  Significant bit (MSb) of the EA is ‘1’, and the MSb (bit 9)

method ideal for accessing data tables that need to be                of DSRPAG is ‘1’, the lower 8 bits of DSRPAG are

updated from time to time. It also allows access to all               concatenated with the lower 15 bits of the EA to form a

bytes of the program word. The remapping method                       23-bit program space address. The DSRPAG<8> bit

allows an application to access a large block of data on              decides whether the lower word (when bit is ‘0’) or the

a read-only basis, which is ideal for look-ups from a                 higher word (when bit is ‘1’) of program memory is

large table of static data. It can only access the least              mapped.     Unlike  table  operations,  this   strictly  limits

significant word of the program word.                                 remapping operations to the user memory area.

                                                                      Table 4-14 and Figure 4-8 show how the program EA is

                                                                      created for table operations and remapping accesses

                                                                      from the data EA. Here, P<23:0> refers to a program

                                                                      space word, whereas D<15:0> refers to a Data Space

                                                                      word.

TABLE 4-14:          PROGRAM SPACE ADDRESS CONSTRUCTION

                                   Access                                    Program Space Address

         Access Type                   Space

                                                          <23>        <22:16>             <15>        <14:1>              <0>

   Instruction Access        User                         0                           PC<22:1>                                 0

   (Code Execution)                                                   0xx    xxxx     xxxx  xxxx      xxxx   xxx0

   TBLRD/TBLWT               User                            TBLPAG<7:0>                              Data EA<15:0>

   (Byte/Word Read/Write)                                       0xxx  xxxx                     xxxx   xxxx    xxxx   xxxx

                             Configuration                   TBLPAG<7:0>                              Data EA<15:0>

                                                                1xxx  xxxx                     xxxx   xxxx    xxxx   xxxx

   Program Space Visibility  User                         0               DSRPAG<7:0>(2)              Data EA<14:0>(1)

   (Block Remap/Read)                                     0                xxxx   xxxx                xxx    xxxx   xxxx  xxxx

   Note  1:  Data EA<15> is always ‘1’ in this case, but is not used in calculating the program space address. Bit 15 of

             the address is DSRPAG<0>.

         2:  DSRPAG<9> is always ‘1’ in this case. DSRPAG<8> decides whether the lower word or higher word of

             program memory is read. When DSRPAG<8> is ‘0’, the lower word is read, and when it is ‘1’, the higher

             word is read.

DS30010074F-page 76                                                                        2015-2018 Microchip Technology Inc.
                                                 PIC24FJ1024GA610/GB610 FAMILY

FIGURE  4-8:         DATA    ACCESS FROM             PROGRAM         SPACE ADDRESS GENERATION

        Program Counter                       0                      Program Counter              0

                                                                        23 Bits

                                                                                      EA          1/0

        Table Operations(2)                   1/0    TBLPAG

                                                     8 Bits                           16 Bits

                                                                     24 Bits

                                                             Select                   EA          1/0

                                                                     1

        Program Space  Visibility(1)          0      DSRPAG<7:0>

        (Remapping)                    1-Bit

                                                     8 Bits                           15 Bits

                                                                        23 Bits

                             User/Configuration                                                   Byte Select

                                       Space Select

Note    1:    DSRPAG<8> acts as word select. DSRPAG<9> should always be ‘1’ to map program memory to data memory.

        2:    The instructions, TBLRDH/TBLWTH/TBLRDL/TBLWTL, decide if the higher or lower word of program memory is

              accessed. TBLRDH/TBLWTH instructions access the higher word and TBLRDL/TBLWTL instructions access the

              lower word. Table Read operations are permitted in the configuration memory space.

 2015-2018 Microchip Technology Inc.                                                             DS30010074F-page 77
PIC24FJ1024GA610/GB610 FAMILY

4.3.2          DATA ACCESS FROM PROGRAM                                  2.     TBLRDH (Table Read High): In Word mode, it

               MEMORY USING TABLE                                               maps the entire upper word of a program address

               INSTRUCTIONS                                                     (P<23:16>)      to  a     data   address.          Note  that

The  TBLRDL     and     TBLWTL    instructions    offer  a  direct              D<15:8>, the ‘phantom’ byte, will always be ‘0’.

method     of  reading  or  writing   the  lower  word      of  any             In Byte mode, it maps the upper or lower byte of

address within the program space without going through                          the  program        word    to   D<7:0>        of  the   data

Data Space. The TBLRDH and TBLWTH instructions are                              address,    as      above.      Note  that  the    data  will

the only method to read or write the upper 8 bits of a                          always be ‘0’ when the upper ‘phantom’ byte is

program space word as data.                                                     selected (byte select = 1).

The PC is incremented by two for each successive                         In a similar fashion, two table instructions, TBLWTH

24-bit  program     word.   This  allows   program       memory          and    TBLWTL,     are     used    to  write  individual  bytes       or

addresses to directly map to Data Space addresses.                       words to a program space address. The details of

Program memory can thus be regarded as two, 16-bit                       their operation are described in Section 6.0 “Flash

word-wide address spaces, residing side by side, each                    Program Memory”.

with the same address range. TBLRDL and TBLWTL                           For all table operations, the area of program memory

access the space which contains the least significant                    space   to  be     accessed        is  determined     by  the   Table

data word, and TBLRDH and TBLWTH access the space                        Memory Page Address register (TBLPAG). TBLPAG

which contains the upper data byte.                                      covers      the    entire  program      memory        space     of   the

Two table instructions are provided to move byte or                      device, including user and configuration spaces. When

word-sized (16-bit) data to and from program space.                      TBLPAG<7> = 0, the table page is located in the user

Both function as either byte or word operations.                         memory space. When TBLPAG<7> = 1, the page is

1.   TBLRDL (Table Read Low): In Word mode, it                           located in configuration space.

     maps      the  lower   word  of  the  program       space               Note:        Only Table Read operations will execute

     location (P<15:0>) to a data address (D<15:0>).                                      in the configuration memory space where

     In Byte mode, either the upper or lower byte of                                      Device    IDs     are  located.      Table     Write

     the lower program word is mapped to the lower                                        operations are not allowed.

     byte  of   a   data   address.   The  upper     byte       is

     selected when byte select is ‘1’; the lower byte

     is selected when it is ‘0’.

FIGURE 4-9:                 ACCESSING      PROGRAM MEMORY WITH TABLE INSTRUCTIONS

                                                                Program  Space

        TBLPAG                                                                                                   Data EA<15:0>

        02

                           23         15          0      000000h                            23            16                8            0

                                                                                00000000

                                                         020000h                00000000

                                                                                00000000

                                                         030000h                00000000

                                                                             ‘Phantom’ Byte

                                                                         TBLRDH.B    (Wn<0> = 0)

                                                                         TBLRDL.B    (Wn<0> = 1)

                                                                         TBLRDL.B    (Wn<0> = 0)

                                                                         TBLRDL.W

                                                                     The address for the table operation is determined by      the data EA

                                                                     within the page defined by the TBLPAG register.

                                                         800000h     Only read operations are shown; write operations are      also valid in

                                                                     the user memory area.

DS30010074F-page 78                                                                                  2015-2018 Microchip      Technology     Inc.
                                                  PIC24FJ1024GA610/GB610 FAMILY

4.3.3         READING DATA FROM PROGRAM                                    Table 4-15         provides    the    corresponding       23-bit   EDS

              MEMORY USING EDS                                             address       for  program        memory      with  EDS     page   and

The upper 32 Kbytes of Data Space may optionally be                        source addresses.

mapped into any 16K word page of the program space.                        For operations that use PSV and are executed outside a

This provides transparent access of stored constant                        REPEAT loop, the MOV and MOV.D instructions will require

data   from  the   Data    Space    without  the  need     to  use         one instruction cycle in addition to the specified execution

special instructions (i.e., TBLRDL/H).                                     time.    All  other   instructions      will  require  two  instruction

Program space access through the Data Space occurs                         cycles in addition to the specified execution time.

when the MSb of EA is ‘1’ and the DSRPAG<9> is also                        For operations that use PSV, which are executed inside

‘1’. The lower 8 bits of DSRPAG are concatenated to                        a   REPEAT         loop,  there   will  be    some     instances   that

the Wn<14:0> bits to form a 23-bit EA to access pro-                       require       two  instruction        cycles  in    addition   to  the

gram memory. The DSRPAG<8> decides which word                              specified execution time of the instruction:

should be addressed; when the bit is ‘0’, the lower                        •   Execution in the first iteration

word, and when ‘1’, the upper word of the program                          •   Execution in the last iteration

memory is accessed.                                                        •   Execution prior to exiting the loop due to an

The entire program memory is divided into 512 EDS                              interrupt

pages, from 200h to 3FFh, each consisting of 16K words                     •   Execution upon re-entering the loop after an

of data. Pages, 200h to 2FFh, correspond to the lower                          interrupt is serviced

words   of   the  program     memory,  while  300h     to  3FFh            Any other iteration of the REPEAT loop will allow the

correspond to the upper words of the program memory.                       instruction accessing data, using PSV, to execute in a

Using this EDS technique, the entire program memory                        single cycle.

can be accessed. Previously, the access to the upper

word of the program memory was not supported.

TABLE 4-15:             EDS PROGRAM ADDRESS WITH DIFFERENT PAGES AND ADDRESSES

             DSRPAG                  Source Address while                 23-Bit EA Pointing                             Comment

(Data Space Read Register)             Indirect Addressing                     to EDS

              200h                                                       000000h to 007FFEh              Lower words of 4M program

                  •                                                                 •                    instructions; (8 Mbytes) for

                  •                                                                 •                    read operations only.

                  •                                                                 •

              2FFh                                                   7F8000h to 7FFFFEh

              300h                        8000h to FFFFh                 000001h to 007FFFh              Upper words of 4M program

                  •                                                                 •                    instructions (4 Mbytes remaining;

                  •                                                                 •                    4 Mbytes are phantom bytes) for

                  •                                                                 •                    read operations only.

              3FFh                                                       7F8001h to 7FFFFFh

              000h                                                        Invalid Address                Address error trap.(1)

Note    1:    When the     source/destination address is above       8000h and DSRPAG/DSWPAG is ‘0’, an address error trap

              will occur.

EXAMPLE 4-3:                  EDS READ CODE FROM PROGRAM MEMORY IN ASSEMBLY

;  Set  the   EDS       page  from   where   the  data     to  be   read

       mov        #0x0202,     w0

       mov        w0,   DSRPAG                          ;page  0x202,     consisting      lower          words,  is      selected    for  read

       mov        #0x000A,     w1                       ;select     the   location       (0x0A)      to  be  read

       bset       w1,   #15                             ;set   the   MSB  of   the  base      address,       enable      EDS   mode

;Read   a    byte    from     the  selected  location

       mov.b      [w1++],      w2                       ;read  Low   byte

       mov.b      [w1++],      w3                       ;read  High      byte

;Read   a    word    from     the  selected  location

       mov        [w1],    w2                           ;

;Read   Double       -  word   from  the     selected   location

       mov.d      [w1],    w2                           ;two   word  read,     stored     in    w2   and     w3

 2015-2018 Microchip Technology Inc.                                                                                    DS30010074F-page 79
PIC24FJ1024GA610/GB610                                 FAMILY

FIGURE 4-10:            PROGRAM SPACE      VISIBILITY  OPERATION TO ACCESS LOWER WORD

When DSRPAG<9:8> = 10 and EA<15> = 1

                            Program Space              Data Space

DSRPAG                  23  15             0  000000h              0000h

202h                                                                      Data EA<14:0>

                                              010000h

                                              017FFEh

The data in the page

designated by DSRPAG

is mapped into the

upper half of the data

memory space....                                                   8000h

                                                       EDS Window

                                                                          ...while the lower

                                                                          15 bits of the EA

                                                                          specify an exact

                                                                   FFFFh  address within the

                                                                          EDS area. This corre-

                                                                          sponds exactly to the

                                                                          same lower 15 bits of

                                              7FFFFEh                     the actual program

                                                                          space address.

FIGURE 4-11:            PROGRAM SPACE VISIBILITY       OPERATION TO ACCESS UPPER WORD

When DSRPAG<9:8> = 11 and EA<15> = 1

                            Program Space              Data Space

DSRPAG                  23  15             0  000000h              0000h

302h                                                                      Data EA<14:0>

                                              010001h

                                              017FFFh

The data in the page

designated by DSRPAG

is mapped into the

upper half of the data

memory space....                                                   8000h

                                                       EDS Window

                                                                          ...while the lower

                                                                          15 bits of the EA

                                                                          specify an exact

                                                                   FFFFh  address within the

                                                                          EDS area. This corre-

                                                                          sponds exactly to the

                                                                          same lower 15 bits of

                                              7FFFFEh                     the actual program

                                                                          space address.

DS30010074F-page 80                                             2015-2018 Microchip Technology Inc.
                                                    PIC24FJ1024GA610/GB610 FAMILY

5.0        DIRECT MEMORY ACCESS                                            The controller also monitors CPU instruction process-

           CONTROLLER (DMA)                                                ing directly, allowing it to be aware of when the CPU

                                                                           requires access to peripherals on the DMA bus and

   Note:       This data sheet summarizes the features                     automatically       relinquishing   control  to  the  CPU   as

               of the PIC24FJ1024GA610/GB610 family                        needed.   This      increases  the  effective    bandwidth  for

               of  devices.  It    is  not  intended     to   be    a      handling      data  without    DMA  operations   causing    a

               comprehensive reference source. To com-                     processor stall. This makes the controller essentially

               plement the information in this data sheet,                 transparent to the user.

               refer to the “dsPIC33/PIC24 Family Refer-                   The DMA Controller has these features:

               ence Manual”, “Direct Memory Access                         •  Eight Multiple Independent and Independently

               Controller    (DMA)”        (DS39742),    which      is        Programmable Channels

               available     from  the     Microchip     web  site         •  Concurrent Operation with the CPU (no DMA

               (www.microchip.com).         The     information     in        caused Wait states)

               this data sheet supersedes the information                  •  DMA Bus Arbitration

               in the FRM.

The Direct Memory Access Controller (DMA) is designed                      •  Five Programmable Address modes

to service high-throughput data peripherals operating on                   •  Four Programmable Transfer modes

the SFR bus, allowing them to access data memory                           •  Four Flexible Internal Data Transfer modes

directly and alleviating the need for CPU intensive man-                   •  Byte or Word Support for Data Transfer

agement. By allowing these data intensive peripherals to                   •  16-Bit Source and Destination Address Register

share their own data path, the main data bus is also                          for Each Channel, Dynamically Updated and

deloaded, resulting in additional power savings.                              Reloadable

The DMA Controller functions both as a peripheral and                      •  16-Bit Transaction Count Register, Dynamically

a  direct  extension     of  the   CPU.     It  is  located  on   the         Updated and Reloadable

microcontroller data bus between the CPU and DMA-                          •  Upper and Lower Address Limit Registers

enabled peripherals, with direct access to SRAM. This                      •  Counter Half-Full Level Interrupt

partitions the SFR bus into two buses, allowing the                        •  Software Triggered Transfer

DMA Controller access to the DMA capable peripherals                       •  Null Write mode for Symmetric Buffer Operations

located    on  the  new      DMA     SFR    bus.    The  controller

serves     as  a   master    device    on   the     DMA  SFR     bus,      A simplified block diagram of the DMA Controller is

controlling data flow from DMA capable peripherals.                        shown in Figure 5-1.

FIGURE 5-1:                  DMA FUNCTIONAL BLOCK DIAGRAM

                                                 CPU Execution Monitoring

           To I/O Ports                                                                                        To DMA-Enabled

        and Peripherals                                                                                          Peripherals

                                                                        DMACON

                                                             Control    DMAH

                                                             Logic      DMAL

                                                                        DMABUF

     Data

     Bus

                                       DMACH0            DMACH1               DMACH6           DMACH7

                                       DMAINT0           DMAINT1              DMAINT6          DMAINT7

                                       DMASRC0           DMASRC1              DMASRC6          DMASRC7

                                       DMADST0           DMADST1              DMADST6          DMADST7

                                       DMACNT0           DMACNT1              DMACNT6          DMACNT7

                                       Channel 0         Channel 1            Channel 6        Channel 7

           Data RAM                                                                                              Data RAM

                                                                                                               Address Generation

 2015-2018 Microchip Technology Inc.                                                                            DS30010074F-page 81
PIC24FJ1024GA610/GB610                                               FAMILY

5.1        Summary of DMA Operations                                 Since the source and destination addresses for any

The DMA Controller is capable of moving data between                 transaction can be programmed independently of the

addresses according to a number of different parameters.             Trigger source, the DMA Controller can use any Trigger

Each of these parameters can be independently config-                to perform an operation on any peripheral. This also

ured for any transaction; in addition, any or all of the             allows DMA channels to be cascaded to perform more

DMA channels can independently perform a different                   complex transfer operations.

transaction  at    the      same    time.    Transactions     are    5.1.4         TRANSFER MODE

classified by these parameters:                                      The    DMA    Controller  supports  four  types   of   data

•  Source and destination (SFRs and data RAM)                        transfers, based on the volume of data to be moved for

•  Data size (byte or word)                                          each Trigger.

•  Trigger source                                                    •  One-Shot: A single transaction occurs for each

•  Transfer mode (One-Shot, Repeated or                                 Trigger.

   Continuous)                                                       •  Continuous: A series of back-to-back transactions

•  Addressing modes (fixed address or address                           occur for each Trigger; the number of transactions

   blocks, with or without address increment/                           is determined by the DMACNTn transaction

   decrement)                                                           counter.

In addition, the DMA Controller provides channel priority            •  Repeated One-Shot: A single transaction is

arbitration for all channels.                                           performed repeatedly, once per Trigger, until the

                                                                        DMA channel is disabled.

5.1.1        SOURCE AND DESTINATION                                  •  Repeated Continuous: A series of transactions

Using the DMA Controller, data may be moved between                     are performed repeatedly, one cycle per Trigger,

any two addresses in the Data Space. The SFR space                      until the DMA channel is disabled.

(0000h to 07FFh), or the data RAM space (0800h to                    All transfer modes allow the option to have the source

FFFFh), can serve as either the source or the destina-               and destination addresses, and counter value automat-

tion. Data can be moved between these areas in either                ically reloaded after the completion of a transaction.

direction or between addresses in either area. The four              Repeated mode transfers do this automatically.

different combinations are shown in Figure 5-2.

If it is necessary to protect areas of data RAM, the DMA             5.1.5         ADDRESSING MODES

Controller allows the user to set upper and lower address            The DMA Controller also supports transfers between

boundaries for operations in the Data Space above the                single addresses or address ranges. The four basic

SFR space. The boundaries are set by the DMAH and                    options are:

DMAL Limit registers. If a DMA channel attempts an                   •  Fixed-to-Fixed: Between two constant addresses

operation    outside    of  the     address      boundaries,  the    •  Fixed-to-Block: From a constant source address

transaction is terminated and an interrupt is generated.                to a range of destination addresses

5.1.2        DATA SIZE                                               •  Block-to-Fixed: From a range of source addresses

The DMA Controller can handle both 8-bit and 16-bit                     to a single, constant destination address

transactions. Size is user-selectable using the SIZE bit             •  Block-to-Block: From a range to source

(DMACHn<1>). By default, each channel is configured                     addresses to a range of destination addresses

for word-sized transactions. When byte-sized transac-                The option to select auto-increment or auto-decrement

tions  are   chosen,    the    LSb      of  the  source  and/or      of source and/or destination addresses is available for

destination address determines if the data represents                Block Addressing modes.

the upper or lower byte of the data RAM location.

5.1.3        TRIGGER SOURCE

The DMA Controller can use any one of the device’s

interrupt sources to initiate a transaction. The DMA

Trigger  sources   are      listed  in  reverse  order   of   their

natural interrupt priority and are shown in Table 5-1.

DS30010074F-page 82                                                                  2015-2018 Microchip Technology Inc.
                                       PIC24FJ1024GA610/GB610 FAMILY

FIGURE 5-2:  TYPES OF DMA DATA                       TRANSFERS

             Peripheral to Memory                                       Memory to Peripheral

             SFR Area                                                   SFR Area

                                       DMASRCn                                                DMADSTn

                                       07FFh                                                  07FFh

                                       0800h                                                  0800h

             Data RAM                                                   Data RAM

                                       DMAL                                                   DMAL

             DMA RAM Area                                               DMA RAM Area

                                       DMADSTn                                                DMASRCn

                                       DMAH                                                   DMAH

             Peripheral to Peripheral                                   Memory to Memory

             SFR Area                                                   SFR Area

                                       DMASRCn

                                       DMADSTn

                                       07FFh                                                  07FFh

                                       0800h                                                  0800h

             Data RAM                                                   Data RAM

                                       DMAL                             DMA RAM Area          DMAL

             DMA RAM Area

                                                                                              DMASRCn

                                                                                              DMADSTn

                                       DMAH                                                   DMAH

Note:        Relative sizes of memory areas are not  shown  to  scale.

 2015-2018 Microchip Technology Inc.                                                         DS30010074F-page 83
PIC24FJ1024GA610/GB610                                            FAMILY

5.1.6        CHANNEL PRIORITY                                     5.3      Peripheral Module Disable

Each    DMA  channel    functions  independently        of  the   Unlike other peripheral modules, the channels of the

others, but also competes with the others for access to           DMA Controller cannot be individually powered down

the  data  and  DMA   buses.    When      access      collisions  using the Peripheral Module Disable (PMD) registers.

occur,  the  DMA  Controller    arbitrates  between         the   Instead, the channels are controlled as two groups. The

channels using a user-selectable priority scheme. Two             DMA0MD bit (PMD7<4>) selectively controls DMACH0

schemes are available:                                            through  DMACH3.      The     DMA1MD        bit  (PMD7<5>)

•   Round-Robin: When two or more channels                        controls DMACH4 through DMACH7. Setting both bits

    collide, the lower numbered channel receives                  effectively disables the DMA Controller.

    priority on the first collision. On subsequent colli-

    sions, the higher numbered channels each                      5.4      Registers

    receive priority, based on their channel number.              The DMA Controller uses a number of registers to con-

•   Fixed: When two or more channels collide, the                 trol its operation. The number of registers depends on

    lowest numbered channel always receives                       the number of channels implemented for a particular

    priority, regardless of past history; however, any            device.

    channel being actively processed is not available

    for an immediate retrigger. If a higher priority              There    are  always  four    module-level  registers  (one

    channel is continually requesting service, it will be         control and three buffer/address):

    scheduled for service after the next lower priority           •  DMACON: DMA Engine Control Register

    channel with a pending request.                                  (Register 5-1)

5.2        Typical Setup                                          •  DMAH and DMAL: DMA High and Low Address

                                                                     Limit Registers

To set up a DMA channel for a basic data transfer:                •  DMABUF: DMA Data Buffer

1.   Enable the DMA Controller (DMAEN = 1) and                    Each of the DMA channels implements five registers

     select an appropriate channel priority scheme                (two control and three buffer/address):

     by setting or clearing PRSSEL.                               •  DMACHn: DMA Channel n Control Register

2.   Program DMAH and DMAL with the appropriate                      (Register 5-2)

     upper and lower address boundaries for data                  •  DMAINTn: DMA Channel n Interrupt Register

     RAM operations.                                                 (Register 5-3)

3.   Select the DMA channel to be used and disable                •  DMASRCn: DMA Data Source Address Pointer

     its operation (CHEN = 0).                                       for Channel n

4.   Program the appropriate source and destination               •  DMADSTn: DMA Data Destination Source for

     addresses for the transaction into the channel’s                Channel n

     DMASRCn and DMADSTn registers.                               •  DMACNTn: DMA Transaction Counter for

5.   Program the DMACNTn register for the number                     Channel n

     of Triggers per transfer (One-Shot or Continu-               For PIC24FJ1024GA610/GB610 family devices, there

     ous modes) or the number of words (bytes) to be              are a total of 44 registers.

     transferred (Repeated modes).

6.   Set or clear the SIZE bit to select the data size.

7.   Program the TRMODE<1:0> bits to select the

     Data Transfer mode.

8.   Program the SAMODE<1:0> and DAMODE<1:0>

     bits to select the addressing mode.

9.   Enable the DMA channel by setting CHEN.

10.  Enable the Trigger source interrupt.

DS30010074F-page 84                                                                      2015-2018 Microchip Technology Inc.
                                            PIC24FJ1024GA610/GB610 FAMILY

REGISTER 5-1:      DMACON: DMA ENGINE CONTROL REGISTER

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

DMAEN              —                   —    —              —                   —                  —            —

bit 15                                                                                                              bit  8

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

        —          —                   —    —              —                   —                  —   PRSSEL

bit 7                                                                                                               bit  0

Legend:

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

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

bit 15      DMAEN: DMA Module Enable bit

            1=     Enables module

            0=     Disables module and terminates all active DMA operation(s)

bit 14-1    Unimplemented: Read as ‘0’

bit 0       PRSSEL: Channel Priority Scheme Selection bit

            1=     Round-robin scheme

            0=     Fixed priority scheme

 2015-2018 Microchip Technology Inc.                                                                DS30010074F-page 85
PIC24FJ1024GA610/GB610 FAMILY

REGISTER 5-2:        DMACHn: DMA CHANNEL n CONTROL REGISTER

        U-0          U-0         U-0              r-0      U-0                   R/W-0       R/W-0          R/W-0

         —           —           —                —        —                     NULLW  RELOAD(1)    CHREQ(3)

bit 15                                                                                                              bit 8

     R/W-0         R/W-0         R/W-0            R/W-0    R/W-0                 R/W-0       R/W-0          R/W-0

SAMODE1       SAMODE0           DAMODE1           DAMODE0  TRMODE1         TRMODE0             SIZE         CHEN

bit 7                                                                                                               bit 0

Legend:                         r = Reserved bit

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

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

bit  15-13    Unimplemented: Read as ‘0’

bit  12       Reserved: Maintain as ‘0’

bit  11       Unimplemented: Read as ‘0’

bit  10       NULLW: Null Write Mode bit

              1=   A dummy write is initiated to DMASRCn for every write to DMADSTn

              0=   No dummy write is initiated

bit  9        RELOAD: Address and Count Reload bit(1)

              1=   DMASRCn, DMADSTn and DMACNTn registers are reloaded to their previous values upon                the

                   start of the next operation

              0=   DMASRCn, DMADSTn and DMACNTn are not reloaded on the start of the next operation(2)

bit  8        CHREQ: DMA Channel Software Request bit(3)

              1=   A DMA request is initiated by software; automatically cleared upon completion of a DMA transfer

              0=   No DMA request is pending

bit  7-6      SAMODE<1:0>: Source Address Mode Selection bits

              11 = Reserved

              10 = DMASRCn is decremented based on the SIZE bit after a transfer completion

              01 = DMASRCn is incremented based on the SIZE bit after a transfer completion

              00 = DMASRCn remains unchanged after a transfer completion

bit 5-4       DAMODE<1:0>: Destination Address Mode Selection bits

              11 = Reserved

              10 = DMADSTn is decremented based on the SIZE bit after a transfer completion

              01 = DMADSTn is incremented based on the SIZE bit after a transfer completion

              00 = DMADSTn remains unchanged after a transfer completion

bit 3-2       TRMODE<1:0>: Transfer Mode Selection bits

              11 = Repeated Continuous mode

              10 = Continuous mode

              01 = Repeated One-Shot mode

              00 = One-Shot mode

bit 1         SIZE: Data Size Selection bit

              1 = Byte (8-bit)

              0 = Word (16-bit)

bit 0         CHEN: DMA Channel Enable bit

              1 = The corresponding channel is enabled

              0 = The corresponding channel is disabled

Note      1:  Only the original DMACNTn is required to be stored to recover the original DMASRCn and DMADSTn.

          2:  DMASRCn, DMADSTn and DMACNTn are always reloaded in Repeated mode transfers

              (DMACHn<2> = 1), regardless of the state of the RELOAD bit.

          3:  The number of transfers executed while CHREQ is set depends on the configuration of TRMODE<1:0>.

DS30010074F-page 86                                                               2015-2018 Microchip Technology Inc.
                                       PIC24FJ1024GA610/GB610 FAMILY

REGISTER 5-3:      DMAINTn: DMA CHANNEL n INTERRUPT REGISTER

        R-0        R/W-0   R/W-0                 R/W-0         R/W-0               R/W-0          R/W-0          R/W-0

DBUFWF(1)         CHSEL6   CHSEL5                CHSEL4        CHSEL3         CHSEL2              CHSEL1         CHSEL0

bit 15                                                                                                                    bit 8

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

HIGHIF(1,2)  LOWIF(1,2)    DONEIF(1)         HALFIF(1)     OVRUNIF(1)              —              —              HALFEN

bit 7                                                                                                                     bit 0

Legend:

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

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

bit  15      DBUFWF: DMA Buffered Data Write Flag bit(1)

             1=    The content of the DMA buffer  has     not  been  written  to   the  location  specified  in  DMADSTn  or

                   DMASRCn in Null Write mode

             0=    The content of the DMA buffer has been written to the location specified in DMADSTn or DMASRCn

                   in Null Write mode

bit  14-8    CHSEL<6:0>: DMA Channel Trigger Selection bits

             See Table 5-1 for a complete list.

bit  7       HIGHIF: DMA High Address Limit Interrupt Flag bit(1,2)

             1=    The DMA channel has attempted to access an address higher than DMAH or the upper limit of the

                   data RAM space

             0=    The DMA channel has not invoked the high address limit interrupt

bit  6       LOWIF: DMA Low Address Limit Interrupt Flag bit(1,2)

             1=    The DMA channel has attempted to access the DMA SFR address lower than DMAL, but above

                   the SFR range (07FFh)

             0=    The DMA channel has not invoked the low address limit interrupt

bit  5       DONEIF: DMA Complete Operation Interrupt Flag bit(1)

             If CHEN = 1:

             1=    The previous DMA session has ended wi