Скринкаст про развертывание кроссплатформенной среды разработки для программирования ARM-микроконтроллеров

ARM
В видео показано, как начать разработку под ARM-микроконтроллеры. Решение универсально для любой операционной системы: Windows, Linux и Mac. Но запись сделана в Ubuntu, так как это моя основная ОС. Используются только опенсорсные инструменты: Eclipse, GCC.

Что есть в видео: установка Eclipse, GCC, плагина GNU ARM Eclipse, CMSIS, создание и настройка проекта с добавлением startup-файла и сценария линковщика, компиляция проекта.


Youtube.

Видео лучше смотреть на Ютубе в максимальном разрешении. Звука нет.

Если сообщество пожелает, то сделаю видео про настройку проекта под STM32 и покажу отладку с помощью GNU Debugger.

Все необходимое ПО:

Собираем portable Eclipse-based-IDE для ARM

Как собрать C/C++ Eclipse IDE под Windows для сочинения и отладки микроконтроллерных программ, написано уже немало статей. Я же хочу показать, как сделать portable-версию IDE.


Читать дальше

Конвертация в формат Eclipse STM32 проектов от ST и из CubeMX

Так получилось, что сейчас использую Eclipse. Да и с ARM и STM32 познакомился совсем недавно. В этот момент и выяснилось, что STMicroelectronics — бесплатный софт не любит. Поиск на сайте ST.com показал, что никаких примеров и проектов «от производителя» для бесплатных сред разработки, типа Eclipse, нет. Зато для Keil, IAR и TrueSTUDIO — примеров кода, проектов и всяких примочек — много. Самым близким к Eclipse является TrueSTUDIO, т.к. сделан на основе Eclipse. Решение напрашивалось само собой — использовать в Eclipse весь спектр проектов, разработанных STMicroelectronics под среду TrueSTUDIO. Но форматы проектов оказались разные, и конвертора TrueSTUDIO -> Eclipse тоже нет.

Долго копал интернет на предмет готового решения — его не было. Зато часто попадался вопрос — как это сделать. В процессе поиска нашел статью, на немецком, с решением проблемы. Всё работало. На радостях, аж перевод на русский сделал. Но при попытке портирования чуть более серьезного проекта — возникло такое количество ошибок и предупреждений, что их устранение граничило с непониманием происходящего.
При этом что-то внутри подсказывало, что решение должно быть. В итоге проблему — решил, и этим решением делюсь с Вами.


Читать дальше

STM32CubeMX start code -> Eclipse быстрый старт -> отладка в Eclipse через ST-Link Discovery

Наверное в инете есть сотни статей с подобной темой. Но, так как тема относится к опенсорсу, — никто не гарантирует результат. Результат-то как правило бывает, но обычно, вначале, лишь частичный. Что-то, как правило, не работает нормально. Глючит. Пугает кучей ошибок и варнингов. Основная тема, лейтмотив опенсорса, — поиск ответа на вопрос «почему не так работает?». В этот момент начинаешь понимать, почему за готовую к работе, из коробки, IDE — просят денюшку, и немаленькую.
Когда начинал знакомится с микроконтроллерами, ограничение кода в 32 кБ казались такими недосягаемыми, а в современное время одно подключение какой-либо библиотеки может съесть значительную часть лимита кода, а ещё хочется и ВЭБ интерфейс к соей домашней поделке приделать, а недавно решил «пощупать» библиотеку libMAD, так код вообще сразу выскочил за 120 кБ…

Основная задача — допилить Eclipse до такого состояния, когда внутри будет весь цикл, от написания кода до отладки. Для генерации начального кода очень хотелось использовать STM32CubeMX, так как кроме свежих библиотек HAL имеется поддержка современной версии CMSIS, уже интегрированная FreeRTOS (в составе куба идет порт FreeRTOS, сделанный по правилам нового CMSIS v3.20), и много других «вкусняшек», а используемая среда Eclipse, не накладывает ограничения на размер кода, да и просто имхо удобней.
У меня получилось. Конечно есть в отладчике Keil'a фишки, которые больше нигде не повторяются. Да и в используемом отладчике OpenOCD реализованы не все функции, которыми может похвастаться Eclipse, но это плата за простоту установки и настройки. Полученным результатом оказался доволен. Во время поиска приемлемого варианта установки, подбора плагинов и других компонентов возникла необходимость сохранить результаты проделанной работы. В основном — что бы не забыть.

