|
Плюсы ИАР |
|
|
|
Dec 16 2008, 20:56
|

Просто Che
    
Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881

|
Плюсы в том, что ИАР - это один из лидеров в своей области. Поэтому: - его компиляторы, во-первых, работают, - а во-вторых, работают достаточно хорошо Ну, а если серьезно, то компилятор многоплатформенный, поддерживает множество семейств МК. Денег у фирмы много, что позволяет быстро выпускать новые версии, достаточно активно реагировать на новые веяния и т.д. И что немаловажно, не жлобиться на хорошие демо-версии. Но, если взглянуть шире (ширее  ), то можно обнаружить достаточно много семейств МК, для которых самыми популярными (и лучшими) компиляторами являются отнюдь не продукты от ИАР...
|
|
|
|
|
Dec 16 2008, 21:41
|

Местный
  
Группа: Свой
Сообщений: 331
Регистрация: 22-07-08
Из: Р О С С И Я
Пользователь №: 39 145

|
Цитата(Baser @ Dec 17 2008, 01:56)  Плюсы в том, что ИАР - это один из лидеров в своей области. Поэтому: - его компиляторы, во-первых, работают, - а во-вторых, работают достаточно хорошо Ну, а если серьезно, то компилятор многоплатформенный, поддерживает множество семейств МК. Денег у фирмы много, что позволяет быстро выпускать новые версии, достаточно активно реагировать на новые веяния и т.д. И что немаловажно, не жлобиться на хорошие демо-версии. Но, если взглянуть шире (ширее  ), то можно обнаружить достаточно много семейств МК, для которых самыми популярными (и лучшими) компиляторами являются отнюдь не продукты от ИАР... === Мне много не нужно. АРМы от NXP и всё пожалуй на данный момент моей жизни. === Для армов, я так понял, лучшим является кейл (код получается более компактным и быстрым + некоторые удобные фишки для работы). [С моей точки зрения Кейл слегка неудобен в использовании (может непривычней). Поэтому решил с него вернуться обратно на CW (который собственно не без глюков, хотя и незначительных. Но спать спокойно не дают)] ----- Но эта быстрота в пару процентов никуда не упирается как правило. Да и флеши всегда остается с большим запасом. === Так что главным является удобство работы в среде: -удобство интерфейса; -удобный поиск; -удобный мониторинг состояние процессора; -возможность смотреть что с переферией; -что с памятью и как и что в ней лежит; -удобная отладка с возможностью налету просматривать состояние переменных; === Еще плюсом ИАРа является то, что на нем сидит основная толпа разработчиков, поэтому есть у кого спросить. === В CW есть полезная функция Symbol Browser, в котором: 1) показываются все сегменты; 2) показываются константы в флешке с адресами и размером; 3) статические переменные в озу с адресами и размером; 4) ... Есть ли такая в ИАР? === Плюс к тому некоторые изменения CW крайне редки, ИМХО. Чувствуется некоторая запущенность в свободное плавание. === Вопросы к тем кто имеет опыть пользования и того и другого: 1) Может на счет кейла сильно ошибся? 2) Что лучше: кейл или иар? ===
|
|
|
|
|
Dec 17 2008, 05:51
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата Для армов, я так понял, лучшим является кейл (код получается более компактным и быстрым + некоторые удобные фишки для работы). тут еще спорный вопрос написал я небольшой тестовый код посммотреть какой IAR и Keil делают код для Cortex Код volatile int z = 1000; volatile int i; int testA(int za) { if (za>= 500) { z = z /13; return(-10); } else return(za+10); }
int main(void) { int tz; tz = 1000; while(tz--) { i = testA(tz+z); if (i) z = 1; else z = 0; }; } Код полный боред. Код использует переменные volatile в коде и в функции. Рузультат IAR ~18000 циклов Keil ~26000, это лучшие показатели при выборе параметров компиляции.
|
|
|
|
|
Dec 17 2008, 17:51
|

Частый гость
 
Группа: Свой
Сообщений: 185
Регистрация: 3-08-05
Из: Новосибирск
Пользователь №: 7 334

|
Цитата(zltigo @ Dec 17 2008, 20:21)  Не видел ее уже года полтора  , а компилятор пользую ежедневно.... Можно поинтересоваться в какой среде Вы выполняете отладку программ? Для написания кода действительно лучше использовать специализированые редакторы типа SourceInsight, однако альтернатив отладчика IARа я не знаю.
--------------------
Всяк хорошая мысля к нам приходит опосля.
|
|
|
|
|
Dec 17 2008, 18:36
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Proton @ Dec 17 2008, 20:51)  однако альтернатив отладчика IARа я не знаю. Сложность программ начиная с некоторого уровня делает внутрисхемную отладку практически бесполезной. Более того, и достаточно простые программы начинающих отладчик провоцирует писать заплаточным методом - вот тут x + y получилось 3, хотели 4, так сейчас допишем + 1, потом ежели где вылезет там отнимем -1..... В результате макроме получаем. Самый мощный отладчик это голова - ее и надо использовать прежде всего. Набор отладочных внутрисхемных отладочных средств на все свои контроллеры имею, но не пользуюсь. Консоль много информативнее. Если речь идет об отладке куска сишного кода, так его можно и на кроссплатформе отлаживать. Ну а если припрет, то, как здесь уже неоднократно писалось - создать IAR проект содержащий только объектники с отладочной информацией и отлаживайтеcь...
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 18 2008, 11:55
|

Местный
  
