bdi
GDB
for GNU Debugger, BDI2000 (ARM)
User Manual
34
© Copyright 1997-2005 by ABATRON AG Switzerland
V 1.17
MAC7110 Internal Flash:
WORKSPACE 0x40000000 ;workspace in internal SRAM
CHIPTYPE CFM32 8000 ;select Program flash, fsys = 8MHz
CHIPSIZE 0x80000 ;512k internal program flash
BUSWIDTH 32 ;32-bit bus
FILE mac7100.cfg ;The file to program
FORMAT BIN 0xfc101000
ERASE 0xfc100000 PAGE ;erase page 0 (security byte will be restored)
ERASE 0xfc101000 PAGE ;erase page 1
ERASE 0xfc102000 PAGE ;erase page 2
ERASE 0xfc103000 PAGE ;erase page 3
;ERASE 0xfc100000 MASS ;mass erase (security byte will be restored)
LPC2000 Internal Flash:
The LPC2100 (LPC2000) internal flash is programmed using the LPC2100 built-in flash program-
ming driver via the so called IAP Commands. Details about the IAP commands you find in the
LPC2100 user's manual. This driver needs the current System Clock Frequency (CCLK) in KHz. This
frequency has to be provided via the CHIPTYPE parameter:
CHIPTYPE LPC2000 <fsys(kHz)>
CHIPTYPE LPC2000 14745 ;select LPC2100 flash, fsys = 14.745MHz
The erase parameter has a different meaning. It is not an address but a bit map of the sectors
to erase (bit0 = erase sector 0, bit1 = erase ....). If you add BLANK after the sector map, then a blank
check is executed after the erase. Following some examples:
ERASE 0x000000F0 BLANK ;erase sector 4...7 with blank check
ERASE 0x00007FFF BLANK ;erase sector 0...14 with blank check
ERASE 0x00000002 ;erase only sector 1, no blank check
The BDI needs also a workspace of 2k bytes in the internal SRAM. It is used to store the data to
program and to create a context from which the flash drivers can be called.
[FLASH]
CHIPTYPE LPC2000 14745 ;select LPC2100 flash, fsys = 14.745MHz
CHIPSIZE 0x20000 ;128k internal flash
WORKSPACE 0x40001000 ;internal SRAM for buffer, code and stack
FILE E:\cygwin\home\bdidemo\arm\lpc2100.bin
FORMAT BIN 0x00000000
ERASE 0x00007FFF BLANK ;erase sector 0...14 with blank check