2024-08-30 09:28 AM
Hello,
I've installed STM32CubeProgrammer 2.17.0 on Windows 11. I'm using it for flashing customer board using DFU mode over USB. I'm flashing elf file so cube programmer should be able to grab start address from it. For flashing I'm selecting 'Run after programming' but leaving 'Start address' box empty. In fact I'm not able to modify content of this box anyway.
Now, when I flash by clicking on 'Start Programming' button I see following output:
18:20:25 : Memory Programming ...
18:20:25 : Opening and parsing file: aximars_fw.elf
18:20:25 : File : aximars_fw.elf
18:20:25 : Size : 546.90 KB
18:20:25 : Address : 0x08000000
18:20:25 : Erasing memory corresponding to segment 0:
18:20:25 : Erasing internal memory sector 0
18:20:25 : erasing sector 0000 @: 0x08000000 done
18:20:25 : Erasing memory corresponding to segment 1:
18:20:25 : Erasing internal memory sectors [2 8]
18:20:26 : erasing sector 0002 @: 0x08008000 done
18:20:26 : erasing sector 0003 @: 0x0800c000 done
18:20:27 : erasing sector 0004 @: 0x08010000 done
18:20:29 : erasing sector 0005 @: 0x08020000 done
18:20:31 : erasing sector 0006 @: 0x08040000 done
18:20:33 : erasing sector 0007 @: 0x08060000 done
18:20:35 : erasing sector 0008 @: 0x08080000 done
18:20:35 : Download in Progress:
18:20:46 : File download complete
18:20:46 : Time elapsed during download operation: 00:00:20.816
18:20:46 : Verifying ...
18:20:46 : Read progress:
18:20:47 : Download verified successfully
18:20:47 : RUNNING Program ...
18:20:47 : Address: : 0x08000000
18:20:47 : Start operation achieved successfully
18:20:47 : Warning: Connection to device 0x441 is lost
18:20:47 : Disconnected from device.
Unfortunately my application is not started. To start it I need to switch board off and on again. Anyway, also my ELF file suggest (output below) that starting address should be 0x8008001 and not as programmer claims in output above 0x8000000. Now my question is if this is a know issue or not or how is it possible to work around the issue.
Thanks!
Karel
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: EXEC (Executable file)
Machine: ARM
Version: 0x1
Entry point address: 0x8008001
Start of program headers: 52 (bytes into file)
Start of section headers: 18814232 (bytes into file)
Flags: 0x5000400
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 6
Size of section headers: 40 (bytes)
Number of section headers: 24
Section header string table index: 22