English
Language : 

PIC24F04KA200 Datasheet, PDF (19/26 Pages) Microchip Technology – Flash Programming Specifications
PIC24FXXKA2XX
3.9 Reading Configuration Memory
The procedure for reading a Configuration register is
the same as reading the code memory. The only
difference is that the 16-bit data words are read (with
the upper byte read being all ‘0‘s) instead of the 24-bit
words. There are eight Configuration registers and they
are read, one register at a time.
Table 3-10 provides the ICSP programming details for
reading all of the Configuration registers.
Note:
The TBLPAG register should be
hard-coded to 0xF8 (the upper byte
address of the Configuration register) and
the Read Pointer, W6, is initialized to
0x00h.
TABLE 3-10: SERIAL INSTRUCTION EXECUTION FOR READING ALL THE CONFIGURATION
REGISTERS
Command
(Binary)
Data
(Hex)
Description
Step 1: Exit Reset vector.
0000
0000
0000
000000
040200
000000
NOP
GOTO
NOP
0x200
Step 2: Initialize TBLPAG, the Read Pointer (W6) and the Write Pointer (W7) for TBLRD instruction.
0000
0000
0000
0000
0000
200F80 MOV
880190 MOV
200007 MOV
207847 MOV
000000 NOP
#0xF8, W0
W0, TBLPAG
#0x0000,W6
#VISI, W7
Step 3: Read the Configuration register and write it to the VISI register (located at 784h), and clock out the
VISI register using the REGOUT command.
0000
0000
0000
0001
BA0BB6
000000
000000
<VISI>
TBLRDL
[W6++], [W7]
NOP
NOP
Clock out contents of VISI register.
Step 4: Repeat Step 3 to read other fuses. Load W6 with their respective address.
Step 5: Reset device internal PC.
0000
0000
040200
000000
GOTO
NOP
0x200
 2010 Microchip Technology Inc.
DS39991A-page 19