Условно всю работу можно разбить на 3 части:
  • Установка и настройка Eclipse.
  • Генерация начального кода проекта в STM32CubeMX и адаптация проекта для использования в Eclipse.
  • Настройка отладки и отладка созданного проекта в Eclipse.

Если Вам интересно — читаем дальше.


Читать дальше

Ubuntu + Pinboard II STM32

Всем привет!

Чуть ниже «прелюдии» моя заметка самому себе о том, как очень быстро развернуть среду разработки для STM32 (с программатором CoLink от PinboardII) под Ubuntu. Заметка на 90% сперта из статьи reset (тынц ), остальные 10% — из «других» источников ;)

Описанная процедура проверена на свежепоставленной 13.10 x64 и дремучей 12.04 x86 (на пятилетнем нетбуке все заняло ~30 минут со скринами и, в основном, из-за тормознутого вайфая).


Читать дальше
  • +1
  • 08 января 2014, 03:08
  • vlbuel

Неплохая статья по эффективной работе в Eclipse топик-ссылка

Статья не моя. Большая часть этого хорошо известна тем, кто работает в Eclipse постоянно. Но это именно то "недостающее звено", которого часто нехватает "новичкам" и использующим его крайне редко. После освоения этих фич, Eclipse обычно перестаёт казаться "сложным" и начинает нравиться. По крайней мере, у меня так и произошло N лет назад. Нужно оговориться, что статья про Eclipse JDT. Но многие полезные фичи работают и в Eclipse CDT, который часто используется в качестве основы embedded IDE.

Удобное использование libmaple в Eclipse CDT

Библиотека libmaple для работы с stm32 уже упоминалась здесь. Для начинающих осваивать stm32 она представляет собой значительно более высокоуровневую, простую и понятную альтернативу CMSIS+SPL.


Читать дальше

ST-LINK + Eclipse на Ubuntu

J-LINK — замечательный отладчик, но что делать владельцам ST-LINK'а или STM32Discovery?
В одном из комментов к этой статье уважаемый evsi оставил ссылочку на проект, в состав которого входит GDB сервер, с названием st-util, и заточенный под ST-LINK. Подумаем как его интегрировать в Eclipse. Тем, кто устанавливает тулчейн с нуля, первые три пункта плана можно взять из той же статьи, а OpenOCD заменить на st-util…


Читать дальше

Ubuntu + Eclipse + Code Sourcery + OpenOCD + j-link + ARM, или "Быстрый старт для сомневающихся"

Цель этой статьи — показать, что установка, наладка и «запуск в эксплуатацию» тулчейна для работы с ARM'ами довольно проста и занимает вместе с перекурами около получаса. Ключевое слово в названии — Ubuntu, или, вообще говоря, Linux. Большинство материала в сети рассчитано на аудиторию пользователей MS Windows, и перейти на Linux мешает, или пугает, отсутствие руководства, в котором был бы более-менее популярно описан процесс. Да, это немного сложнее, чем установка Keil+SEGGER, но зато потом, надеюсь, вы оцените преимущества работы в Linux.



Читать дальше
  • +4
  • 20 февраля 2012, 13:48
  • reset

QT Creator как IDE для “C-Embedded-проектов”

QT Creator как IDE для «C-Embedded-проектов»

Хочу с вами поделиться еще одним удобным инструментом, помогающим в нашем любимом Embedded деле.
Этот инструмент — это IDE для Embedded-разработчика. В статье хочу затронуть лишь вторую сторону Эмбэдеда, программирование.
То есть, тут не будет ни слова о микросхемах и микроконтроллерах.
Так сложилось, что я по мере нужды занялся поиском, и нужно было найти графический, легкий, удобный, полнофункциональный IDE для Embedded и к тому же под Linux, а самое главное – бесплатный, или в идеале под GPL лицензией.
Альтернативы типа Eclipse и NetBeans меня не впечатлили, тяжелые и очень неудобные. Мега любимый SlickEdit (который я считаю просто самым лучшим IDE) стоит дорого, а его демо-версия попросту не способна слелать то что умеет полнофункциональная версия (я это проверял).
Был сделан поиск, и после выбора среди вариантов был найден ответ. Ответ был QTCreator. Разумеется что это не панацея, и кое чего он не может(или я не нашел как это сделать), но также может много, тоесть золотая середина.
В любом случае, думаю что если нужно удобно и быстро работать с кодом на языке C, то это можно сделать весьма комфортно используя IDE, выше озвученный QTCreator. Ну и также если у вас Java-проект, то QTCreator тоже справится, просто потому что он по синтаксису очень похож на C++, который поддерживается.

Qt Creator IDE




Читать дальше