Есть плата TE_LPC2478LCD56. На ней стоит flash M29DW323.
В базе есть только M29DW640, сгенерил новый FLX под нее по рекомендации Keil (http://www.keil.com/support/man/docs/ulink/ulink_su_newalgorithms.htm) (код ниже)
/***********************************************************/ /* FlashDev.C: Device Description for ST M29DW323 (16-bit Bus) */ /***********************************************************/
#include "..\FlashOS.H" // FlashOS Structures
struct FlashDevice const FlashDevice = { FLASH_DRV_VERS, // Driver Version, do not modify! "M29DW323 Flash", // Device Name EXT16BIT, // Device Type 0x000000, // Device Start Address 0x400000, // Device Size in Bytes (4MB) 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 0x02000, 0x000000, // Sector Size 8kB ( 8 Sectors) 0x10000, 0x010000, // Sector Size 64kB (63 Sectors) SECTOR_END };
Далее в Target > Utilite > Setting >> Add добавил по адресу 0x80000000 - все OK! Также добавил в Target адрес ROM 0x80000000 размером 0x4000000 чтоб компилер не ругался.
Начинаю шить - дает ошибку при верификации Смотрю осциллом - но ногах ничего не дергается
Куда рыть далее?
У кого нибудь удается прошить через ULINK внешнюю флэш ?
|