Группа: Свой
Сообщений: 331
Регистрация: 22-07-08
Из: Р О С С И Я
Пользователь №: 39 145

|
Цитата(zltigo @ Dec 17 2008, 23:36)  Сложность программ начиная с некоторого уровня делает внутрисхемную отладку практически бесполезной. Более того, и достаточно простые программы начинающих отладчик провоцирует писать заплаточным методом - вот тут x + y получилось 3, хотели 4, так сейчас допишем + 1, потом ежели где вылезет там отнимем -1..... Закон сохранения гвоздей называется )) Код не доска или можно сказать и доска, но только в 10ти мерном пространстве, поэтому не так просто иногда понять в чем дело. Поэтому и нужны дополнительные инструменты, которые преобразуют эту страну чудес в обычный почти объективный мир (чем больше таких инструментов, тем лучше). === К тому же программист это не столяр, который может 100 раз измерить своим трезвым глазом и один раз отрезать кому-нибудь (чего-нибудь). Поэтому чаще всего программа даже у людей с опытом, хочешь не хочешь, похожа на ежа из гвоздей если не видеть что происходит в области inside. === И не отрицаю, что у некоторых голова как глобус (с масштабом 1:1), который может предсказания давать для этого причудливого мира. С джидаями начального и среднего уровня всё иначе (к числу их собственно и относится основная толпа). === И прошу не счесть, что: одна таблетка помогает от бессоницы, но плохо. Две помагают хорошо. А три помагают навсегда... Просто хочется иметь очень широкий спектр инструментов: начиная от пилки для ногтей и кончая пилой "дружбой" для особо-запущенных случаев. === !ИМХО! === Дак всё же. Кейл или Иар?
|
|
|
|
|
Dec 18 2008, 14:02
|
Частый гость
 
Группа: Свой
Сообщений: 120
Регистрация: 4-01-06
Из: Москва
Пользователь №: 12 837

|
Цитата(zltigo @ Dec 17 2008, 21:36)  Сложность программ начиная с некоторого уровня делает внутрисхемную отладку практически бесполезной. Консоль много информативнее. zltigo, а можете пояснить свою мысль? Чем принципиально консоль от окна отладчика отличается? К тому же Uart-ы бывают все заняты...
Сообщение отредактировал scout - Dec 18 2008, 14:03
--------------------
То, что неясно, следует выяснить. То, что трудно творить, следует делать с великой настойчивостью. Конфуций
|
|
|
|
|
Dec 18 2008, 14:24
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата Чем принципиально консоль от окна отладчика отличается? Тем что консоль работает в контексте программы и не влияет на работу остальных модулей программы, если конечно правильно написана и требования к скорости вывода отладочной информации соответствуют скорости вывода консоли. Консоли разные бывают необязательно для этого использовать уарт, но как правило используется он из за его простоты, но у него есть ограничения по скорости, хотя если применять USB переходник то скорость можно поднять и выше 115200. Если в устройстве есть изернет можно его как консоль использовать, если конечно не идет отладка самого стека  . Что косается отладчика внутрисхемного, так он сбивает работу устройства, отладчик останавливает процессор! а не время, по этому когда вы смотрите информацию время идет большая часть периферии продолжает работать, сеть шлет вам пакеты, и т.д. в общем реалтайм уже отсутствует, из за этого некоторые вещи невозможно отладить!. да и скорость у него низкая попробуйте посмотреть 2 -килобайта массив ? мало - того что среда тормозить начинает, так еще и с программой непонятно что творится будет, а через консоль это раз и файл записан и смотрите на него как хотите. Еще отладчик накладывает жесткие требования к выводу информации, в консоли выводите так как вам нужно или на сколько позволяют ресурсы.
|
|
|
|
|
Dec 18 2008, 15:01
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(MALLOY2 @ Dec 18 2008, 17:24)  Добавлю одно из важных отличий - ведется лог событий той или иной заказанной степени детализации и видны причинно следственные связи. Причем все это и без подключенного отладчика в реальных объектовых условиях эксплуатации. Цитата(FormatCft @ Dec 18 2008, 14:55)  Просто хочется иметь очень широкий спектр инструментов: начиная от пилки для ногтей и кончая пилой "дружбой" для особо-запущенных случаев. Так я, если внимательно читали, их и имею. Только ногти не запускаю так сильно, что-бы бензопила потребовалась  . Реально, мне пригодился-бы отладчик один раз - когда изучал, например, ARM, писал порт операционки. Вот тогда она у меня разок зациклилась намертво и пришлось искать проблему откатами и делением пустыни пополам. Но тогда в эту первую неделю отладчик мне еще не привезли. А когда уже системка поднялась, консольнормальная буферизированая, обработчик exceptions... отладчик и не нужен практически. Для AVR пользовался (кроме загрузки)тоже один раз для совсем мелюзги. PIC - только для загрузки. Больше всего пользовал BlackFin-овский.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 18 2008, 15:41
|
Частый гость
 
Группа: Свой
Сообщений: 120
Регистрация: 4-01-06
Из: Москва
Пользователь №: 12 837

|
MALLOY и zltigo спасибо за информацию. Сейчас как раз настало то время, когда надо отладить пару девайсов, а отладчика нет. Попробую написать универсальный модуль для вывода отладочной информации...
Кстате, а в качестве терминальной программы что пользуете? Hyper Terminal?
--------------------
То, что неясно, следует выяснить. То, что трудно творить, следует делать с великой настойчивостью. Конфуций
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|