Не, 100% не работает. Ещё, смущает, что если заливать не hex, а
elf, выходит такое, для обоих сборок, Debug и Release: Debug:
[stm32f1x.cpu] halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x080003a0 msp: 0x20010000
** Programming Started **
Info : device id = 0x10016418
Info : flash size = 256 KiB
Warn : Adding extra erase range, 0x0801b014 .. 0x0801b7ff
Warn : no flash bank found for address 0x20000138
** Programming Finished **
** Verify Started **
Error: checksum mismatch - attempting binary compare
embedded:startup.tcl:1510: Error: ** Verify Failed **
in procedure 'program'
in procedure 'program_error' called at file "embedded:startup.tcl", line 1571
at file "embedded:startup.tcl", line 1510
Release:
[stm32f1x.cpu] halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x080003a0 msp: 0x20010000
** Programming Started **
Info : device id = 0x10016418
Info : flash size = 256 KiB
Warn : Adding extra erase range, 0x08015c3c .. 0x08015fff
Warn : no flash bank found for address 0x20000130
** Programming Finished **
** Verify Started **
Error: checksum mismatch - attempting binary compare
embedded:startup.tcl:1510: Error: ** Verify Failed **
in procedure 'program'
in procedure 'program_error' called at file "embedded:startup.tcl", line 1571
at file "embedded:startup.tcl", line 1510
Обратите внимание на "Warn : no flash bank found for address 0x20000138". И отказ проверки прошитого.
Похоже, это тот случай, когда нужн вручную подключаться GDB и смотреть пошагово.