LINUX.ORG.RU
решено ФорумTalks

IDE нубу для мк

 , , , ,


0

2

Добрый вечер, ЛОР.

Так уж сложилось, что я неспешно изучаю C. Нужен он мне для программирования (внезапно, да) микроконтроллеров. Но конкретно к ним перейду немного позже, т.к. думаю, что так будет правильней что-ли. В очень нескором будущем, наверное, и с крестами поковыряюсь, но то уже совсем другая сказка. Собственно, в чем вопрос: посоветуйте ide для всего этого дела. Хотя, ide, на самом деле, даже многовато будет. Пока мне хватает kate c окном терминала внизу в нем же для компиляции и запуска моей простой писанины. Но хочется большего удобства.

Итак, требования:

  • Подсветка синтаксиса
  • Кнопочки там сконпелять, запустить итд итп
  • Гибкие настройки в плане тулчейнов, компиляторов и пр.
  • Простой и понятный интерфейс для начинающего

Желательно:

  • Поддержка кастомизаций под мк, для чего собственно, все и затевалось. Т.е. возможность скомпилировать все и залить чуть ли не 1 нажатие.
  • Автокомплит
  • Быстрая информация по набираемой команде
  • Qt
  • Открытый код

Да, дебагеры и все в этом духе для меня темный лес и не нужны пока хватает сообщений от компилятора.

Да, микроконтроллеры же: stm8, stm32. (Советы по ним в этом топике тоже приветствуютя)

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

Линукс тут притом, что все будет производится исключительно на нем. Не в development потому, что так решили мои пьяные тараканы. Если кто-то из модераторов считает, что это должно быть в dev, то пусть переносят.

★★★★★

Ответ на: комментарий от Silencer

Да, удобно конечно. Надо будет попробовать. Но необходимость в выборе редактора не отпала

sehellion ★★★★★ ()

Для stm8 выбор-то невелик :) IAR. Так что советую начать не с IDE а с компилятора под stm8.

sdcc ковыряют под stm8 - но не знаю - как по мне - не готов. Где-то на просторах инета должен быть stm8flash для заливки.

Поддержка дебагеров необходима - собственно через них происходит заливка. Т.е. минимум SWD/SWIM (stm32/stm8). В зависимости от модели разработки или отдельный полный st-link или девборды с интегрированным им же, но чуть обрезанным.

Немного инфы про stm8 под linux тут есть: http://www.cnx-software.com/2015/04/13/how-to-program-stm8s-1-board-in-linux/

stm32 без особых проблем вроде...

eabi ()
Ответ на: комментарий от eabi

sdcc под stm8 не готов

а я на их сайте не увидел ничего, чтобы они сейчас пилили stm8 и поэтому решил, что готов. Впрочем, мне, наверное, и такой степени готовности хватит.
st-link, емнип, у меня был. Посмотрю завтра точно. За информацию спасибо

sehellion ★★★★★ ()
Ответ на: комментарий от smilessss

Интерфейс приятный. Готовые решения для моего юзкейса уже есть, но опробовать его так толком и не вышло.мРугаетсяна no valid kits

sehellion ★★★★★ ()

Тред не читай @ Emacs отвечай.

GNU Emacs.

Deleted ()

Зачем всё это для микроконтроллеров?

Qt, Быстрая информация по набираемой команде

next_time ★★★★★ ()
Ответ на: комментарий от Silencer

а как же пошаговый дебаггер? в мк без этого никак.

next_time ★★★★★ ()

Пишу в свободное время методичку по STM32: http://eternal-search.com/stm32-book/.

Там как раз уже готовы разделы про установку тулчайна (под офтопик и под онтопик, используется компилятор ARM GCC, периферийная библиотека libopencm3 и утилита для прошивки st-flash - ИМХО, оптимальный набор) и настройку Geany или QtCreator для разработки.

Тема отладки средствами IDE не раскрыта, ибо не пользуюсь. Но думаю вполне можно настроить, ибо проект https://github.com/texane/stlink включает в себя GDB сервер, а QtCreator должен его поддерживать.

KivApple ★★★★★ ()
Последнее исправление: KivApple (всего исправлений: 3)

Лично я пользуюсь Geany, вполне неплохо. Правда, не Qt. Еще вроде статья на хабре была, о настройка QtCreator для STM. Только как там с дебаггером, я не в курсе.

Meyer ★★★★ ()
Ответ на: комментарий от sehellion

первое верно, но из вашего сообщения в топике неясно, имеется ли ввиду поддержка куте в IDE или написанный на нём интерфейс IDE. теперь ясно.

второе в случае мк не пригодится: вот зачем вам информация по printf в мк, например.

next_time ★★★★★ ()
Ответ на: комментарий от Meyer

Только как там с дебаггером, я не в курсе.

есть возможность прикрутить любой

next_time ★★★★★ ()

Подсветка синтаксиса
Кнопочки
Гибкие настройки
Простой и понятный

Vim во все поля. Он совсем не страшный, главное — запомни сразу, что undo на u.

MiniRoboDancer ★☆ ()
Ответ на: комментарий от next_time

так я написал же, что язык еще только-только медленно изучаю и пока пишу вообще не смотря на мк

