PIC24FJXXXGA1/GB1 PIC24FJXXXGA1/GB1 Families Flash Programming Specification 1.0 DEVICE OVERVIEW This document defines the programming specification for the PIC24FJXXXGA1/GB1 families of 16-bit microcontroller devices. This programming specification is required only for those developing programming support for the PIC24FJXXXGA1/GB1 families. Customers using only one of these devices should use development tools that already provide support for device programming.
PIC24FJXXXGA1/GB1 2.1 Power Requirements All devices in the PIC24FJXXXGA1/GB1 families are dual voltage supply designs: one supply for the core and peripherals and another for the I/O pins. A regulator is provided on-chip to alleviate the need for two external voltage supplies. All PIC24FJXXXGA1/GB1 devices power their core digital logic at a nominal 2.5V.
PIC24FJXXXGA1/GB1 TABLE 2-1: Pin Name PIN DESCRIPTIONS (DURING PROGRAMMING) During Programming Pin Name Pin Type MCLR P MCLR ENVREG Programming Enable ENVREG I Enable for On-Chip Voltage Regulator VDD P Power Supply VSS P Ground VDDCORE P Regulated Power Supply for Core VDD and AVDD(1) VSS and AVSS(1) VDDCORE Pin Description PGECx PGCx I Programming Pin Pairs 1, 2 and 3: Serial Clock PGEDx PGDX I/O Programming Pin Pairs 1, 2 and 3: Serial Data Legend: I = Input, O = Output, P =
PIC24FJXXXGA1/GB1 FIGURE 2-4: PIN DIAGRAMS (CONTINUED 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 RE4 RE3 RE2 RE1 RE0 RG0 RG1 RF1 RF0 ENVREG VCAP/VDDCORE RD7 RD6 RD5 RD4 RD13 RD12 RD3 RD2 RD1 80-Pin TQFP RE5 RE6 RE7 RC1 RC3 RG6 RG7 RG8 MCLR RG9 VSS VDD CN66/RE8 CN67/RE9 PGEC3/AN5/RP18/C1INA/CN7/RB5 PIC24FJXXXGA108 13 14 15 16 17 18 19 20 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 RC14 RC13 RD0 RD11 RD10 RD9 RD8 RA15 RA14 VSS RC15 RC12 VDD RG2 RG3 RF6 RF7 RF8 RF2 RF3
PIC24FJXXXGA1/GB1 FIGURE 2-5: PIN DIAGRAMS (CONTINUED) 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 RE4 RE3 RE2 RG13 RG12 RG14 RE1 RE0 RA7 RA6 RG0 RG1 RF1 RF0 ENVREG VCAP/VDDCORE RD7 RD6 RD5 RD4 RD13 RD12 RD3 RD2 RD1 100-Pin TQFP 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 PIC24FJXXXGA110 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 VSS RC14 RC13 RD0 RD11 RD10 RD9 RD8 RA15 RA14 VSS RC15 RC12 VDD RA5 RA4 RA3 RA2 RG2 RG
PIC24FJXXXGA1/GB1 FIGURE 2-6: PIN DIAGRAMS (CONTINUED) 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 RE4 RE3 RE2 RE1 RE0 RF1 RF0 ENVREG VCAP/VDDCORE RD7 RD6 RD5 RD4 RD3 RD2 RD1 64-Pin TQFP 1 2 3 4 5 6 7 8 9 10 11 12 PIC24FJXXXGB106 13 14 15 16 48 47 46 45 44 43 42 RC14 41 40 39 VSS RC15 RC12 38 37 36 35 34 33 VDD RC13 RD0 RD11 RD10 RD9 RD8 D+/RG2 D-/RG3 VUSB VBUS RF3 DS39907A-page 6 RB12 RB13 RB14 RB15 RF4 RF5 PGEC2/AN6/RP6/CN24/RB6 PGED2/AN7/RP7/RCV/CN25/RB7 AVDD AVSS RB8 RB9 RB10 RB11
PIC24FJXXXGA1/GB1 FIGURE 2-7: PIN DIAGRAMS (CONTINUED) 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 RE4 RE3 RE2 RE1 RE0 RG0 RG1 RF1 RF0 ENVREG VCAP/VDDCORE RD7 RD6 RD5 RD4 RD13 RD12 RD3 RD2 RD1 80-Pin TQFP RE5 RE6 RE7 RC1 RC3 RG6 RG7 RG8 MCLR RG9 VSS VDD CN66/RE8 CN67/RE9 PGEC3/AN5/RP18/VBUSON/C1INA/CN7/RB5 2 3 4 5 6 7 8 9 10 11 12 PIC24FJXXXGB108 13 14 15 16 17 18 19 20 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 RC14 RC13 RD0 RD11 RD10 RD9 RD8 RA15 RA14 VSS RC15 RC
PIC24FJXXXGA1/GB1 FIGURE 2-8: PIN DIAGRAMS (CONTINUED) 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 RE4 RE3 RE2 RG13 RG12 RG14 RE1 RE0 RA7 RA6 RG0 RG1 RF1 RF0 ENVREG VCAP/VDDCORE RD7 RD6 RD5 RD4 RD13 RD12 RD3 RD2 RD1 100-Pin TQFP 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 PIC24FJXXXGB110 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 VSS RC14 RC13 RD0 RD11 RD10 RD9 RD8 RA15 RA14 VSS RC15 RC12 VDD RA5 RA4 RA3 RA2 D+/RG2
PIC24FJXXXGA1/GB1 2.4 Memory Map The program memory map extends from 000000h to FFFFFEh. Code storage is located at the base of the memory map and supports up to 87K instruction words (about 256 Kbytes). Table 2-2 shows the program memory size and number of erase and program blocks present in each device variant. Each erase block, or page, contains 512 instructions, and each program block, or row, contains 64 instructions. Locations 800000h through 8007FEh are reserved for executive code memory.
PIC24FJXXXGA1/GB1 FIGURE 2-9: PROGRAM MEMORY MAP 000000h User Flash Code Memory(1) User Memory Space Flash Configuration Words 0XXXF9h(1) 0XXXFAh(1) 0XXXFEh(1) 0XXX00h(1) Reserved 7FFFFEh 800000h Executive Code Memory (1024 x 24-bit) Configuration Memory Space Diagnostic and Calibration Words (8 x 24-bit) 800800h Reserved Device ID (2 x 16-bit) Reserved Note 1: 8007FAh 8007F0h FEFFFEh FF0000h FF0002h FF0004h FFFFFEh The size and address boundaries for user Flash code memory are device depend
PIC24FJXXXGA1/GB1 3.0 DEVICE PROGRAMMING – ICSP FIGURE 3-1: HIGH-LEVEL ICSP™ PROGRAMMING FLOW ICSP mode is a special programming protocol that allows you to read and write to the memory of PIC24FJXXXGA1/GB1 devices. The ICSP mode is the most direct method used to program the device; note, however, that Enhanced ICSP is faster. ICSP mode also has the ability to read the contents of executive memory to determine if the programming executive is present.
PIC24FJXXXGA1/GB1 3.2.1 SIX SERIAL INSTRUCTION EXECUTION Coming out of Reset, the first 4-bit control code is always forced to SIX and a forced NOP instruction is executed by the CPU. Five additional PGCx clocks are needed on start-up, resulting in a 9-bit SIX command instead of the normal 4-bit SIX command. The SIX control code allows execution of PIC24F family assembly instructions.
PIC24FJXXXGA1/GB1 3.2.2 REGOUT SERIAL INSTRUCTION EXECUTION Note 1: After the contents of VISI are shifted out, the PIC24FJXXXGA1/GB1 devices maintain PGDx as an output until the first rising edge of the next clock is received. The REGOUT control code allows for data to be extracted from the device in ICSP mode. It is used to clock the contents of the VISI register, out of the device, over the PGDx pin. After the REGOUT control code is received, the CPU is held Idle for 8 cycles.
PIC24FJXXXGA1/GB1 3.3 Entering ICSP Mode The key sequence is a specific 32-bit pattern: ‘0100 1101 0100 0011 0100 1000 0101 0001’ (more easily remembered as 4D434851h in hexadecimal). The device will enter Program/Verify mode only if the sequence is valid. The Most Significant bit (MSb) of the most significant nibble must be shifted in first. As shown in Figure 3-4, entering ICSP Program/Verify mode requires three steps: 1. 2. 3. MCLR is briefly driven high, then low.
PIC24FJXXXGA1/GB1 3.4 Flash Memory Programming in ICSP Mode 3.4.1 PROGRAMMING OPERATIONS Flash memory write and erase operations are controlled by the NVMCON register. Programming is performed by setting NVMCON to select the type of erase operation (Table 3-2) or write operation (Table 3-3) and initiating the programming by setting the WR control bit (NVMCON<15>). In ICSP mode, all programming operations are self-timed.
PIC24FJXXXGA1/GB1 TABLE 3-4: Command (Binary) SERIAL INSTRUCTION EXECUTION FOR CHIP ERASE Data (Hex) Description Step 1: Exit the Reset vector. 0000 0000 0000 000000 040200 000000 NOP GOTO NOP 0x200 Step 2: Set the NVMCON to erase all program memory. 0000 0000 2404FA 883B0A MOV MOV #0x404F, W10 W10, NVMCON Step 3: Set TBLPAG and perform dummy table write to select what portions of memory are erased.
PIC24FJXXXGA1/GB1 3.6 Writing Code Memory The procedure for writing code memory is the same as the procedure for writing the Configuration registers, except that 64 instruction words are programmed at a time. To facilitate this operation, working registers, W0:W5, are used as temporary holding registers for the data to be programmed.
PIC24FJXXXGA1/GB1 TABLE 3-5: Command (Binary) SERIAL INSTRUCTION EXECUTION FOR WRITING CODE MEMORY (CONTINUED) Data (Hex) Description Step 5: Set the Read Pointer (W6) and load the (next set of) write latches.
PIC24FJXXXGA1/GB1 FIGURE 3-7: PROGRAM CODE MEMORY FLOW Start N=1 LoopCount = 0 Configure Device for Writes Load 2 Bytes to Write Buffer at N=N+1 No All bytes written? Yes N=1 LoopCount = LoopCount + 1 Start Write Sequence and Poll for WR bit to be Cleared No All locations done? Yes Done © 2007 Microchip Technology Inc.
PIC24FJXXXGA1/GB1 3.7 Writing Configuration Words Device configuration for PIC24FJXXXGA1/GB1 devices is stored in Flash Configuration Words at the end of the user space program memory, and in multiple register Configuration Words located in the test space. These registers reflect values read at any Reset from program memory locations. The values for the Configuration Words for the default device configurations are listed in Table 3-6.
PIC24FJXXXGA1/GB1 TABLE 3-8: Command (Binary) SERIAL INSTRUCTION EXECUTION FOR WRITING CONFIGURATION REGISTERS Data (Hex) Description Step 1: Exit the Reset vector. 0000 0000 0000 000000 040200 000000 NOP GOTO NOP 0x200 Step 2: Initialize the Write Pointer (W7) for the TBLWT instruction. 0000 2xxxx7 MOV , W7 Step 3: Set the NVMCON register to program CW2. 0000 0000 24003A 883B0A MOV MOV #0x4003, W10 W10, NVMCON Step 4: Initialize the TBLPAG register.
PIC24FJXXXGA1/GB1 3.8 Reading Code Memory Reading from code memory is performed by executing a series of TBLRD instructions and clocking out the data using the REGOUT command. Table 3-9 shows the ICSP programming details for reading code memory. In Step 1, the Reset vector is exited. In Step 2, the 24-bit starting source address for reading is loaded into the TBLPAG register and W6 register.
PIC24FJXXXGA1/GB1 3.9 Reading Configuration Words The procedure for reading configuration memory is similar to the procedure for reading code memory, except that 16-bit data words are read (with the upper byte read being all ‘0’s) instead of 24-bit words. Configuration Words are read one register at a time. TABLE 3-10: Command (Binary) Table 3-10 shows the ICSP programming details for reading the Configuration Words.
PIC24FJXXXGA1/GB1 3.10 Verify Code Memory and Configuration Word The verify step involves reading back the code memory space and comparing it against the copy held in the programmer’s buffer. The Configuration registers are verified with the rest of the code. The verify process is shown in the flowchart in Figure 3-8. Memory reads occur a single byte at a time, so two bytes must be read to compare against the word in the programmer’s buffer. Refer to Section 3.
PIC24FJXXXGA1/GB1 TABLE 3-11: Command (Binary) SERIAL INSTRUCTION EXECUTION FOR READING THE APPLICATION ID WORD Data (Hex) Description Step 1: Exit Reset vector. 0000 0000 0000 000000 040200 000000 NOP GOTO NOP 0x200 Step 2: Initialize TBLPAG and the Read Pointer (W0) for TBLRD instruction.
PIC24FJXXXGA1/GB1 4.0 DEVICE PROGRAMMING – ENHANCED ICSP This section discusses programming the device through Enhanced ICSP and the programming executive. The programming executive resides in executive memory (separate from code memory) and is executed when Enhanced ICSP Programming mode is entered. The programming executive provides the mechanism for the programmer (host device) to program and verify the PIC24FJXXXGA1/GB1 devices using a simple command set and communication protocol.
PIC24FJXXXGA1/GB1 FIGURE 4-2: 4.3 CONFIRMING PRESENCE OF PROGRAMMING EXECUTIVE Entering Enhanced ICSP Mode As shown in Figure 4-3, entering Enhanced ICSP Program/Verify mode requires three steps: 1. 2. 3. Start Enter ICSP™ Mode The MCLR pin is briefly driven high, then low. A 32-bit key sequence is clocked into PGDx. MCLR is then driven high within a specified period of time and held. The programming voltage applied to MCLR is VIH, which is essentially VDD in the case of PIC24FJXXXGA1/GB1 devices.
PIC24FJXXXGA1/GB1 4.4 Blank Check FIGURE 4-4: FLOWCHART FOR PROGRAMMING CODE MEMORY The term “Blank Check” implies verifying that the device has been successfully erased and has no programmed memory locations. A blank or erased memory location is always read as ‘1’. Start The Device ID registers (FF0002h:FF0000h) can be ignored by the Blank Check since this region stores device information that cannot be erased. The device Configuration registers are also ignored by the Blank Check.
PIC24FJXXXGA1/GB1 4.6 Configuration Bits Programming 4.6.1 OVERVIEW The descriptions for the Configuration bits in the Flash Configuration Words are shown in Table 4-2. Note: The PIC24FJXXXGA1/GB1 families have Configuration bits stored in the last three locations of implemented program memory (see Table 2-2 for locations). These bits can be set or cleared to select various device configurations. There are three types of Configuration bits: system operation bits, code-protect bits and unit ID bits.
PIC24FJXXXGA1/GB1 TABLE 4-2: PIC24FJXXXGA1/GB1 CONFIGURATION BITS DESCRIPTION (CONTINUED) Bit Field Register (2) CW2<2> I2C2SEL Description I2C2 Pin Select bit (PIC24FJXXXGA1XX devices only) 1 = Use SCL2/SDA2 pins for I2C™ module 2 0 = Use ASCL2/ASDA2 pins for I2C module 2 ICS1:ICS0 CW1<9,8> ICD Emulator Pin Placement Select bits 11 = Emulator functions are shared with PGEC1/PGED1 10 = Emulator functions are shared with PGEC2/PGED2 01 = Emulator functions are shared with PGEC3/PGED3 00 = Reserved;
PIC24FJXXXGA1/GB1 TABLE 4-2: Bit Field PIC24FJXXXGA1/GB1 CONFIGURATION BITS DESCRIPTION (CONTINUED) Register Description WINDIS CW1<6> Windowed WDT bit 1 = Watchdog Timer in Non-Window mode 0 = Watchdog Timer in Window mode; FWDTEN must be ‘1’ WPCFG CW3<14> Configuration Word Code Page Protection Select bit 1 = Last page (at the top of program memory) and Flash Configuration Words are not protected 0 = Last page and Flash Configuration Words are code-protected WPDIS CW3<13> Segment Write Protecti
PIC24FJXXXGA1/GB1 4.6.2 PROGRAMMING METHODOLOGY Configuration bits may be programmed a single byte at a time using the PROGP command. This command specifies the configuration data and Configuration register address. When Configuration bits are programmed, any unimplemented or reserved bits must be programmed with a ‘1’. Two PROGP commands are required to program the Configuration bits. A flowchart for Configuration bit programming is shown in Figure 4-5. Note: 4.6.
PIC24FJXXXGA1/GB1 4.6.4 CODE-PROTECT CONFIGURATION BITS PIC24FJXXXGA1/GB1 family devices provide two complimentary methods to protect application code from overwrites and erasures. These also help to protect the device from inadvertent configuration changes during run time. Additional information is available in the product data sheet. 4.6.4.1 Exiting Enhanced ICSP Mode Exiting Program/Verify mode is done by removing VIH from MCLR, as shown in Figure 4-6.
PIC24FJXXXGA1/GB1 5.0 THE PROGRAMMING EXECUTIVE 5.1 Programming Executive Communication FIGURE 5-2: P1 1 The programmer and programming executive have a master-slave relationship, where the programmer is the master programming device and the programming executive is the slave. PGCx All communication is initiated by the programmer in the form of a command. Only one command at a time can be sent to the programming executive.
PIC24FJXXXGA1/GB1 FIGURE 5-3: PROGRAMMING EXECUTIVE – PROGRAMMER COMMUNICATION PROTOCOL Host Transmits Last Command Word 1 2 Programming Executive Processes Command Host Clocks Out Response 1 15 16 2 15 16 1 2 15 16 PGCx PGDx MSB X X X LSB 1 P8 P20 Programming Executive Commands 5.2.1 All programming executive commands have a general format consisting of a 16-bit header and any required data for the command (see Figure 5-4).
PIC24FJXXXGA1/GB1 TABLE 5-1: Opcode PROGRAMMING EXECUTIVE COMMAND SET Mnemonic Length (16-bit words) Time-out 1 ms Sanity check. Read an 8-bit word from the specified Device ID register. Description 0h SCHECK 1 1h READC 3 1 ms 2h READP 4 1 ms/row 3h RESERVED N/A N/A This command is reserved. It will return a NACK. 4h PROGC 4 5 ms Write an 8-bit word to the specified Device ID registers. 5h PROGP 99 5 ms Program one row of code memory at the specified address, then verify.
PIC24FJXXXGA1/GB1 5.2.6 15 READC COMMAND 12 11 5.2.7 8 7 Opcode 0 15 12 11 8 7 Opcode Length N READP COMMAND 0 Length N Addr_MSB Reserved Addr_LS Addr_MSB Addr_LS Field Description Field Description Opcode 1h Length 3h Opcode 2h N Number of 8-bit Device ID registers to read (max. of 256) Length 4h N Number of 24-bit instructions to read (max.
PIC24FJXXXGA1/GB1 5.2.8 PROGC COMMAND 15 12 11 5.2.9 8 7 Opcode 0 15 12 11 8 7 Opcode Length Reserved PROGP COMMAND 0 Length Reserved Addr_MSB Addr_MSB Addr_LS Addr_LS Data D_1 D_2 Field Opcode ...
PIC24FJXXXGA1/GB1 5.2.10 PROGW COMMAND 15 12 11 5.2.11 8 7 Opcode 2 1 0 Length Data_MSB 15 QBLANK COMMAND 12 11 Opcode 0 Length Addr_MSB PSize_MSW Addr_LS PSize_LSW Data_LS Field Field Description Description Opcode Ah 6h Length 3h Length 5h PSize Reserved 0h Length of program memory to check in 24-bit words plus one (max.
PIC24FJXXXGA1/GB1 5.2.12 5.3.1 QVER COMMAND 15 12 11 0 Opcode Length Field Description Opcode Bh Length 1h All programming executive responses have a general format consisting of a two-word header and any required data for the command. 15 12 11 Opcode Expected Response (2 words): 1BMNh (where “MN” stands for version M.N) 0002h Programming Executive Responses The programming executive sends a response to the programmer for each command that it receives.
PIC24FJXXXGA1/GB1 5.3.1.3 QE_Code Field The QE_Code is a byte in the first word of the response. This byte is used to return data for query commands and error codes for all other commands. When the programming executive processes one of the two query commands (QBLANK or QVER), the returned opcode is always PASS and the QE_Code holds the query response data. The format of the QE_Code for both queries is shown in Table 5-3.
PIC24FJXXXGA1/GB1 5.4 Programming the Programming Executive to Memory 5.4.1 OVERVIEW If it is determined that the programming executive is not present in executive memory (as described in Section 4.2 “Confirming the Presence of the Programming Executive”), it must be programmed into executive memory using ICSP, as described in Section 3.0 “Device Programming – ICSP”. TABLE 5-5: Command (Binary) Storing the programming executive to executive memory is similar to normal programming of code memory.
PIC24FJXXXGA1/GB1 TABLE 5-5: Command (Binary) PROGRAMMING THE PROGRAMMING EXECUTIVE (CONTINUED) Data (Hex) Description Step 7: Repeat Steps 5 and 6 to erase the second page of executive memory. The W1 Pointer should be incremented by 400h to point to the second page. Step 8: Initialize TBLPAG and NVMCON to write stored diagnostic and calibration as single words. Initialize W1 and W2 as Write and Read Pointers to rewrite stored Diagnostic and Calibration Words.
PIC24FJXXXGA1/GB1 TABLE 5-5: Command (Binary) PROGRAMMING THE PROGRAMMING EXECUTIVE (CONTINUED) Data (Hex) Description Step 15: Set the Read Pointer (W6) and load the (next four write) latches.
PIC24FJXXXGA1/GB1 5.4.2 PROGRAMMING VERIFICATION After the programming executive has been programmed to executive memory using ICSP, it must be verified. Verification is performed by reading out the contents of executive memory and comparing it with the image of the programming executive stored in the programmer. TABLE 5-6: Command (Binary) Reading the contents of executive memory can be performed using the same technique described in Section 3.8 “Reading Code Memory”.
PIC24FJXXXGA1/GB1 6.0 DEVICE DETAILS 6.1 Device ID TABLE 6-1: Device The Device ID region of memory can be used to determine mask, variant and manufacturing information about the chip. The Device ID region is 2 x 16 bits and it can be read using the READC command. This region of memory is read-only and can also be read when code protection is enabled. Table 6-1 shows the Device ID for each device, Table 6-2 shows the Device ID registers and Table 6-3 describes the bit field of each register.
PIC24FJXXXGA1/GB1 6.2 Checksum Computation Table 6-4 describes how to calculate the checksum for each device. All memory locations are summed, one byte at a time, using only their native data size. More specifically, Configuration registers are summed by adding the lower two bytes of these locations (the upper byte is ignored), while code memory is summed by adding all three bytes of code memory. Checksums for the PIC24FJXXXGA1/GB1 families are 16 bits in size.
PIC24FJXXXGA1/GB1 TABLE 6-4: CHECKSUM COMPUTATION (CONTINUED) Device PIC24FJ128GB108 PIC24FJ192GB108 PIC24FJ256GB108 PIC24FJ64GB110 PIC24FJ128GB110 PIC24FJ192GB110 PIC24FJ256GB110 Legend: Note: Item SUM[a:b] CFGB = = TBD = Checksum Computation Erased Checksum Value Checksum with 0xAAAAAA at 0x0 and Last Code Address Disabled CFGB + SUM(0:1F7F9) TBD TBD Enabled 0 TBD TBD Disabled CFGB + SUM(0:0157FB) TBD TBD Enabled 0 TBD TBD Disabled CFGB + SUM(0:0157FB) TBD TBD Enabled 0 T
PIC24FJXXXGA1/GB1 7.0 AC/DC CHARACTERISTICS AND TIMING REQUIREMENTS Standard Operating Conditions Operating Temperature: 0°C to +70°C. Programming at +25°C is recommended. Param Symbol No. D111 Characteristic Min Max Units VDDCORE 3.60 V VDD Supply Voltage During Programming D112 IPP Programming Current on MCLR — 5 μA D113 IDDP Supply Current During Programming — 2 mA D031 VIL Input Low Voltage VSS 0.2 VDD V D041 VIH Input High Voltage 0.
PIC24FJXXXGA1/GB1 NOTES: DS39907A-page 50 © 2007 Microchip Technology Inc.
Note the following details of the code protection feature on Microchip devices: • Microchip products meet the specification contained in their particular Microchip Data Sheet. • Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the intended manner and under normal conditions. • There are dishonest and possibly illegal methods used to breach the code protection feature.
WORLDWIDE SALES AND SERVICE AMERICAS ASIA/PACIFIC ASIA/PACIFIC EUROPE Corporate Office 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 480-792-7200 Fax: 480-792-7277 Technical Support: http://support.microchip.com Web Address: www.microchip.