Программирование ARM STMFlashLoader Demo Fri, December 13 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.


STMFlashLoader Demo Печать
Добавил(а) microsin   

Демонстрационная утилита загрузки STM32 Flash (FLASHER-STM32) это свободное и бесплатное ПО от STMicroelectronics, работающее на операционных системах Microsoft® Windows.

STMFlashLoader1 STMFlashLoader2 STMFlashLoader3 STMFlashLoader4

Утилита обменивается данными с программируемым микроконтроллером через RS232 (или переходник USB-UART) с загрузчиком STM32 (system memory bootloader). Подробную информацию о работе загрузчика см. апноут AN2606 [2]. Информацию по протоколу USART загрузчика можно найти в апноуте AN3155 [3].

Загружаемом установочном пакете [1] кроме GUI-утилиты также содержится и версия командной строки, которую удобно использовать в BAT-файлах для автоматизации программирования. Также предоставляется исходный код в виде проекта Microsoft® Visual Studio 12.

[Как использовать]

На примере STM32F4xx, процесс по шагам:

1. Подключите переходничок USB-USART к ножкам приема-передачи USART1 (PA10 RX, PA9 TX) или USART3 (PC11 RX, PC10 TX).
2. Подайте лог. 1 (3.3V) на ножку BOOT0, и лог. 0 (GND) на ножку BOOT1. У микроконтроллера STM32F4xx для BOOT0 выделена специальная ножка корпуса, а функция BOOT1 совмещена с ножкой порта PB2. Сбросьте микроконтроллер (или передерните у него питание).
3. Запустите графическую утилиту STMFlashLoader Demo. Мастер проведет Вас по необходимым шагам процесса.
4. После завершения программирования подайте лог. 0 на ножку BOOT0 и сбросьте микроконтроллер.

[Решение проблем]

1. Утилита не видит программируемый микроконтроллер ("No response from the target, ...").

STMFlashLoader trouble1

Основных причин две - нет соединения RX/TX с микроконтроллером, и неправильно установлены уровни BOOT0 и BOOT1.

2. Невозможно стереть программируемую Flash-память ("FAIL: Unable to erase flash").

STMFlashLoader trouble2

Причина в том, что установлена защита от записи. Снимите её в диалоге мастера, см. скриншоты:

STMFlashLoader disable write protection1 STMFlashLoader disable write protection2

V2.8.0 - 1 сентября 2015

Новые функции

   + Добавлена поддержка STM32L4x6xx
   + Добавлена поддержка STM32L0xx 192K flash
   + Добавлена поддержка STM32F74x/5x
   + Добавлена поддержка STM32F412xx/F410xx/F446xx/F469xx/F479xx
   + Добавлена поддержка STM32F303/302xD/E
   + Исправлена работа с номерами портов до 255
   + Исправлена поддержка GUI/command версий .bin со смещением адреса, отличающегося от базового адреса
   + Исправлена STUARTBLLIB.dll для поддержки не выровненного адреса в конце области flash. Но данные всегда должны нацело делиться на 4 байта.

Известные ограничения

   + Управление байтами опций STM8, STM32L1/L0/L4 и STM32F0/2/3/4/7 поддерживается только в версии с командной строкой для пакетного программирования.
   + Автоматический выбор некоторых устройств STM8 может не работать правильно. Если необходимо, используйте версию командной строки и BAT-файлы.
   + На некоторых STM32 MCU защита от записи последних страниц, которая управляется последним битом защиты bit7 в байте опций WPR3 работает правильно, однако окно GUI и чекбоксы могут не обновляться соответствующим образом на некоторых MCU с размером памяти больше 128 килобайт. Чтобы разрешить/запретить защиту от записи последних страниц, можно в GUI установить или отключить только первую страницу этой группы страниц.
   + Функция STM32L "Erase all" не поддерживается. Подробнее см. AN2606 [].

V2.7.0 - 15 сентября 2014

Новые функции

   + Добавлена поддержка новых MCU STM32F0xx/STM32F3xx/STM32F4xx/STM32L1xx/STM32L0xx
   + Исходный код проекта обновлен до Visual Studio 2013

Известные ограничения

   + Управление байтами опций STM8, STM32L1/L0 и STM32F0/2/3/4 поддерживается только в версии с командной строкой для пакетного программирования.
   + Автоматический выбор некоторых устройств STM8 может не работать правильно. Если необходимо, используйте версию командной строки и BAT-файлы.
   + На некоторых STM32 MCU защита от записи последних страниц, которая управляется последним битом защиты bit7 в байте опций WPR3 работает правильно, однако окно GUI и чекбоксы могут не обновляться соответствующим образом на некоторых MCU с размером памяти больше 128 килобайт. Чтобы разрешить/запретить защиту от записи последних страниц, можно в GUI установить или отключить только первую страницу этой группы страниц.
   + Функция STM32L "Erase all" не поддерживается. Подробнее см. AN2606 [].

