Доработка китайского ST-Link v2: добавляем интерфейс вывода отладочной информации SWO и ногу Reset

MicroTechnics

Решил я написать статью про подключение отладочной платы STM32VLDiscovery (еще одна статья учебного курса по STM32 – весь он тут). Казалось бы это вообще элементарно, воткнул провод и вперед, но на деле можно наступить на огромное количество граблей. Поэтому нельзя оставлять этот вопрос неосвещенным.

Программирование STM32VLDiscovery через Keil.

Подключаем нашу платку к USB, и ждем пока она определится как внешний носитель. Если Windows не увидел вашу плату (как было у меня), то советую проверить в первую очередь кабель и разъем для него на плате. У меня, например, отошел контакт на Discovery и я очень долго пытался понять, почему же плата не работает 🙂

Но чаще всего подключение проходит без проблем, так что двигаемся дальше. Идем в папку с Keil’ом и находим драйвер для USB. Он лежит вот тут:

  • ARMSTLinkUSBDriver (это в папке, куда установлен Keil)

ЗапускаемST-Link_V2_USBdriver.exe и устанавливаем его. Возвращаемся чуть назад – в папку C:KeilARMSTLink и видим там файл STLinkUSBDriver.dll размером около 65 кб. Его надо заменить на файл – STLinkUSBDriver.dll(подменять файл следует только в том случае, если ST-LINK завести не удается (!) ).

Первый этап позади!

Запускаем Keil и открываем там проект, который будем заливать в железку. Открываем меню Flash-Configure Flash Tools. Во вкладке Debug выбираем Use ST-Link Debugger и ставим галочку Run to main():

Теперь открываем вкладку Utilities и тоже выбираем ST-Link Debugger.

Думаете все? А вот нет, танцы с бубном только начинаются! Нажимаем кнопку Settings и в появившемся окне нужно добавить Programming algorithm для нашего девайса:

В этом же окне открываем вкладку Debug, находим поле Port и вместо JTAG ставим SW:

С настройкой закончили, но и это еще не все. Открываем файл stm32f10x.h и находим в районе 45-55 строк такой текст:

#if !defined (STM32F10X_LD) && !defined (STM32F10X_LD_VL) && !defined (STM32F10X_MD) && !defined (STM32F10X_MD_VL) && !defined (STM32F10X_HD) && !defined (STM32F10X_XL) && !defined (STM32F10X_CL)  /* #define STM32F10X_LD */            /* STM32F10X_LD: STM32 Low density devices */ /* #define STM32F10X_LD_VL */         /* STM32F10X_LD_VL: STM32 Low density Value Line devices */   /* #define STM32F10X_MD */            /* STM32F10X_MD: STM32 Medium density devices */ /* #define STM32F10X_MD_VL */         /* STM32F10X_MD_VL: STM32 Medium density Value Line devices */   /* #define STM32F10X_HD */            /* STM32F10X_HD: STM32 High density devices */ #define STM32F10X_XL                  /* STM32F10X_XL: STM32 XL-density devices */ /* #define STM32F10X_CL */            /* STM32F10X_CL: STM32 Connectivity line devices */ #endif

Надо чтобы тут обязательно была раскомментирована строка #define STM32F10X_MD_VL и закомментированы все остальные, иначе программа зашьется, но не заведется.

Не забываем в настройках проекта попросить компилятор генерировать hex:

Собираем проект и нажимаем кнопку Load. В случае удачной прошивки видим строки:

Load "Здесь путь к файлу прошивки"Erase Done.Programming Done.Verify OK.

Если все-таки почему-то у вас не вышло прошить плату через Keil, то есть второй способ.

Программирование STM32VLDiscovery через STM32 ST-Link Utility.

Ну, здесь все намного проще, чем в Keil’e. Просто скачиваем утилиту, устанавливаем (скачать можно по этой ссылке – ST-Link Utility). Как и в первом случае заменяем файл STLinkUSBDriver.dll. Он лежит здесь:

  • STMicroelectronicsSTM32 ST-LINK UtilityST-LINK Utility

Итак, мы рассмотрели два способа прошивки STM32VLDiscovery, выбирайте любой на свой вкус! 🙂

Поделиться!

© 2013-2021 MicroTechnics.ru

Паяем standalone-версию программатора ST-Link/v2-1

10 сентября 2018

