CLion для микроконтроллеров

Настройте CLion для работы с разными типами оборудования и тулчейнами, выполняйте проверки периферии.

GDB-сервер

Отладка прошивки под GDB-сервером

Если на выбранном вами микроконтроллере возможна отладка с GDB-сервером, теперь можно делать это в CLion, используя специальную конфигурацию Embedded GDB Server. CLion поддерживает OpenOCD, ST-Link GDB-серверы, Segger J-Link GDB-сервер, QEMU и многие другие серверы GDB.

Мы добавили визард для создания конфигураций запуска Embedded GDB Server: в зависимости от выбранного типа GDB-сервера он предложит вам заранее заданный набор аргументов.

OpenOCD

Open On-Chip Debugger

В CLion поддерживается отладка с помощью Open On-Chip Debugger. Для отладки на микроконтроллере используйте новый тип конфигурации Run/Debug «OpenOCD Download and Run».

Для проекта STM32CubeMX CLion создаст конфигурацию автоматически.

Подробнее об интеграции с STM32CubeMX и OpenOCD

Режим просмотра потоков FreeRTOS

Интеграция с RTOS

При выполнении отладки приложений RTOS в CLion можно использовать режим просмотра со списками задач. Вы можете перейти к нужной задаче, чтобы посмотреть ее переменные и другую информацию. IDE поддерживает FreeRTOS, Zephyr и Azure RTOS.

Периферийные устройства

Просмотр периферии для микроконтроллеров семейства ARM

При отладке микроконтроллера важно иметь возможность просматривать регистры периферии. В CLion такое представление доступно для двух типов конфигураций Run/Debug: Embedded GDB Server и OpenOCD Download & Run. В обоих случаях при запуске отладки в окне отладчика появляется вкладка Peripherals. Загрузите соответствующий файл .svd для вашего микроконтроллера и выберите активные периферийные устройства, которые хотите увидеть.

Подробнее

PlatformIO

PlatformIO

PlatformIO — это платформа с открытым исходным кодом, которая помогает разработчикам встраиваемых систем в работе над проектами. Чтобы использовать ее преимущества в своих проектах, попробуйте плагин PlatformIO для CLion, который:

  • Добавляет тип проекта PlatformIO в мастер создания проектов.
  • Работает непосредственно с файлом platformio.ini: отслеживает изменения в нем и обновляет информацию о проекте соответствующим образом.
  • Автоматически создает конфигурации отладки и загрузки.
  • Позволяет производить отладку на микронтроллере прямо из CLion помощью PIO Unified Debugger.
  • Обеспечивает быстрый доступ к часто используемым командам и действиям в окне PlatformIO.
IAR

Тулчейн IAR

Если вы используете компилятор/тулчейн IAR в своих проектах, вы можете делать это в CLion. Проекты, использующие тулчейн IAR, успешно загружаются и работают в CLion.

Важно:

  • Требуется MinGW.
  • В качестве генератора CMake рекомендуем использовать Ninja.
  • Вот несколько советов по использованию CMake с IAR Embedded Workbench.
Настраиваемый компилятор

Настраиваемый компилятор

Представьте себе, что вы используете компилятор, не поддерживаемый в CLion из коробки. Такое нередко случается при разработке встраиваемого ПО. Вы можете сообщить CLion всю необходимую информацию о компиляторе и работать с ним, как если бы для него уже была нативная поддержка.

Для этого перейдите в меню Settings | Build, Execution, Deployment | Toolchains | Custom Defined Compiler и укажите файл *.yaml, содержащий определение используемого компилятора. Посмотрите примеры конфигурационных файлов, подготовленные командой CLion.

MISRA

MISRA C и C++

CLion частично поддерживает MISRA C:2012, MISRA C++:2008 и MISRA C++:2023. Эти стандарты широко используются при разработке встраиваемых систем, особенно в автомобильной промышленности. Проверки MISRA в CLion ускоряют разработку за счет выявления несовместимостей на ранних этапах. Список поддерживаемых проверок вы найдете в базе знаний CLion .

STM32CubeMX

Интеграция с STM32CubeMX

Для тех, кто работает с микроконтроллерами STMicroelectronics, в CLion появилась интеграция с STM32CubeMX:

  • В CLion можно создать новый проект .ioc или открыть существующий, при этом IDE сгенерирует CMake-файл для корректной работы с этим проектом.
  • Прямо из CLion можно запустить STM32CubeMX, чтобы обновить настройки микроконтроллера и сгенерировать код для проекта.
  • CLion предложит выбрать конфигурационный файл для микроконтроллера (board config).