1. Начальная прошивка или обновление программного обеспечения


Итак мы держим в руках две платы проекта: автопилот и СТДАПП (модуль для стандартных аппаратур). Нам необходимо их оживить. Для этого нам потребуется одна батарея от 5 до 18 вольт (самый удобный вариант 3S – LiPо), стандартный USB кабель USB-Mini и компьютер с Windows. Весь необходимый софт и программы скачиваются с сайта проекта из раздела DOWNLOADS.

1.1 Обновление прошивки платы автопилота 

 

         В первую очередь нам необходимо прошить плату АП. Для этого нам потребуется следующий софт:

-      Текущая прошивка АП в hex формате.

-      Утилита DfuSe Demo.

 

На сайте DfuSe Demo представлена для 32-ух и 64-ех битных Windows платфор, качайте правильную под себя. На сайте производителя ST.COM периодически появляются обновления.

 

Запускаем установку DfuSe. После установки у вас появятся два приложения в пути c:\Program Files\STMicroelectronics\Software\DfuSe\BIN\

-      DfuSeDemo.exe

-      DfuFileMgr.exe

 

Иногда при установке DfuSe ругается на русские буквы в путях ярлыков. Внимание на это не обращаем.

 

Теперь нам необходимо запустить плату АП в режиме загрузке ПО через USB. Делается это так:

-      Жмем на плате кнопку TS1 м держим ее

-      Не отпуская кнопку, включаем USB кабель

 

После этого Windows должна обнаружитьDfuSe устройство и попросит драйвера. Если автоматически драйвера не встали, то укажите местонахождение драйверов как c:\Program Files\STMicroelectronics\Software\DfuSe\Driver\ либо другое, если вы делали установку в путях не по умолчанию. После этого драйвера встанут и устройство готово к работе.

 

После установки драйверов запускаем файл DfuFileMgr.exe Поскольку прошивалка хочет прошивку в некотором своем преобразованном формате, а не в чистом HEX, то необходимо сначала сконвертировать ту прошивку, которую вы скачали с сайта в нужный формат для Dfu. Для этого и служит утилита DfuFileMgr.exe. Она преобразует HEX в DFU. После запуска видим диалог, в котором выбираем опцию по умолчанию: I want to GENERATE DFU file from S19, HEX or BIN files. Жмем <OK>, попадаем в следующий диалог. Теперь выбираем файл для преобразования. Жмем кнопку “S19 or Hex..”. Выбираем файл со скачанной прошивкой (при необходимости в выпадающем списке указываем, что хотим *.hex файлы). Затем указываем имя конечного файла на выходе преобразования с расширением *.dfu. Далее жмем кнопку “Generate”. На все диалоги с предупреждениями соглашаемся. В результате видим надпись об успешном преобразовании. Теперь у нас есть файл прошивки с расширением DFU. Он нам потребуется на следующем этапе.

 

Полученный файл DFU нам необходимо залить на плату АП. (Если к этому моменту плата АП не введена в режим программирования, то вводим ее в этот режим при помощи удержания кнопки TS1 и передергивания USB разъема) Запускаем DfuSeDemo.exe. Если драйвера вы поставили правильно и плата АП исправна, то в окне программы вы увидите выбранное устройство «STM Device in DFU Mode». Это говорит о том, что плата АП готова к перепрошивке. В секции «Upgrade or Verify Action» жмем кнопку «Choose..» и выбираем наш *.dfu файл, полученный на предыдущем этапе. Если выскочит предупреждение о совместимости, соглашаемся на Upgrade все равно. Включаем галочку «Verify After Download». Далее жмем кнопку «Upgrade». Наблюдаем индикатор перепрошивки. И наконец сообщение об успешном ее завершении. Закрываем программу DFU, она нам больше не нужна, так как прошивка уже обновлена. USB кабель выключаем из компьютера. Далее мы можем запустить саму прошивку АП, для этого достаточно воткнуть еще раз USB, но на этот раз кнопку TS1 не нажимаем. Как перейти в консоль, описано в разделе 5.