Большое преимущество программатора ST-Link/v2-1 перед ST-Link/v2 заключается в том, что помимо самого программатора в v2-1 также есть встроенный USB-UART. На практике это очень удобно — меньше проводов, меньше занятых USB-портов. Как заливка прошивки, так и передача отладочного вывода происходят через одно устройство вместо двух. Есть только одна маленькая проблема. Если ST-Link/v2 можно без проблем купить на eBay, то ST-Link/v2-1 бывает только встроенным в отладочные платы семейств Discovery и Nucleo. Однако, как выяснилось, плату Nucleo довольно легко разделить на два отдельных устройства — программатор ST-Link/v2-1 и отладочную плату.

Свои безумные эксперименты я проводил над отладочной платой Nucleo-F411RE. Напомню, как она выглядит:

На приведенной фотографии верхняя часть платы содержит программатор, а нижняя — непосредственно отладочную плату. Разработчики заботливо заложили в плату возможность отделения программатора, чем мы и воспользуемся. В процессе нам пригодится схема платы, которая доступна на сайте STMicroelectronics.

Окончательный вид устройства у меня получился таким:

Программатор был отделен от платы при помощи Dremel’я. К нижней части устройства был припаян кусок макетки с штекером USB type A. Соответственно, ставший ненужным разъем MiniUSB был выпаян. На фото в левой верхней части программатора можно заметить чип в корпусе SO-8. Это МОП-транзистор с P-каналом STS7PF30L (даташит [PDF]). Благодаря схеме платы мы знаем, что он больше не понадобится, так что его при желании тоже можно выпаять. Питание, SWD и UART были выведены при помощи тонких проводов на разъем IDC-12. Чтобы провода не болтались, я закрепил их термоклеем. Разъем был сделан совместимым с разъемом IDC-10 в ST-Link/v2 с поправкой на добавленные пины TX и RX. На фото рядом с программатором лежит переходник из IDC-12 в IDC-10. Он просто отрезает UART, тем самым превращая программатор в ST-Link/v2.

Что же касается оставшейся части платы, то на ней предусмотрены пины для внешнего питания и выведены SWDIO и SWCLK (PA13 и PA14 соответственно). Так что, после операции она все еще программируется. Правда, плата разведена таким образом, что после отрезания программатора ломается UART (пины PA2 и PA3), поэтому его придется подпаять. Для удобства я решил вывести все необходимые для программирования и отладки пины на разъем IDC-12. Вот что получилось в итоге:

Нижнюю часть платы вам лучше не видеть 🙂 Таким образом, программатор можно соединить с отладочной платой соответствующим шлейфом, после чего все работает, как раньше. Только программатор теперь можно использовать и с другими платами. В частности, в будущих ревизиях своей LimeSTM32 я собираюсь заменить разъем IDC-10 на IDC-12, выведя на него и UART.

В этом контексте я хотел бы порекомендовать серию статей «Reverse-engineering ST-Link firmware» в блоге lujji.github.io (часть 1, часть 2). Статьи рассказывают о том, как сдампить прошивку ST-Link/v2-1 в обход защиты от чтения, которая есть во всех программаторах. Для клонирования программатора понадобится микроконтроллер STM32F103CBT6 со 128 Кб flash-памяти (не STM32F103C8T6 с 64 КБ памяти). Такого микроконтроллера у меня не было, да и серийное производство я не планирую, поэтому мне было проще получить отдельный ST-Link/v2-1, просто отрезав его от платы Nucleo. Но вам, возможно, больше придется по душе вариант с созданием клона.

Следует однако иметь в виду, что автор не выложил готового дампа прошивки, а значит вам понадобится плата Nucleo или Discovery, и некоторое количество времени на получение дампа. Если вас интересует готовый дамп, то в открытом доступе на момент написания этих строк, похоже, есть только дамп ST-Link/v2. Например, в статье How to program blank STM32F1 with STLINK V2 firmware на сайте e.pavlin.si вы найдете как дамп, так и готовую плату для создания клона ST-Link/v2.

Дополнение: Дамп ST-Link/v2-1 появился в публичном доступе. Подробности ищите в статье Делаем ST-Link V2.1 из китайского ST-Link V2 за авторством User420.

Вот и все, о чем я хотел рассказать. Как всегда, вопросы, дополнения, а также истории о том, как вы клонировали ST-Link/v2 или v2-1, всячески приветствуются!

