Hello,
I'm using Keil_4 with ULINK2 to program the LPC1788 of my EA LPC1788 OEM Board. On this board there's an external NAND Flash (8 bits bus) I want to program both my application and the external flash data at once. I modify FlashDev.c end FlashPrg.c but it did not seem to work.
So I started again from scratch. I copied the _Template directory, let all functions empties (they return OK) I modified
struct FlashDevice const FlashDevice = { FLASH_DRV_VERS, // Driver Version, do not modify! "XFlash", // Device Name EXT8BIT, // Device Type 0x90000000, // Device Start Address 0x00040000, // Device Size in Bytes (256kB) 1024, // Programming Page Size 0, // Reserved, must be 0 0xFF, // Initial Content of Erased Memory 100, // Program Page Timeout 100 mSec 3000, // Erase Sector Timeout 3000 mSec // Specify Size and Address of Sectors 0x010000, 0x000000, // Sector Size 64kB (2 Sectors) SECTOR_END };
and I then created XFLASH.FLM
On the test program I only have
/* in RO section */ const int acBitmap[20000] __attribute__ ((section ("XFLASH"))) = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ... };
with the following scatter file
; ************************************************************* ; *** Scatter-Loading Description File generated by uVision *** ; ************************************************************* LR_IROM1 0x90000000 0x90800000 { ; load region size_region ER_IROM1 0x90000000 0x90800000 { ; load address = execution address * (XFLASH) } }
On the Debug/Settings/Debug tab my JTAG probe is detected. On the Utilities/Settings/Flash Download tab I choose my XFlash algorithm.
I then press LOAD !
I got a message "Too Many JTAG Devices in Chain"
What is wrong in my test ?
Thanks for your comment...