欢迎访问ic37.com |
会员登录 免费注册
发布采购

DSPIC33FJ128GP306 参数 Datasheet PDF下载

DSPIC33FJ128GP306图片预览
型号: DSPIC33FJ128GP306
PDF下载: 下载PDF文件 查看货源
内容描述: 闪存编程规范 [Flash Programming Specification]
分类和应用: 闪存
文件页数/大小: 80 页 / 943 K
品牌: MICROCHIP [ MICROCHIP ]
 浏览型号DSPIC33FJ128GP306的Datasheet PDF文件第31页浏览型号DSPIC33FJ128GP306的Datasheet PDF文件第32页浏览型号DSPIC33FJ128GP306的Datasheet PDF文件第33页浏览型号DSPIC33FJ128GP306的Datasheet PDF文件第34页浏览型号DSPIC33FJ128GP306的Datasheet PDF文件第36页浏览型号DSPIC33FJ128GP306的Datasheet PDF文件第37页浏览型号DSPIC33FJ128GP306的Datasheet PDF文件第38页浏览型号DSPIC33FJ128GP306的Datasheet PDF文件第39页  
dsPIC33F/PIC24H PROGRAMMING SPECIFICATION  
FIGURE 3-3:  
ENTERING ENHANCED ICSP™ MODE  
P6  
P19  
P7  
P14  
VIH  
VIH  
MCLR  
VDD  
Program/Verify Entry Code = 0x4D434850  
0
1
0
0
1
0
0
0
0
...  
PGD  
b31 b30 b29 b28 b27  
b3  
b2  
b1  
b0  
PGC  
P1A  
P1B  
P18  
3.4  
Blank Check  
3.5  
3.5.1  
Code Memory Programming  
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 a ‘1’.  
PROGRAMMING METHODOLOGY  
Code memory is programmed with the PROGP  
command. PROGPprograms one row of code memory  
starting from the memory address specified in the  
command. The number of PROGPcommands required  
to program a device depends on the number of write  
blocks that must be programmed in the device.  
The Device ID registers (0xFF0000:0xFF0002) 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. Additionally, all unimplemented memory space  
should be ignored from the Blank Check.  
A flowchart for programming code memory is shown in  
Figure 3-4. In this example, all 88K instruction words of  
a dsPIC33F/PIC24H device are programmed. First, the  
number of commands to send (called ‘RemainingC-  
mds’ in the flowchart) is set to 1368 and the destination  
address (called ‘BaseAddress’) is set to ‘0’. Next, one  
write block in the device is programmed with a PROGP  
command. Each PROGP command contains data for  
one row of code memory of the dsPIC33F/PIC24H.  
After the first command is processed successfully,  
‘RemainingCmds’ is decremented by ‘1’ and compared  
with ‘0’. Since there are more PROGP commands to  
send, ‘BaseAddress’ is incremented by 0x80 to point to  
the next row of memory.  
The QBLANKcommand is used for the Blank Check. It  
determines if the code memory is erased by testing  
these memory regions. A ‘BLANK’ or ‘NOT BLANK’  
response is returned. If it is determined that the device  
is not blank, it must be erased before attempting to  
program the chip.  
On the second PROGP command, the second row is  
programmed. This process is repeated until the entire  
device is programmed..  
Note:  
If a bootloader needs to be programmed,  
the bootloader code must not be pro-  
grammed into the first page of code mem-  
ory. For example, if a bootloader located at  
address 0x200 attempts to erase the first  
page, it would inadvertently erase itself.  
Instead, program the bootloader into the  
second page, e.g. 0x400.  
© 2007 Microchip Technology Inc.  
Preliminary  
DS70152D-page 35  
 复制成功!