Дополнение: Вас также может заинтересовать пост Программируем/отлаживаем микроконтроллеры STM32 при помощи OpenOCD и FT2232HL.

Метки: STM32, Электроника.

Поддержи автора, чтобы в блоге было больше полезных статей!

Также подпишись на RSS, ВКонтакте, Twitter или Telegram.

—>

В этой статье объясняется, как запрограммировать ваше приложение на плату с помощью утилиты ST-Link. Этот метод необходим, если вы компилируете с использованием ARM GCC, но рекомендуется для проектов IAR или Keil.

STMicroelectronics предоставляет утилиту на базе Windows, утилиту 

ST-Link

 , для прошивки внутренней и внешней флэш-памяти плат на основе STM32. Этот раздел относится к следующим платам ST, поддерживаемым TouchGFX:

  1. STM32F429I-DISCO
  2. STM324x9I-EVAL
  3. STM32469I-DISCO
  4. STM32469I-EVAL
  5. STM32F746G-DISCO
  6. STM32756G-EVAL
  7. STM32F769I-EVAL
  8. STM32F769-DISCO

ST-Link Utility также может быть использован для программирования пользовательского оборудования с использованием , например ST-Link / V2  

программиста

 .

ST-Link Utility может программировать файлы .hex и .bin. Они автоматически генерируются Make-файлами ARM gcc, поставляемыми с проектом TouchGFX. IAR и Keil IDE настроены для преобразования выходных файлов .elf в файл .hex.

  • Для проектов IAR

     дополнительный вывод преобразуется ( 

    intel extended

    форматируется) в

    DebugExeapplication.hex

  • Для проектов Keil

      выполняется следующий шаг после сборки: в 

    fromelf --only=ExtFlashSection --bin --output=binary .Objectskeil5-2.axf

    результате получается файл .hex: 

    Objectskeil5-2.hex

Процесс, описанный в этой статье, описывает, как использовать утилиту ST-Link для программирования внутренней и внешней флэш-памяти плат ST. Для внутренней вспышки ST-Link автоматически определит тип подключенного устройства. Однако для внешней вспышки внешний флэш-загрузчик должен быть настроен вручную. ST-Link предлагает поддержку для каждого флэш-чипа на платах, поддерживаемых TouchGFX.

При прошивке двоичного файла с помощью утилиты ST-Link вы должны указать правильный флэш-адрес вручную. Этот адрес должен совпадать с адресом, используемым в скрипте компоновщика. По умолчанию это первый адрес во флэш-памяти. При перепрошивке файла .hex утилита ST-Link найдет правильный адрес в файле .hex.

ST-Link автоматически определит диапазоны памяти для программирования и выберет подходящие флэш-загрузчики для использования, если так настроено, при открытии .hex-файла. В приведенном ниже примере 

target.hex

приложение было открыто в ST-Link, и были обнаружены диапазоны как внутренней, так и внешней флэш-памяти.

Как упоминалось ранее, внутренняя флэш-память всегда распознается ST-Link для микроконтроллеров STM32, но флэш-загрузчик для диапазонов, начинающихся с 0x90000000, должен быть настроен вручную. В приведенном ниже примере мы настроим внешнюю вспышку для 

STM32F746G-DISCO

платы:

  1. Выберите « 

    Добавить внешний загрузчик

     » в меню « 

    Внешний загрузчик

     ».

  2. Выберите соответствующий флэш-загрузчик в списке поддерживаемых плат (т.е. 

    MT25QL512A_STM32756G-EVAL

    для 

    STM32756G-EVAL

    и 

    N25Q128A_STM32F746G-DISCO

    для 

    STM32F746G-DISCO

    ) и выберите 

    Подтвердить

     .

  3. Откройте .hex, который вы хотите мигать: диапазоны адресов автоматически определяются ST-Link. Как упоминалось ранее, разные двоичные файлы создаются IAR, Keil и gcc соответственно и могут использоваться ST-Link.

  4. Выберите « 

    Program

     » в меню « 

    Target

     » и начните загрузку.

Ниже приведен полный список внешних флэш-загрузчиков, которые будут использоваться для плат ST, поддерживаемых TouchGFX (ST-Link версия 4.2):

доска

Флеш загрузчик

STM32F429I-DISCO

Только внутренняя вспышка

STM324x9I-EVAL

M29W128GL_STM324x9I-EVAL

STM32469I-DISCO