V2.6.0 - 07-November-2012

Новые функции

   + Добавлена поддержка STM32F3xx
   + Добавлена поддержка STM32F0xx
   + Добавлены данные байт опций для STM32L

Известные ограничения

   + Управление байтами опций STM8, STM32L1 and STM32F0/2/3/4 поддерживается только в версии с командной строкой для пакетного программирования.
   + Автоматический выбор некоторых устройств STM8 может не работать правильно. Если необходимо, используйте версию командной строки и BAT-файлы.
   + На STM32F1xx защита от записи последних страниц, которая управляется последним битом защиты bit7 в байте опций WPR3 работает правильно, однако окно GUI и чекбоксы могут не обновляться соответствующим образом на некоторых MCU с размером памяти больше 128 килобайт. Чтобы разрешить/запретить защиту от записи последних страниц, можно в GUI установить или отключить только первую страницу этой группы страниц.
   + Функция STM32L "Erase all" не поддерживается. Подробнее см. AN2606 [].

V2.5.0 - 25 ноября 2011

Новые функции

   + Добавлена поддержка STM32L1xx 32 килобайта
   + Добавлена поддержка STM32F4xx
   + Добавлена поддержка STM32F1xx low density Value line
   + Добавлены все файлы исходного кода для версии командной строки, включая DLL (файлы, STUARTBLIB и т. п.)
   + Добавлена новая лицензия: MCD-ST Liberty SW License Agreement V2

Улучшения

   + Исправлена функция "Select all" стирания страниц для STM32L1xx в GUI demo (режим выбора)
   + Добавлены данные EEPROM для STM32L
   + Исправлено управление выходами RTS и DTR в версии командной строки
   + Добавлены BAT-файлы для автоматического обновления STM32F2/F4 MB786 revB ST evaluation board
   + Исправлена запись дополнительных байт в конце страниц flash
   + Исправлено (удалено) управление потоком в GUI, и улучшено только в версии командной строки

Известные ограничения

   + Управление байтами опций STM8, STM32L1 и STM32F2 поддерживается только в версии с командной строкой для пакетного программирования.
   + Автоматический выбор некоторых устройств STM8 может не работать правильно. Если необходимо, используйте версию командной строки и BAT-файлы.
   + На STM32F1xx защита от записи последних страниц, которая управляется последним битом защиты bit7 в байте опций WPR3 работает правильно, однако окно GUI и чекбоксы могут не обновляться соответствующим образом на некоторых MCU с размером памяти больше 128 килобайт. Чтобы разрешить/запретить защиту от записи последних страниц, можно в GUI установить или отключить только первую страницу этой группы страниц.
   + Функция STM32L "Erase all" не поддерживается. Подробнее см. AN2606 [].

V2.4.0 - 18 июля 2011

Новые функции

    + Добавлена поддержка STM32F1xx High density Value line
    + Добавлена поддержка STM32L1xx
    + Добавлена поддержка STM32F2xx
    + Добавлено управление потоком в GUI с использованием RTS и DTR

Известные ограничения

   + Управление байтами опций STM8, STM32L1 и STM32F2 поддерживается только в версии с командной строкой для пакетного программирования.
   + Автоматический выбор некоторых устройств STM8 может не работать правильно. Если необходимо, используйте версию командной строки и BAT-файлы.
   + На STM32F1xx защита от записи последних страниц, которая управляется последним битом защиты bit7 в байте опций WPR3 работает правильно, однако окно GUI и чекбоксы могут не обновляться соответствующим образом на некоторых MCU с размером памяти больше 128 килобайт. Чтобы разрешить/запретить защиту от записи последних страниц, можно в GUI установить или отключить только первую страницу этой группы страниц.

V2.2.2 - 2 сентября 2010 (не публичная версия)

Улучшения

   + Обновление 'STUARTBLLIB.dll' v2.2.2:
      - Исправлена отправка дополнительных случайных байт в конце, если для STM32 посылаются не выровненные данные.
      - Исправлено стирание страниц/секторов меньших чем 10.

V2.2.0 - 3 мая 2010

Новые функции

   + Добавлена поддержка STM32F1xx Value line and XL density
   + Добавлена поддержка новых STM8L