1.2 обновление прошивки модуля СТДАПП

 

         Для обновления прошивки СТДАПП нам потребуется батарея для подачи питания на модуль СТДАПП. Шлейф для соединения модуля и платы АП, USB кабель.

 

Сначала соединяем модуль и АП 6-и пиновым шлейфом. (В отличие от стандартного режима работы связки модуль-АП, шлейф нужен именно 6-и пиновый.) Далее подаем питание на разъем модуля. Не следует путать плюс с минусом. Минус на плате обозначен символом «GND». Если питание подано успешно, то с платы модуля питание будет подано так же и на плату АП, о чем сигнализируют светодиоды на плате АП.

 

Теперь нам необходимо подключить USB кабель в АП и в компьютер. Если плата АП исправна, то Windows должен найти новое устройство Virtual Com Port For STM32. Драйвера для этого устройства можно скачать на сайте производителя или на сайте проекта. Для 32-ух битных платформ скачиваем VCP_V1.3.1_Setup.exe и устанавливаем. При необходимости еще раз передергиваем USB кабель. После этого Windows найдет драйвера и установит автоматически. Если все же этого не происходит, то указываем местонахождение драйверов в ручную как c:\Program Files\STMicroelectronics\Software\Virtual COM Port Driver\. После этого ОС должна найти и поставить драйвера.

Если драйвера виртуального COM порта встали нормально, то в системе появится новый COM порт из верхнего диапазона. Вам необходимо посмотреть его номер в списке системных устройств и оборудования. Предположим новый порт встал как COM18. Далее нам необходимо заставить плату АП работать в качестве аппаратного преобразователя USB-COM для платы модуля. Для этого сначала подключаемся любой программой для работы с COM портом в режиме терминала и открыть наш новый порт COM18. В качестве программы консоли можно скачать с сайта проекта XShell4.

 

Открываем свою консольную программу и настраиваем соединение с COM18. Подключаемся к COM18 и нажимаем <Enter>. Должны увидеть приглашение в виде стрелки и мигающего курсора:

=>

Далее набираем команду DFU и жмем <Enter>. При правильно работающем модуле должны увидеть следующую картину:

=>dfu

DFU Mode activated, close console and start DFU Utility

 

Далее отключаемся от COM18 соединения путем нажатия Disconnect в консоли, либо просто закрываем окно консоли.

 

Теперь нам необходима программа для прошивания STM32 микроконтроллеров через COM порт. Называется она STMicroelectronics flash loader.exe и находится в архиве stm32-stm8_flash_loader_demo-2.5.0.zip, который можно скачать с сайта проекта. После установки в путях c:\Program Files\STMicroelectronics\Software\Flash Loader Demonstrator\ вы обнаружите STMicroelectronics flash loader.exe. Запускаем его. Выбираем свой COM18(или другой ваш номер!) порт. Скорость 19200 (с другими скоростями поэкспериментируете самостоятельно), Parity Even, Echo disabled, timeout 10. Жмем кнопку <Next>. Если все хорошо и микроконтроллер нашего модуля доступен, то вы увидите следующую страницу с надписью “Target is readable ” и размер флеш памяти своего устройства: 128 либо 64к в зависимости от типа МК на вашем модуле. Жмем кнопку <Next>. Видим диалог с перечисленными страницами доступной памяти. Жмем кнопку <Next>.  Далее мы видим диалог с возможными действиями. Нам нужно программирование. Для этого ставим точку напротив Download to Device”, указваем путь к hex-файлу прошивки модуля и ставим точку рядом с “Erase necessary space”. Жмем кнопку <Next> и наблюдаем процесс до момента успешного завершения. Все, мы прошили наш СТДАПП. Закрываем Flash Loader Demonstrator. Отключаем USB, отключаем питание модуля.

 

Далее мы можем приступить к начальной настройке параметров АП и модуля. Все это делается через команды консоли платы АП. Об этом читайте в соответствующих разделах.

Бесплатный хостинг uCoz