N25Q128A_STM32469I-DISCO

STM32469I-EVAL

MT25QL512A_STM32469I-EVAL

STM32F746G-DISCO

N25Q128A_STM32F746G-DISCO

STM32756G-EVAL

MT25QL512A_STM32756G-EVAL

STM32F769I-EVAL

MT25QL512A_STM32769I-EVAL

STM32F769I-DISCO

MX25L512G_STM32769I-DISCO

STM32L4R9-EVAL

MX25LM51245G_STM32L4R9I-EVAL

STM32L4R9-DISCO

MX25LM51245G_STM32L4R9I-DISCO

Кроме того, вы можете создать и прошить приложение (используя ST-Link CLI) с помощью любой 

makefile

(т.е. 

app/example/button_example/target/ST/STM32F746G-DISCO/gcc/Makefile

), используя следующую команду:

Makefile знает, какую внешнюю флэш-память (см. Таблицу выше) использовать для каждой из поддерживаемых плат ST. ST-LINK имеет встроенную поддержку внутренней вспышки для каждой платы, и вы можете прошить 

только

 внутреннюю вспышку, используя следующую команду:

В некоторых случаях вы не 

сможете

 запрограммировать свою доску указанным выше способом из-за следующей ошибки:

В этом случае вы можете попытаться отключить драйвер устройства USB для этой конкретной платы в диспетчере устройств Windows, чтобы устранить проблему.

  • Цена: 9,5$

Сегодня хочу поделиться с общественностью пожалуй самым популярным применением сего программатора — прошивкой принтера Samsung ML-2160. В определенных кругах известно как «унижение принтера ml-2160». Тема старая, но все равно много кто и сейчас «напарывается на грабли» при прошивке сего устройства. Кому интересно — прошу под кат. Осторожно — много фото! Хочу начать с того, что в свободное от работы время я для развлечения и тренировки мозга и рук чиню всякую микропроцессорную электронику. Однажды пришел ко мне знакомый с просьбой «почини принтер». Был это популярный тогда Samsung ML-2160. И выглядел как недавний подопытный: Хитрый самсунг хотел денег за родные картриджи, ну а людей exUSSR ставит в ступор цена оригинального картриджа — мы ведь лазерный принтер купили чтобы было дешево 😉 Первые версии принтера можно было откатить на старую прошивку без особых проблем, но в следующих прошивках такую возможность убрали. В общем вечер гугла и мы заказываем программатор. Заодно рекомендую купить USB TTL-UART, чтобы видеть что нам отвечает принтер во время прошивки. Через пару недель к нам приезжает наш красавец: и внутри:

