Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: stlink: st-flash проблема с определением флеша
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
ClockworkOrange
проблема:

подключаю STLink_v2 к хосту, SWDIO & SWCLK к таргету (в данном случае - к STM32F103, который стоит на STM8S-dicsovery).
всё отлично: кристалл определяется читается, всё шьётся.
Код
$ /usr/local/bin/st-flash read out.bin 0x8000000 0x10000
2013-11-19T13:32:05 INFO src/stlink-common.c: Loading device parameters....
2013-11-19T13:32:05 INFO src/stlink-common.c: Device connected is: F1 Medium-density device, id 0x20036410
2013-11-19T13:32:05 INFO src/stlink-common.c: SRAM size: 0x5000 bytes (20 KiB), Flash: 0x10000 bytes (64 KiB) in pages of 1024 bytes

заливаю туда образ STLinkV2 :
Код
$ /usr/local/bin/st-flash write STLinkV2.J16.S4.bin 0x08000000
2013-11-19T18:04:42 INFO src/stlink-common.c: Loading device parameters....
2013-11-19T18:04:42 INFO src/stlink-common.c: Device connected is: F1 Medium-density device, id 0x20036410
2013-11-19T18:04:42 INFO src/stlink-common.c: SRAM size: 0x5000 bytes (20 KiB), Flash: 0x10000 bytes (64 KiB) in pages of 1024 bytes
2013-11-19T18:04:42 INFO src/stlink-common.c: Ignoring 15328 bytes of Zeros at end of file
2013-11-19T18:04:42 INFO src/stlink-common.c: Attempting to write 50208 (0xc420) bytes to stm32 address: 134217728 (0x8000000)
Flash page at addr: 0x0800c400 erased
2013-11-19T18:04:43 INFO src/stlink-common.c: Finished erasing 50 pages of 1024 (0x400) bytes
2013-11-19T18:04:43 INFO src/stlink-common.c: Starting Flash write for VL/F0 core id
2013-11-19T18:04:43 INFO src/stlink-common.c: Successfully loaded flash loader in sram
49/49 pages written
2013-11-19T18:04:46 INFO src/stlink-common.c: Starting verification of write complete
2013-11-19T18:04:47 INFO src/stlink-common.c: Flash written and verified! jolly good!

- тоже всё круто.

Чип корректно прошился и при подключении по USB определяется как STLinkV2
Но!!!!
Теперь не могу больше не прочитать ни стереть ни записать кристалл Flash: 0 bytes (0 KiB):
Код
$ /usr/local/bin/st-flash read out.bin 0x8000000 0x10000
2013-11-19T23:05:05 INFO src/stlink-common.c: Loading device parameters....
2013-11-19T23:05:05 INFO src/stlink-common.c: Device connected is: F1 Connectivity line device, id 0x10016418
2013-11-19T23:05:05 INFO src/stlink-common.c: SRAM size: 0x10000 bytes (64 KiB), Flash: 0 bytes (0 KiB) in pages of 2048 bytes

Код
$ /usr/local/bin/st-flash --reset write STLinkV2.J16.S4.bin 0x08000000
2013-11-19T20:05:48 INFO src/stlink-common.c: Loading device parameters....
2013-11-19T20:05:48 INFO src/stlink-common.c: Device connected is: F1 Medium-density device, id 0x20036410
2013-11-19T20:05:48 INFO src/stlink-common.c: SRAM size: 0x5000 bytes (20 KiB), Flash: 0 bytes (0 KiB) in pages of 1024 bytes

- пробовал в разных комбинациях с --reset и даже как советуют в гуглах с коннектом ноги ресета на Vcc


вопрос:
как восстановить доступ к флеш по SWD?
если даже флеш залочена на чтение - дать возможность стереть он же должен??


вопрос более общего плана:
как вообще в этом st-flash фьюз-байты рулятся?
увы, st-flash -h ответа не даёт
Сергей Борщ
QUOTE (ClockworkOrange @ Nov 20 2013, 14:01) *
Теперь не могу больше не прочитать ни стереть ни записать кристалл Flash: 0 bytes (0 KiB):
А не может так получиться, что st-flash пытается работать через этот свежепрошитый кристалл, к которому ничего не подключено?
QUOTE (ClockworkOrange @ Nov 20 2013, 14:01) *
как восстановить доступ к флеш по SWD?
если даже флеш залочена на чтение - дать возможность стереть он же должен??
Да, должен. Ногу BOOT0 подтянуть к питанию и через встроенный загрузчик стереть.
ClockworkOrange
Цитата(Сергей Борщ @ Nov 20 2013, 15:21) *
А не может так получиться, что st-flash пытается работать через этот свежепрошитый кристалл, к которому ничего не подключено?

исключено.

Цитата
Да, должен. Ногу BOOT0 подтянуть к питанию и через встроенный загрузчик стереть.

тут вопрос скорее не в том, как спасти рядового райана реанимировать набортный STM32F103,
а разобраться с st-flash
как ей читать/писать конфиг-байты
либо что использовать вместо неё под SWD из CLI
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.