cancel
Showing results for 
Search instead for 
Did you mean: 

IAR INTEL FILE FLASHING ISSUE with st link utility

MGOEL.1
Associate II

Hi

I have generated intel binary file using iar 6.2 version for stm32f103vet6 but while flashing the same error occurs

what can be issue for programming error@0x00000000

MGOEL1_0-1729234842260.png

MGOEL1_1-1729237321128.png

 

5 REPLIES 5
MGOEL.1
Associate II

MGOEL1_1-1729237321128.pngMGOEL1_0-1729234842260.png

That you're build code to reside at 0x00000000 and not 0x08000000 ?

Check your Linker Script or .ICF settings, check the .MAP to see what the Linker is building, dump the .ELF to see what was generated there, or load the .HEX in a text editor an check that. Should have one of the first couple of lines indicate the right memory segment/offset to start with.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

MGOEL1_1-1729237321128.pnglinker script .icf below

/*###ICF### Section handled by ICF editor, don't touch! ****/
/*-Editor annotation file-*/
/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\a_v1_0.xml" */
/*-Specials-*/
define symbol __ICFEDIT_intvec_start__ = 0x08000000;
/*-Memory Regions-*/
define symbol __ICFEDIT_region_ROM_start__ = 0x08000000 ;
define symbol __ICFEDIT_region_ROM_end__ = 0x0807FFFF;
define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
define symbol __ICFEDIT_region_RAM_end__ = 0x2000FFFF;
/*-Sizes-*/
define symbol __ICFEDIT_size_cstack__ = 0x400;
define symbol __ICFEDIT_size_heap__ = 0x200;
/**** End of ICF editor section. ###ICF###*/


define memory mem with size = 4G;
define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];

define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };

initialize by copy { readwrite };
do not initialize { section .noinit };

place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };

place in ROM_region { readonly }hex file initialshex file initials;
place in RAM_region { readwrite,
block CSTACK, block HEAP };

MGOEL1_0-1729251493248.png

initial address 0x00000000 in hex file 2000FE28 000294FD 00020781

 

map file as attatchment