dsPIC33F Microchip Technology, dsPIC33F Datasheet - Page 35

no-image

dsPIC33F

Manufacturer Part Number
dsPIC33F
Description
(dsPIC24H / dsPIC33F) Flash Programming Specification
Manufacturer
Microchip Technology
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
dsPIC33FJ06GS001-I/P
Manufacturer:
MICROCHIP
Quantity:
12 000
Part Number:
dsPIC33FJ06GS101-E/SO
Manufacturer:
Microchip Technology
Quantity:
135
Part Number:
dsPIC33FJ06GS101-E/SO
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
dsPIC33FJ06GS101-I/S0
Quantity:
7 046
Part Number:
dsPIC33FJ06GS102-E/SO
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
dsPIC33FJ06GS202-E/SO
Manufacturer:
Microchip Technology
Quantity:
135
Part Number:
dsPIC33FJ06GS202-I/SO
Manufacturer:
ZORAN
Quantity:
1 000
Part Number:
dsPIC33FJ06GS202A-I/MM
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
dsPIC33FJ128GP202-E/SP
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
dsPIC33FJ128GP204-E/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Company:
Part Number:
dsPIC33FJ128GP204-E/PT
Quantity:
7
Part Number:
dsPIC33FJ128GP204-I/ML
Manufacturer:
ST
0
FIGURE 3-3:
3.4
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’.
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.
The QBLANK command 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.
© 2007 Microchip Technology Inc.
MCLR
V
PGD
PGC
DD
dsPIC33F/PIC24H PROGRAMMING SPECIFICATION
Blank Check
P6
ENTERING ENHANCED ICSP™ MODE
P14
P18
V
b31
IH
0
b30
1
Program/Verify Entry Code = 0x4D434850
Preliminary
b29
0
b28
P1A
0
P1B
b27
1
3.5
3.5.1
Code memory is programmed with the PROGP
command. PROGP programs one row of code memory
starting from the memory address specified in the
command. The number of PROGP commands required
to program a device depends on the number of write
blocks that must be programmed in the device.
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.
On the second PROGP command, the second row is
programmed. This process is repeated until the entire
device is programmed..
Note:
...
Code Memory Programming
b3
0
PROGRAMMING METHODOLOGY
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.
b2
0
b1
0
V
IH
b0
0
P19
DS70152D-page 35
P7

Related parts for dsPIC33F