Компиляторы ругать не буду, не сравнивал. Но говорят, что IAR для AVR, к примеру — лучший компилер, потому что разрабатывался совместно с Atmel.
А вот IDE — полный хлам. Для 2013 года -это полный позор. где-то в 1995-1999 это еще могло прокатить.
Тормоза, неудобные настройки, огромный размер, необходимость настраивать КАЖДЫЙ новый проект по новой — десятки действий и если хоть одно пропустишь — не компилится. CodeBlocks позволяет сделать шаблон проекта и настроить скрипт визарда, после этого проект будет создаваться правильно настроенным. Нужно только выбрать из списка проц и дебаггер. Emblocks еще и заточен под Embedded разрабокту.
Я привык к нормальным IDE — в Visual Stduio проект создается готовым для наполнения моим кодом — все настроено и компилируется после работы визарда. В Delphi все то же самое. Я считаю это правильным. Тратить время на повторяющуюся работу по настройке проекта каждый раз, когда я пробую Blink или еще какой мелкий тест — это глупо. Тупую работу должен делать компьютер, он для того и создан.
А, видел :) Мне не понравилось, что нужно испортить STLink в Discovery чтобы заработало. Плюнул и вернул на место родной вариант, так его видят CooCox и другие. И OpenOCD очень медленно работал.
В каком общем? Не только драйвер потребует но и либу скорее всего. Большинство девайсов делается как libusb. А я терпеть не могу таскать за приложением еще и dll лишние. особенно когда без них можно обойтись. Не надо плодить лишних сущностей. UART для взаимодействия с компом на постоянной основе подходит плохо.
Производители тратят большую часть времени на разработку самих девайсов и их продажу. :)
IDE — это как маечка в подарок, если она бесплатная. Поэтому они ей занимаются исключительно вынужденно.
Но большинство пользователей МК действительно делают на камне полтора действия и им хватает блокнота.
Я в свое время был удивлен жуткой несовместимостью шилдов к Arduino — надел MotorShield и у тебя ни SPI ни кучи других ножек свободных не осталось, хотя проц еще ничем по сути не занят, но другой шилд уже не надеть. Полная однозадачность. Тупо. мне не понравился такой подход.
Для десктопа писать на порядок сложнее, если что. Я этим занимаюсь много лет, знаю о чем говорю — архитектура ПК гораздо сложнее.
Насчет трейса не очень понял.
Разумеется нет, вообще-то я уже несколько раз об этом написал в ходе обсуждений — ни IAR ни KEIL я не рассматриваю вообще. Не в последнюю очередь потому, что они платные.
Под MacOS и Linux всегда было все плохо со средами разработки. NetBeans, Eclipse — со всеми их недостатками. Можно использовать CodeBlocks — она есть под Linux. Я в ней под AVR пишу, с отладкой не возился, но настроить можно. У меня лежит CodeBlocks под Windows настроенная для AVR и STM32.
Сам пользуюсь для STM32 в основном EmBlocks и CoIDE.
А если не только похвастаться, а и поделиться со всеми статьей и сборкой?
Я про свой вариант на Emblocks вскоре напишу.
OpenOCD кстати довольно медленная, я пробовал этот вариант. Самый быстрый получается на ST-Link + его GDB сервер.
Неплохо черех ColinkEx с его GDB сервером.
IAR — это не проблемы — это полностью устаревшая IDE. Если у вас проект из 3х файлов и имена переменных вы помните наизусть, это не проблема. Если же проект посложнее — он неконкурентент даже с тормознутым Eclipse.
Единственное достоинство IAR — это его компилер. В остальном среда крайне неудобная. Особенно когда есть с чем сравнить. А мне есть с чем.
В этом мире много кто был первым, но теперь в жопе. IBM был изобретателем PC, а теперь они этим даже не занимаются и правильно — получалось у них плохо, как ни крути мэйнфрейм получается и по дизайну и по цене.
Эклипс, как я уже говорил — хоть и универсальный, а удобства не добавляется даже после настройки.
Тот же CodeBlocks такой же универсальный, но работать в нем удобно с любым тулчейном. Он тоже кроссплатформенный. Компилит и С и С++, native код, а потому быстрый. Гибко настраиваемый и легкий. Ко всему еще и бесплатный.
Есть много крутых производителей, но мало кто предоставляет хороший инструментарий для хобби. Потому что ориентированы на производство, на крупных разработчиков, а не на одиночек-любителей.
Под STM32 мне удалось собрать свой инструментарий — бесплатный, открытый, достаточно удобный.
Обсуждать IAR не буду уже потому, что бесплатная версия до 32кБ, чего мне уже стало мало. А ставить крякнутый продукт и тем более писать обучающие курсы на этой основе считаю глупым и в корне неверным. Я же не обучаю программингу в Delphi. Хотя по удобству сравнимых сред ровно одна — Visual Studio и то проигрывает на мой взгляд.
Если бы сделали учебный курс для начинающих и бесплатный удобный инструментарий, у STM32 весь рынок был бы в кармане. Но пока имеем то, что имеем.
Времени и нервов уж точно. Я несколько устройств сделал, могу сказать, что это самая трудная часть — разработка и изготовление железки правильно, так. чтобы она работала.
За 1 модуль это многовато. Учитывая что ни антенны ничего подобного нет.
Модуль на 100мВт на 433 или 915 МГц с антенной, готовый к использованию столько стоит (3DR Radio).
Вот, чтобы не было «почему-то» МК должен не просто тупо переключать ножки, а должна быть обратная связь, которую он обязан учитывать прежде чем выключить или включить исполнительный девайс. На то он и МК, а не схема переключения реле с термостатом по принципу автомобильного радиатора.
Я считаю, что там где устройство может решить проблему, что им нужно управлять и следить за ним, оно должно ее решать. В этом ценность МК — возможность к исполнительным устройствам и сенсорам прикрутить логику.
я тоже пользуюсь EmBlocks. Тоже настроил под себя, но нашел ее еле-еле. Перебрал вообще все доступные IDE.
Вот именно — даже перечисление уже напрягает — подсунуть то, засунуть библиотеки, перенести ихсодники, чистить еще ошибки после этого.
Это не разработка — это сплошная ерунда.
Нормальная среда работает цельно. Все работает как положено.
Я вот для себя сделал настройки в EmBlocks так, чтобы любой новый проект генерился автоматом с нужными настройками. И каждому, кто захочет этим воспользоваться, достаточно распаковать этот архив, а не придется трахаться с настройкой IAR или хуже того Eclipse — более глючного варианта, который постоянно на каждый чих нужно настраивать, а удобства так и не появляется, я не видел.
HID — ни разу не банален.тонкостей в нем вагон и маленькая тележка. Недаром одна спецификация — увесистый том.
Но один раз написав, можно решать основную задачу — двустороннего обмена с ПК очень удобно.
Вот бы еще разобраться с USB HOST на F4, чтобы подключать джойстик к девайсу.
А вот IDE — полный хлам. Для 2013 года -это полный позор. где-то в 1995-1999 это еще могло прокатить.
Я привык к нормальным IDE — в Visual Stduio проект создается готовым для наполнения моим кодом — все настроено и компилируется после работы визарда. В Delphi все то же самое. Я считаю это правильным. Тратить время на повторяющуюся работу по настройке проекта каждый раз, когда я пробую Blink или еще какой мелкий тест — это глупо. Тупую работу должен делать компьютер, он для того и создан.
IDE — это как маечка в подарок, если она бесплатная. Поэтому они ей занимаются исключительно вынужденно.
Но большинство пользователей МК действительно делают на камне полтора действия и им хватает блокнота.
Я в свое время был удивлен жуткой несовместимостью шилдов к Arduino — надел MotorShield и у тебя ни SPI ни кучи других ножек свободных не осталось, хотя проц еще ничем по сути не занят, но другой шилд уже не надеть. Полная однозадачность. Тупо. мне не понравился такой подход.
Для десктопа писать на порядок сложнее, если что. Я этим занимаюсь много лет, знаю о чем говорю — архитектура ПК гораздо сложнее.
Насчет трейса не очень понял.
Сам пользуюсь для STM32 в основном EmBlocks и CoIDE.
Я про свой вариант на Emblocks вскоре напишу.
OpenOCD кстати довольно медленная, я пробовал этот вариант. Самый быстрый получается на ST-Link + его GDB сервер.
Неплохо черех ColinkEx с его GDB сервером.
Единственное достоинство IAR — это его компилер. В остальном среда крайне неудобная. Особенно когда есть с чем сравнить. А мне есть с чем.
В этом мире много кто был первым, но теперь в жопе. IBM был изобретателем PC, а теперь они этим даже не занимаются и правильно — получалось у них плохо, как ни крути мэйнфрейм получается и по дизайну и по цене.
Эклипс, как я уже говорил — хоть и универсальный, а удобства не добавляется даже после настройки.
Тот же CodeBlocks такой же универсальный, но работать в нем удобно с любым тулчейном. Он тоже кроссплатформенный. Компилит и С и С++, native код, а потому быстрый. Гибко настраиваемый и легкий. Ко всему еще и бесплатный.
Есть много крутых производителей, но мало кто предоставляет хороший инструментарий для хобби. Потому что ориентированы на производство, на крупных разработчиков, а не на одиночек-любителей.
Под STM32 мне удалось собрать свой инструментарий — бесплатный, открытый, достаточно удобный.
Обсуждать IAR не буду уже потому, что бесплатная версия до 32кБ, чего мне уже стало мало. А ставить крякнутый продукт и тем более писать обучающие курсы на этой основе считаю глупым и в корне неверным. Я же не обучаю программингу в Delphi. Хотя по удобству сравнимых сред ровно одна — Visual Studio и то проигрывает на мой взгляд.
Если бы сделали учебный курс для начинающих и бесплатный удобный инструментарий, у STM32 весь рынок был бы в кармане. Но пока имеем то, что имеем.
За 1 модуль это многовато. Учитывая что ни антенны ничего подобного нет.
Модуль на 100мВт на 433 или 915 МГц с антенной, готовый к использованию столько стоит (3DR Radio).
Я считаю, что там где устройство может решить проблему, что им нужно управлять и следить за ним, оно должно ее решать. В этом ценность МК — возможность к исполнительным устройствам и сенсорам прикрутить логику.
Вот именно — даже перечисление уже напрягает — подсунуть то, засунуть библиотеки, перенести ихсодники, чистить еще ошибки после этого.
Это не разработка — это сплошная ерунда.
Нормальная среда работает цельно. Все работает как положено.
Я вот для себя сделал настройки в EmBlocks так, чтобы любой новый проект генерился автоматом с нужными настройками. И каждому, кто захочет этим воспользоваться, достаточно распаковать этот архив, а не придется трахаться с настройкой IAR или хуже того Eclipse — более глючного варианта, который постоянно на каждый чих нужно настраивать, а удобства так и не появляется, я не видел.
HID — ни разу не банален.тонкостей в нем вагон и маленькая тележка. Недаром одна спецификация — увесистый том.
Но один раз написав, можно решать основную задачу — двустороннего обмена с ПК очень удобно.
Вот бы еще разобраться с USB HOST на F4, чтобы подключать джойстик к девайсу.