На этом месте все обычно подключают программатор, качают последнюю версию софта с офсайта, ставят, запускают, наблюдают радостное окно программы, которая нашла программатор: Но счастье их длится не долго: Говорят, некоторые после этого получают кирпич из программатора. Всех остальных просто задалбывает это окно. А всего лишь нужно было поставить софт v4.92 (setup_jlink_v492.zip). Сразу оговорюсь, что весь необходимый софт оставлю в конце обзора. Теперь включаем принтер. Кладем лист бумаги зажимаем и держим кнопку PrintScr на принтере примерно 10 секунд. Он радостно заморгает лампочкой и напечатает что-то подобное:Читаем строку Firmware version, видим версию ….02.00 и понимаем что не зря купили программатор. Теперь ставим драйвера. На случай если у вас их нет — SamsungUniversalPrintDriver22.exe. Windows 10 подхватывает сама. Если вы еще не распаковали мой архив — самое время. Копируем Boot.bin в c: (чтобы не бороться с проблемами с кодировками итд, хотите экспериментов — редактируйте download.jlink) Если поставили jlink не в каталог по умолчанию — редактируете путь в файле flashme.bat. Минимальный набор софта есть. Можно приступить к потрошению принтера 🙂 Отвертка PH2 — наше все! Отключаем принтер от сети и откручиваем один саморез:и видим плату: отстыковываем шлейфы и откручиваем 3 винта. Нам предстоит распаяться вот так:
распиновка разЪема на программаторе: Тут следует обратить внимание что на кабеле распиновка зеркальная! 1 и 2 ногу программатора спаиваем вместе и в зависимости от положения джампера на плате подключаем к 3.3В принтера или нет. Если не хотите разбирать программатор, то померяйте напряжение на закороченном 1 и 2 контакте относительно земли: если там 3,3В есть, то паять к принтеру не надо. Основная проблема теперь в том, что придется поднимать вторую от угла ногу процессора! Не вторую, по счету, а вторую от угла. Проблема здесь в том, что по инету бродит фото, где написано 2 ногу, фото крупным планом, но процессор другой! Увлекшись фотографированием я сам опять наступил на эти грабли и поднял не ту ногу! Но времени переснимать, к сожалению, не было. Далее несколько фото того как поднимать ногу иголкой, но нога неправильная. Правильная нога на фото выше! Процедура такова: капаем припоем (а лучше сплавом Розе/Вуда) на 2 крайних ноги. Затем вставляем иголку, греем припой паяльником и поворачиваем немного против часовой стрелки: Лишний припой убираем оплеткой Теперь опускаем первую с края ногу и паяем провода ко всем контактным площадкам. В последнюю очередь паяемся ко второй с краю ноге процессора, предварительно зафиксировав скотчем/изолентой провод. В итоге получается вот такая экибана: Еще раз повторюсь, что по этой фото я заметил что не туда припаял провод к процессору. Паяем его правильно, припаиваем консоль (usb-uart) и подключаем шлейфы назад. Вот так должно получиться:ну и все вместе выглядит примерно так: Все, с пайкой на пока закончили. Подключаем принтер, консоль, программатор у компьютеру. Если консоль паяли, то ставим например Tera Term, выбираем нужный порт и скорость 115200. Все остальное по умолчанию. Не забываем подключиться к порту. Подключаем в сеть принтер. Нажимаем принтскрин на принтере и не отпускаем, нажимаем и отпускаем «сеть», ждем 3 секунды и отпускаем принтскрин. Принтер обычно перемагривается лампочками и загорается зеленая. Попутно в диспетчере задач видим устройства «нет подключенного принтера» и «поддержка usb принтера»: Тем временем в консоли бегут буковки: запускаем flashme.bat: тем временем в консоли (Если честно, я не уверен насчет правильности последующей фотки ибо есть подозрение что я ее мог перепутать делая скрин плохого кабеля 🙁 ): Этими действиями мы закинули загрузчик, и теперь нужно влить новую прошивку. Вливаем MA_2160_05.hd. Для этого перетягиеваем его на usbprns2.exe в проводнике или запускаем из командной строки «usbprns2.exe MA_2160_05.hd» я предпочитаю второй вариант: в консоли: Ну вот и все — принтер унижен! 🙂 Отключаем все от принтера, снимаем плату, распаиваем и собираем все назад. Не забываем заклеить скотчем чип на картридже или вовсе его выковырять. Напоследок хочу рассказать о проблемах при перепрошивке. 1. Вы припаяли что-то не так и не туда, тогда программа для прошивки не сможет подключиться к процессору, не отобразит регистры, выдаст кучу ошибок итд. Вы это увидите. 2. Случается так, что кабель принтера совсем Г, тогда вы получите вот такое в консоли: и это, собственно один из не многих случаев, когда нужна консоль. Сами понимаете — оно и тут не очевидно что кабель не очень, а без консоли вообще тоска. 3. Не делайте длинные провода от шлейфа программатора — поймаете помехи. 4. Иногда по какой-то причине принтеры с прошивкой V1.01.02.00 отказываются прошиваться. Лучше сразу обновите до V1.01.02.01 — запустите ML216x_V1.01.02.01.exe, там по ходу разберетесь. Кое какие фото не моей платы, а взяты с просторов инета — ибо не получились фото, а принтера уже не было… Вот вроде и все. Будем надеяться что мой опыт кому-то пригодится.Архив со всем необходимым тут

Иногда полезен программатор J-Link, не буду вникать в тонкости и его плюсыминусы, но если у Вас в наличии дешевый китайский ST-Link — то считайте, что у вас 2 версии программатора по необходимости! Интересно узнать, как это делать на китайских клонах? Читай дальше 😉

Внимание! Материал ниже представлен исключительно в ознакомительных целях, и если Вам необходим J-Link в коммерческих целях, то следует приобрести официальный программатор.

