Как считать прошивку контроллера который не был залочен? Да очень просто. Подключаем плату через st-link и запускаем программу STM32CubeProgrammer или ST-LINK Utility. Обе программы имеют вполне годный консольный help и документацию, в которой он, по сути, дублируется. STM32CubeProgrammer. Сохраняет прошивку в bin, hex, srec STM32_Programmer_CLI.exe -c port=SWD -r 0x08000000 0x20000 firmware.srec В port выбирается используемый интерфейс, далее идет адрес старта прошивки (0x08000000), размер прошивки (0x20000) и название файла куда будет сохранена прошивка. ST-LINK Utility. Сохраняет прошивку в файл. st-link_cli.exe -c -Dump 0x08000000 0x20000 firmware Ключ -c выполняет подключение, ключ -Dump переводит программу ST-LINK в режим чтения прошивки, далее идет адрес старта прошивки (0x08000000), размер прошивки (0x20000) и название файла куда будет сохранена прошивка. Сравнить слитый файл с прошивкой на микроконтроллере можно через следующую команду в ST-LINK Utility. Выведет первый не совп