ac6 system workbench for stm32

Your solution for Micro-Controller Development

Ac6-Tools offers a complete approach, ready to work and expandable for your future needs

  • A complete graphical, user friendly environment based on Eclipse
    • We support all Eclipse versions from Juno to Luna
  • GCC-based full fledged toolchains, with no size limitations
  • Create your whole embedded system in a single tool:
    • Define your target platform from a set of predefined elements
    • Configure, compile and install your application
    • Debug on the target with built-in or external debug probes
    • Manage directly your target platform and its evolutions
    • Flash your system image from the IDE

The Ac6 System Workbench for STM32 can be downloaded free of charge from the OpenSTM32.org community web site.

As an Eclipse component, once installed, System Workbench can be updated using the standard Eclipse mechanisms. The Linux and MCU versions of System Workbench are fully compatible and can be installed in the same Eclipse platform thus providing an integrated development environment optimized for distributed applications split between Linux and MCUs..

Урок 50

Сегодня мы с вами попытаемся воспользоваться бесплатной средой программирования System Workbench for STM32 .

Пока я сам, конечно, не до конца разобрался со всеми тонкостями использования данной среды, но, думаю, разобраться придётся и удастся. Ибо деваться нам некуда.

Вы конечно можете сказать на это: «Но у нас же есть Keil!»

Ан нет. Если версия ПО ARM Keil у нас бесплатная, то мы не сможем собрать проект, если на выходе размер прошивки у нас превысит размер 32 килобайта.

Некоторые, конечно, пойдут по пути обхода легальных путей приобретения данного ПО, но я не могу себе такое позволить, так как я даю уроки в YouTube. А мы все прекрасно знаем, как Google относится к нарушению авторских прав. Церемониться он не будет. В лучшем случае мне выпишет страйк, а в худшем прихлопнет канал. Это вовсе не в моих, а тем более и не в ваших интересах.

Поэтому у нас два пути. Выбирать полностью бесплатную среду программирования, либо приобретать Keil. Но 8000 евро есть не у каждого, у меня точно нет, поэтому остается путь единственный.

Возможно, конечно, ещё поискать что-то. Но я уже поискал, и не нашел ничего кроме System Workbench for STM32, основанного на бесплатной среде программирования Eclipse. Также это позволит нам потренироваться вообще со средой Eclipse, к которой существует масса плагинов и пакетов, что также позволит нам поиграться с нашими контроллерами под операционной системой Linux. Это, конечно, очень далёкие планы, но в глубине моей душе они уже бродят.

Специалисты ST Microelectronics также пришли к выводу, я также к ним охотно присоединяюсь, что в таком случае целесообразно использовать System Workbench в связке с Eclipse, ибо они бесплатны. Ну и также существует масса примеров в репозитории, которые написаны и для этой среды разработки.

Поэтому начнем устанавливать эти компоненты.

Вводим, как всегда, в поисковой строке st.com вот это «SW4STM32» и скачиваем данное ПО. Для этого st.com переместит нас на к хозяину IDE. Скачиваем System Workbench for STM32 installer для своей операционной системы. Устанавливаем, запускаем, указываем рабочее пространство для проектов.

Давайте сначала попробуем собрать и прошить готовый проект. Для испытаний возьмём нашу любимую STM32F4-Discovery.

Зайдём в папку Диск:UsersПользовательSTM32CubeRepositorySTM32Cube_FW_F4_VX.XX.X (версия у каждого своя, диск и пользователь также у всех свой). С папки «Drivers» в данной папке снимем атрибут «только для чтения».

Если у Вас в пути к проекту будет присутствовать хотя бы одна нелатинская буква, то ничего не получится. Скопировать проект тоже не вариант, так как он ссылается на библиотеки, расположенные в других папках по относительным путям. Если Вы в Keil загружали примеры, то они у Вас находятся по пути «Диск: Keil_v5ARMPackKeilSTM32F4xx_DFP». Можете использовать оттуда.

Затем зайдем в папку «Projects». Уже в этой папке зайдём в папку «STM32F4-Discovery». Там зайдём ещё в одну папку, например в «GPIO», а уже в ней с папки «GPIO_EXTI» снимем аттрибут «только для чтения».

Вернёмся в запущенный System Workbench и нажмем слева правой кнопкой мыши и выбираем «Import».

Выбираем Existing Projects Into Workbench. Далее в «Select root directory» указываем папку с проектом «Диск:UsersПользовательSTM32CubeRepositorySTM32Cube_FW_F4_VX.XX.XProjectsSTM32F4-DiscoveryExamplesBSPSW4STM32» и жмем Finish. Проект появился у нас в рабочем пространстве слева.

Откроем какой-нибудь файл в проекте, например main.c. Потому что, если у нас будет много проектов, то среда может не понять, какой мы именно проект будем компилировать, а если фокус будет находиться в файле нужного проекта, то среда им и будет заниматься.

Теперь попробуем скомпилировать проект. Нажимаем меню Build -> Build Project. (нажмите на картинку для увеличения)

Проект у нас должен собраться. Но так как у меня была кириллица в пути к файлам, то скомпилировать проект не удалось, и в этом случае мы попадаем в ошибку.

« arm-none-eabi-gcc: error: C:/Users/TырфхыхЎ/STM32Cube/Repository/STM32Cube_FW_F4_V1.13.0/Projects/STM32F4-Discovery/Examples/BSP/Src/main.c: No such file or directory

В таком случае удалим проект из дерева проектов и загрузим из папки «Keil_v5».

Таким же образом попытаемся его собрать. Проект теперь собрался

Осталось проект прошить. В первый раз лучше это сделать через отладку, чтобы не плясать потом с бубном.

В панели инструментов жмём треугольник справа от кнопки «Debug», там выбираем пункт меню «Debug As -> Ac6 STM32 C / C++ Application».

Выбираем программатор и соглашаемся.

Если что-то будет не так и будут ошибки, то необходимо будет зайти в свойства проекта. Щелкаем правой кнопкой мыши по самому верхнему уровню дерева проекта и выбираем «Properties»

Там заходим в «Run/Debug Settings» и удаляем оттуда конфигурацию.

Пробуем опять через панель инструментов «Debug As -> Ac6 STM32 C / C++ Application» запустить отладку. Теперь должно всё пойти нормально.

Соглашаемся с диалогом и попадаем в отладку. Жмем кнопку Resume (F8) в панели инструментов и проект должен будет прошиться

Останавливаем отладку кнопкой Terminate

Чтобы прошивка продолжала работать в контроллере, перезагружаем его кнопкой на отладочной плате.

Возвращаемся из отладки в основное окно (C / C++)

Теперь можно спокойно работать с проектом и прошивать уже через обычный запуск проекта на выполнение

The STM32 Systems Resource

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

With System Workbench for Linux , Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world.
And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download two short videos (registration required) highlighting:
  • Motor control by gestures (image processing on Cortex-A7/Linux, real-time on bare metal Cortex-M4).
  • Simultaneous debug of Linux and bare-metal applications.
  • Page actions
  • Print

Welcome to the STM32 Community site, developped and managed by Ac6 in partnership with ST Microelectronics . The goal of this site is to create a knowledge hub for everyone who is interested in building STM32-based embedded systems to participate and collaborate together.

This is also the place to find “System Workbench for STM32” the free Integrated Development Environment for STM32 microprocessors developped by Ac6 Tools .

Registration

Accessing OpenSTM32.org is free, but you need to be logged in to have access to some parts of the site, like the System Workbench for STM32 documentation and download instructions.

You should either Log in or register on OpenSTM32.org.

Оцените статью