разработка и программирование электронных устройств

Быстрый старт с микроконтроллерами STM32F10x. Установка необходимого инструментария

Для легкого начала работы с любым типом микроконтроллеров кроме базовых знаний необходим простой и функциональный набор инструментов. До сих пор в своих публикациях я использовал в качестве интегрированной среды разработки Eclipse. Эта IDE очень функциональна. Среди ее недостатков самый существенный — это большие затраты ресурсов персонального компьютера и как следствие — медленная загрузка и работа в системах с низкой производительностью.

Существуют неплохие альтернативы Eclipse, например Code::Blocks. IDE Code::Blocks разработана на языке C++ с использованием библиотеки wxWidgets.

В последнее время появилось большое количество модификаций Eclipse от различных производителей (этому способствует свободная лицензия Eclipse). Многие производители пытаются превратить этот бесплатный инструмент в коммерческий продукт. В следствии такой политики производителей программного обеспечения на основе Eclipse бесплатные (или пробные) версии их продуктов имеют существенные ограничения.

Среди преимуществ коммерческих IDE – низкий порог вхождения в процесс разработки. То есть пользователь запускает установочный пакет и после установки получает полностью готовую к работе среду разработки.

В случае самостоятельной установки Eclipse и инструментария GNU Toolchain вам придется потратить некоторое время и усилия на установку и настройку среды разработки.
Начальные трудности могут отпугнуть новичков , заставить отдать предпочтение пробным версиям коммерческих IDE, с которыми проблемы начнутся чуть позже в процессе активного использования.

Я решил понизить порог вхождения начинающим (и всем желающим) в процесс разработки программ для микроконтроллеров ARM на базе полностью бесплатного инструментария и создал установочный пакет ARM_Toolchain с наиболее необходимыми по моему мнению инструментами.
Вот какие программы вошли в этот установочный пакет :

  • Eclipse IDE for C/C++ Development вместе с наиболее необходимыми плагинами , среди которых :
  • Plug-in Zilin CDT для отладки программ.
  • Плагины для работы с системами контроля версий SVN и Git.
  • Plug-in для создания документации в формате Doxygen
  • GNU ARM Plug-in
  • IDE Code::Blocks
  • Набор инструментов GNU ARM
  • Набор консольных утилит MSYS в составе MinGW (make, cp, rm и др.)
  • Отладчик OpenOCD с поддержкой адаптеров на основе FT2232, а также ST-Link
  • ST-Link утилиты. В том числе GDB Server для отладки.
  • Набор библиотек для микроконтроллеров STM32 :
  • Библиотека стандартной периферии для всех линеек STM32xxxx
  • Библиотека поддержки USB от компании ST Microelectronics
  • Альтернативная библиотека libopencm3
  • Операционная система реального времени FreeRTOS с многочисленными примерами.

Установочный пакет создан в бесплатной программе Inno Setup Compiler. Загрузить его можно, нажав на кнопку с надписью «скачать» в конце этой статьи. Размер установочного пакета составляет 475 Мбайт. Время загрузки составляет приблизительно пять минут при наличии высокоскоростного соединения с Internet. При установке пакета выберите название каталога без пробелов поближе к корневому каталогу. Это нужно для того, чтобы не возникли проблемы при запуске утилит командной строки из набора GNU Toolchain, которые изначально разрабатывались под Linux, но были откомпилированы под Windows.

После установки каталог с пакетом ARM_Toolchain займет 1Гбайт дискового пространства. Вы можете удалить ненужные вам программы , чтобы сэкономить дисковое пространство.
Я включил в пакет две наиболее популярные свободные интегрированные среды разработки CodeBlocks и Eclipse.

При запуске ARM_Toolchain из меню «Пуск» запускается небольшая программка, которая предлагает выбрать для запуска одну из этих IDE.

Примеры из каталога Examples будут создаваться для обеих сред разработки.
Попробуйте обе эти IDE и выберите ту, которая для вас будет наиболее удобной и функциональной.
Поэтапный процесс установки показан на следующих рисунках.

После установки в меню «Пуск» появится пункт «ARM_Toolchain», нажав на который будет запущена программа выбора одной из двух доступных интегрированных сред разработки.
Можете просто создать ярлык используемой IDE на рабочем столе, чтобы каждый раз не выбирать среду разработки.
Вот так выглядит Code::Blocks 12.11, который включен в установочный пакет .

В следующей статье обучающей серии «Быстрый старт с микроконтроллерами stm32f10x» я детально опишу процесс настройки IDE и создание простого проекта для микроконтроллера stm32f103rbt6.

В качестве стартовой платы для отладки примеров программ я рекомендую выбрать одну из недорогих плат Olimex, например Olimexino-STM32.

При сравнительно низкой цене эта платка содержит разъем miniUSB , источник питания с входным напряжением 9…30 В , драйвер CAN, разъем microSD , пару светодиодов.
Единственным недостатком этой платы является очень мелкий разъем JTAG/SWD.
Программирование платы производится через интерфейс USB из среды разработки для ARDUINO MAPLE IDE. Этот вариант работы с платой я в своих публикациях рассматривать не буду.
Все примеры программ мы будем загружать в контроллер через интерфейс JTAG (SWD) .
Так что все-таки придется спаять небольшой кабель для подключения к разъему на плате Olimexino-STM32.

Также я планирую параллельно создавать проекты для платы STM32-H103 и созданной для нее платы расширения , описанной в этой ветке форума Отладочная плата на основе STM32F103-HB

Продолжение следует.

P.S.: Я специально убрал примеры проектов из пакета ARM_Toolchain, оставив каталог Examples пустым, чтобы
при добавлении новых примеров не пришлось пересобирать дистрибутив. Все примеры программ, описанные в дальнейших публикациях серии «Быстрый старт с микроконтроллерами STM32F10x», будут помещены в архив Examples.zip по той же ссылке, что и установочный пакет ARM_Toolchain.

Leave a Reply

You must be logged in to post a comment.