Улучшения

   + Исправлена функция "removes FFs data" в GUI demo или утилите командной строки
   + Исправлена отправка дополнительного "0xFF" или случайного байта в конце flash, если посылается нечетное количество данных
   + В версии командной строки исправлено управление выходами RTS и DTR
   + Исправлены специальные Echo-режимы для эмуляции LIN через UART для STM8, когда используется трансивер

Известные ограничения

   + Автоматический выбор некоторых устройств STM8 может не работать правильно. Если необходимо, используйте версию командной строки и BAT-файлы.
   + На STM32F1xx защита от записи последних страниц, которая управляется последним битом защиты bit7 в байте опций WPR3 работает правильно, однако окно GUI и чекбоксы могут не обновляться соответствующим образом на некоторых MCU с размером памяти больше 128 килобайт. Чтобы разрешить/запретить защиту от записи последних страниц, можно в GUI установить или отключить только первую страницу этой группы страниц.

V2.1.0 - 2 ноября 2009

Новые функции

   + Добавлены новые map-файлы STM8 для поддержки байт опций
   + Добавлена опция режима "Echo" в обмен UART для эмуляции LIN через UART STM8
   + Добавлен новый комбо-бокс с опцией "No erase", когда загружается файл.

Улучшения

   + Исправлена работа с COM-портами, у которых номера больше 9
   + Исправлена опция --o (удалены данные FF) в утилите командной строки
   + Исправлен выбор map-файлов GUI в некоторых частных случаях
   + Исправлено обновление значений окна после чтения байт опций
   + Удален комбо-бокс "Stop Bits" в первом окне GUI
   + Удален выбор CAN через COMBox bridge board
   + Удален выбор DFU для GUI; чтобы использовать DFU bootloader, применяйте DFuSe Software
   + Незначительные улучшения для сообщений диалога и коментариев в версиях GUI и командной строки.

Известные ограничения

   + Автоматический выбор некоторых устройств STM8 может не работать правильно. Если необходимо, используйте версию командной строки и BAT-файлы.

V2.0.0 - 3 июля 2009

Новые функции

   + Добавлены STM32 connectivity line и STM8
   + Добавлен обмен CAN для MCU connectivity line через COMBox bridge
   + Добавлен доступ к DfuSe Demo (утилита DfuSe Demo должна быть установлена).

V1.3.0 - 5 марта 2009

Улучшения

   + Можно выбирать устройство в GUI для MCU не запрограммированного размера
   + Добавлен шаблон Visual studio 2005 workspace в директории INSTALLDIR\src

V1.2.0 - 23 октября 2008

Новые функции

   + Поддержка Low density и STM32 USB Access line

Улучшения

   + Исправлена незначительная проблема с COM-портами, у которых номер больше 9
   + Исправлена незначительная проблема переходов между страницами GUI после разрешения или запрета защиты
   + Удалена информация о размере RAM на странице информации об MCU

V1.1.1 - 16 июня 2008

    + Удален файл лицензионного соглашения

    + Обновлены файлы заголовка, чтобы удалить ссылку на лицензионное соглашение

V1.1.0 - 2 июня 2008

Новые функции

   + Добавлен файл лицензионного соглашения
   + Сохранение последней используемой конфигурации для последовательного обмена
   + Сохранение последних используемых имен файлов для операций выгрузки и загрузки
   + Добавлены команды разрешения/запрета защиты чтения/записи
   + Добавлено окно байт опций для гибкого использования
   + В операции загрузки добавлена возможность обновления байт опций через файлы опций
   + Добавлена версия командной строки
   + Добавлены файлы исходного кода для версии командной строки
   + Добавлены заголовочные файлы и библиотечные файлы общих run-time DLL
   + Добавлены все разновидности семейства STM32, STR75x, и вся продукция STMicroelectronics, где есть поддержка протокола загрузчика.

Улучшения

   + Исправлена незначительная проблема формата операции выгрузки в двоичном файле
   + Исправлена незначительная проблема обновления статуса команды стирания
   + Исправлена проблема операций загрузки, выгрузки и стирания с размером образа (>32k).

V1.0.0 - 25 октября 2007

Создание, первоначальная версия.

[Ссылки]

1. FLASHER-STM32 STM32 Flash loader demonstrator (UM0462) site:st.com.
2. Загрузчик STM32F42xxx и STM32F43xxx.
3. AN3155: протокол загрузчика USART STM32.
4. Прошивка STM32 с помощью STM32 Flash Loader Demonstrator site:ravenium.ru.
5Обновление прошивки ST-LINK на плате STM32 DISCOVERY.

 

Добавить комментарий


Защитный код
Обновить

Top of Page