sehellion ★★★★★ ()
Ответ на: комментарий от MiniRoboDancer

Запустил я его как-то раз. Закрыл вместе с терминалом в итоге

sehellion ★★★★★ ()
Ответ на: комментарий от sehellion

а зря, vim - лучшее, что приходит на ум для таких задач, и Emacs еще.

ykroop ()

у Qt Creator есть плагин BareMetal

pashazz ★★★★ ()

KivApple, ага, спасибо за методичку

Meyer, да, читал ту статью

Вообще, Geany неплохо выглядит. Похоже, что как раз таки то, что нужно. Только что-то оно у меня выполнять то, что собрало, надо смотреть, что там с командами. Кстати, «команды сборки» сохраняются для каждого проекта отдельно или едины для всех?

sehellion ★★★★★ ()
Ответ на: комментарий от ykroop

Честно, боюсь его использовать. Это же потом можно заболеть и понесется: вимператор в браузер, фм с вим-подобной системой управления и все в этом духе.

sehellion ★★★★★ ()
Ответ на: комментарий от Meyer

Понял, так и думал. И о том, что нужно будет набрасывать Makefile тоже

sehellion ★★★★★ ()
Ответ на: комментарий от Eddy_Em

А прошиваетесь как? В мейкфалы дополнительные задачи дописываете?

sehellion ★★★★★ ()
Ответ на: комментарий от sehellion

терминалом

Wrong way. Работать надо во фреймбуферной консоли, оградившись от тлетворного влияния прожорливых иксов и оконной парадигмы.

MiniRoboDancer ★☆ ()
Ответ на: комментарий от Silencer

Напиши себе makefile и необходимость в IDE отпадет.

Незачёт. На хабре были статьи и получше. Хоть чистый мейк и не нужен.

Stil ★★★★★ ()
Ответ на: комментарий от sehellion

Болезнь — это CUA и мышевозня. Причём повальная и практически неизлечимая. Клавиатура намного эффективнее при умении владеть ею.

MiniRoboDancer ★☆ ()
Ответ на: комментарий от sehellion

Да, смотри мои репы на гитхабе/сосфорже/гитлабе/битбакете: ircontroller и stm32samples.

Шью через бутлоадер — самый простой способ, да еще и не нужно лишних ног выводить наружу...

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от sehellion

Qt Creator. Вот два дня назад настраивали всем ЛОРом для работы с МК-платами + куча статей на хабре.

EXL ★★★★★ ()
Ответ на: комментарий от EXL

Да, мне тоже надо будет с ним ковыряться, чтобы хотя бы создать пустой проект. Ну а так инструмент мощный достаточно.

sehellion ★★★★★ ()

Использовал eclipse для stm32.

gadfly ★★ ()
Ответ на: комментарий от sehellion

Да, для STM8 я купил за пару сотен деревянных эмулятор st-link на ибее. Правда, stm8flash не умеет еще шить option bytes, поэтому если надо стереть залоченный МК, приходится запускать хрюнделя в виртуалке.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от MiniRoboDancer

cua не является болезнью. Ну и никто же не заставляет делать так, как сказано. Можно ведь запилить свою cua с единым отображением и сочетаниями клавиш. (Разработку под гейоси в расчет не берем)

sehellion ★★★★★ ()
Ответ на: комментарий от sehellion

Можно ведь запилить свою cua

Это уже будет не CUA, а велосипед. Проблем в том, что CUA крайне неэффективно (ну кроме навигации по меню разве что) использует клавиатуру, ориентируясь на недоступные из основной позиции клавиши и многоклавишные хоткеи. Хотя CUA можно довольно удачно сочетать с управлением QWERTY, ярчайший пример — Photoshop (там ещё GUI легко скрывается, кстати говоря). Уж явно не кулхацкерский продукт, коим считается Vim. А режимы, например, принципиально не отличаются от переключения раскладки, которое большинство пользователей делает относительно неудобным путём (двухклавишным хоткеем или вообще мышевознёй к индикатору раскладки; на мобильных устройствах с этим делом куда лучше, даже на тачфонах).

MiniRoboDancer ★☆ ()

В общем, всем спасибо за участие.
Остановился на Geany и Qt Creator, если первого не хватит. Далее, набросаю простые мейкфайлы.
Осталось шг настроить да все никак не могу добиться, чтобы приложения собранные запускались по нажатии кнопки «Выполнить»

ps Попробовал Atom - ужс прст, как редактор текста может столько жрать

sehellion ★★★★★ ()
Ответ на: комментарий от sehellion

Простые мейкфайлы для STM32 можешь у меня глянуть в репах stm32samples и ir-controller. А мейкфайлы для STM8 — в репе stm8_samples. Репы валаются на гитхабе, сосфорже, битбакете и гитлабе.

Eddy_Em ☆☆☆☆☆ ()

Eclipse уже советовали? Всё, кроме Qt подходит, вроде бы. Насчёт «Быстрой информации по набираемой команде» не уверен вообще, что это такое :)

alix ★★★★ ()
Ответ на: комментарий от Eddy_Em

Ага, смотрел. Но даже этого мне будет пока много, а простой примитив, наверное, напишу

sehellion ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.