hello, first of all sorry for my bad english.
I am trying to develop some projects and need to reload all the time to flash.
How to setup target options to put code into ram and run program from ram instead of flash? For instance blinky example (found this somewhere on keil page) have flash and ram targets and ram does not touch flash(i do not know how many times can flash be programmed).
On target options i have set irom1 to iram1 sram space(0x2000000 size 0x1000 and shrinked ram space that much) but this is not working. I am getting error: No Algorithm found for: 02000000H - 020006BBH Erase skipped! Error: Flash Download failed - "Cortex-M4"
schater file is: LR_IROM1 0x02000000 0x00100000 { ; load region size_region ER_IROM1 0x02000000 0x00100000 { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) .ANY (+RO) } RW_IRAM1 0x20010000 0x00010000 { ; RW data .ANY (+RW +ZI) } }
greetings from croatia.
If it's anything like uv4 then you need to disable the download to target option, and instead enable the debugger script (.INI) to do a "LOAD %L" of your code to RAM. This avoids the debugger thinking it's FLASH, and not having an algorithm for it.
Perhaps there are some .INI script examples in the install or one of the packs. CPU with external SRAM/SDRAM being the classic ones (SAM9260?)
I'm sure it's covered in the manuals, or online docs.
thanks for answer. It is stm32f4 discovery board.
So realistically you don't have 16MB (0x100000) of SRAM then?
/*---------------------------------------------------------------------------- * Name: Dbg_RAM.ini * Purpose: RAM Debug Initialization File * Note(s): *----------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------- Setup() configure PC & SP for RAM Debug *----------------------------------------------------------------------------*/ FUNC void Setup (void) { SP = _RDWORD(0x20000000); // Setup Stack Pointer PC = _RDWORD(0x20000004); // Setup Program Counter _WDWORD(0xE000ED08, 0x20000000); // Setup Vector Table Offset Register } load %L incremental Setup(); // Setup for Running g, main
one zero too much but still not working.
HI , Please tell which is the pack you have mentioned here ?? I am the same issue of loading executable file into RAM
i have FPGA which is with Cortex M3 core, but not able to detect the core and download .axf file to onchip SRAM.. please help me wit this
Tejaswini