На просторах Ebay или AliExpress по ключевому слову «ST-Link v2» можно найти множество клонов. Практически все они собраны на STM32F103C8T6 , но, судя по всему, можно нарваться и на другой вариант с камнем STM32F101CBT6 как отписались в комментариях. Такой не подходит и лучше узнать у продавца, если хотите купить в закрытом корпусе или не уверены, что стоит на плате у продавца. (поправка! ВОТ ТУТ пишут, что прекрасно обновляются клоны и на этом камне, но USB в STM32F101CBT6 нет по документации, возможны багиглюки). У меня же в наличии вот такой (также собирал свой собственный — описанный способ прошивки на нем тоже работает):

Есть различные варианты, они будут идентичны этому. Примерная схема этого варианта:

Ну что, приступим! Для работы нам понадобится:

  • сам программатор, естественно (официальный сайт и драйвера, если понадобится);
  • драйвера для J-LINK — взять тут (J-Link Software and Documentation Pack);
  • пакет с утилитой обновления — STLinkReflash_161007.zip (а тут официальный сайт).

Реклама

Изначально утилита от SEGGER не видит китайские клоны и поддерживает только официальные отладочные платы с этим программатором и сами официальные программаторы. Но на форуме esp8266.ru было найдено решение (спасибо pvvx!) — необходим небольшой патч оригинального STLinkReflash.exe и он будет без проблем обновлять и клоны! 🙂

Патч для STLinkReflash.exe (версия 161007) состоит из замены 3х байт. На всякий случай привожу его тут (адрес: оригинальное значение | новое значение):

  1. 00002568: 75 | 90
  2. 00002569: 66 | 90
  3. 000026AA: 74 | EB

В архиве выше есть как и оригинальный файл, так и патченный — STLinkReflashFixed.exe. Для обновления необходимо использовать его.

Подключаем наш ST-Link, убедитесь, что он корректно определился и на него установились драйвера. Запускаем STLinkReflashFixed.exe. Принимает соглашение от SEGGER:

image

Далее принимаем соглашение от STM:

image

И мы в главном меню:

image
  • [0] Выход
  • [1] Обновить до J-Link
  • [2] Обновить прошивку J-Link
  • [3] Восстановить ST-Link

Выбираем 1-й пункт и прошивка за считанные секунды должна пройти успешно:

image

Если необходимо восстановить обратно, то в меню выбираем 3-й пункт и спустя немного времени будет возвращена прошивка ST-Link:

image

Вот и всё! Удачного программирования! 😉

Примечание:Рекомендации по изменению байт в утилите и схема ST-Link взяты отсюда.

Реклама

На китайских свистках ST-Link реализованы 2 интерфейса — SWD и SWIM. Обычно нужен только первый, т.к. STM8 вещь довольно-таки в себе и проще уже применять STM32 (мало того, что возможностей больше, так и IDE выбор получше, имхо), поэтому интерфейс SWIM (для STM8) как-то и не нужен. Предлагается незначительная переделка платы, после которой SWIM_RST выход заменяется на TRST, что полезно иногда при залоченом STM32 (не нужно жать на кнопку сброса) или для RTL871x.

Переделка крайне проста и всё показывает одно фото (кликни для увеличения):

  • image

Тут отпаиваем R17, одной стороной (ламелькой) подпаиваем к правому паду (ведущему к гребенке, лучше прозвоните на своей плате при аналогичной переделке), а второй вывод (ламельку) одножильным проводом в лаке (можно взять с катушек или трансформаторов, 0,1-0,2мм диаметра) соединяем с выводом 18 (PB0). В гребенке штырь с SWIM_DATA можно выпаять — она уже без надобности, я дополнительно цапонлаком закрасил шелкографию на нижней стороне платы, что бы не путала.

  • image

Вот и вся переделка. 🙂 Осталось добавить немного термоусадки и карманный J-Link готов:

Реклама

UPDATE 2017.07.23:

Патч для STLinkReflash.exe (версия 170628) аналогичный и так же состоит из замены 3х байт. Архив для скачивания — STLinkReflash_170628.zip.

Для прошивки использовать STLinkReflashFixed.exe. Также в архиве сохранён оригинальный файл.

UPDATE 2018.08.13:

Патч для STLinkReflash_170807, присланный анонимным читателем (я не делал fixed версию и не проверял):

  1. 00002569: 75 | 90
  2. 0000256A: 70 | 90
  3. 000026B5: 74 | EB

UPDATE 2019.11.19:

Архив для скачивания STLinkReflashFixed.exe (версия 190812) — STLinkReflash_190812.zip.

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий