
2010 Microchip Technology Inc.
DS70102K-page 55
dsPIC30F Flash Programming Specification
Step 8: Set the read pointer (W6) and load the (next four write) latches.
0000
EB0300
000000
BB0BB6
000000
BBDBB6
000000
BBEBB6
000000
BB1BB6
000000
BB0BB6
000000
BBDBB6
000000
BBEBB6
000000
BB1BB6
000000
CLR
W6
NOP
TBLWTL
[W6++], [W7]
NOP
TBLWTH.B
[W6++], [W7++]
NOP
TBLWTH.B
[W6++], [++W7]
NOP
TBLWTL
[W6++], [W7++]
NOP
TBLWTL
[W6++], [W7]
NOP
TBLWTH.B
[W6++], [W7++]
NOP
TBLWTH.B
[W6++], [++W7]
NOP
TBLWTL
[W6++], [W7++]
NOP
Step 9: Repeat Steps 7-8 eight times to load the write latches for the 32 instructions.
Step 10: Unlock the NVMCON for programming.
0000
200558
883B38
200AA9
883B39
MOV
#0x55, W8
MOV
W8, NVMKEY
MOV
#0xAA, W9
MOV
W9, NVMKEY
Step 11: Initiate the programming cycle.
0000
—
0000
A8E761
000000
—
000000
A9E761
000000
BSET NVMCON, #15
NOP
NOP
BCLR NVMCON, #15
NOP
Step 12: Reset the device internal PC.
0000
040100
000000
GOTO 0x100
NOP
Step 13: Repeat Steps 7-12 until all 23 rows of executive memory are programmed.
TABLE 12-1:
PROGRAMMING THE PROGRAMMING EXECUTIVE (CONTINUED)
Command
(Binary)
Data
(Hexadecimal)
Description