реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Плюсы ИАР
FormatCft
сообщение Dec 16 2008, 18:37
Сообщение #1


Местный
***

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



Всем здравствуйте.
===
Я смотрю в основном люди пользуют иар. Даже ветка выделена специальная.
Особо интересно мнение тех, кто пользовался другими компиляторами. В чем его основные достоинства и недостатки?
===
Всем заранее спасибо за ответы.
Go to the top of the page
 
+Quote Post
Baser
сообщение Dec 16 2008, 20:56
Сообщение #2


Просто Che
*****

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



Плюсы в том, что ИАР - это один из лидеров в своей области. Поэтому:
- его компиляторы, во-первых, работают,
- а во-вторых, работают достаточно хорошо wink.gif

Ну, а если серьезно, то компилятор многоплатформенный, поддерживает множество семейств МК.
Денег у фирмы много, что позволяет быстро выпускать новые версии, достаточно активно реагировать на новые веяния и т.д. И что немаловажно, не жлобиться на хорошие демо-версии.

Но, если взглянуть шире (ширее smile.gif ), то можно обнаружить достаточно много семейств МК, для которых самыми популярными (и лучшими) компиляторами являются отнюдь не продукты от ИАР...
Go to the top of the page
 
+Quote Post
FormatCft
сообщение Dec 16 2008, 21:41
Сообщение #3


Местный
***

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



Цитата(Baser @ Dec 17 2008, 01:56) *
Плюсы в том, что ИАР - это один из лидеров в своей области. Поэтому:
- его компиляторы, во-первых, работают,
- а во-вторых, работают достаточно хорошо wink.gif

Ну, а если серьезно, то компилятор многоплатформенный, поддерживает множество семейств МК.
Денег у фирмы много, что позволяет быстро выпускать новые версии, достаточно активно реагировать на новые веяния и т.д. И что немаловажно, не жлобиться на хорошие демо-версии.

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

===
Мне много не нужно. АРМы от NXP и всё пожалуй на данный момент моей жизни.
===
Для армов, я так понял, лучшим является кейл (код получается более компактным и быстрым + некоторые удобные фишки для работы).
[С моей точки зрения Кейл слегка неудобен в использовании (может непривычней).
Поэтому решил с него вернуться обратно на CW (который собственно не без глюков, хотя и незначительных. Но спать спокойно не дают)]
-----
Но эта быстрота в пару процентов никуда не упирается как правило.
Да и флеши всегда остается с большим запасом.
===
Так что главным является удобство работы в среде:
-удобство интерфейса;
-удобный поиск;
-удобный мониторинг состояние процессора;
-возможность смотреть что с переферией;
-что с памятью и как и что в ней лежит;
-удобная отладка с возможностью налету просматривать состояние переменных;
===
Еще плюсом ИАРа является то, что на нем сидит основная толпа разработчиков, поэтому есть у кого спросить.
===
В CW есть полезная функция Symbol Browser, в котором:
1) показываются все сегменты;
2) показываются константы в флешке с адресами и размером;
3) статические переменные в озу с адресами и размером;
4) ...
Есть ли такая в ИАР?
===
Плюс к тому некоторые изменения CW крайне редки, ИМХО. Чувствуется некоторая запущенность в свободное плавание.
===
Вопросы к тем кто имеет опыть пользования и того и другого:
1) Может на счет кейла сильно ошибся?
2) Что лучше: кейл или иар?
===
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Dec 17 2008, 05:51
Сообщение #4


Знающий
****

Группа: 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, это лучшие показатели при выборе параметров компиляции.
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Dec 17 2008, 06:27
Сообщение #5


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



С кейлом не сравнивал, но по сравнению с GCC код у IARа получается более компактным.
Но есть по-моему у ИАРа жирный минус - откровенно слабая ИДЕ, по нынешним временам и за такие бабки можно бы и поднавернуть немного.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Rst7
сообщение Dec 17 2008, 07:06
Сообщение #6


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Но есть по-моему у ИАРа жирный минус - откровенно слабая ИДЕ, по нынешним временам и за такие бабки можно бы и поднавернуть немного.


У гнуся IDE нет вообще, так что те, кому не нравится иаровская среда могут прикрутить IARBuild к любому понравившемуся редактору (их масса, на любой размер и глубину wink.gif )


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
zltigo
сообщение Dec 17 2008, 14:21
Сообщение #7


Гуру
******

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



Цитата(MrYuran @ Dec 17 2008, 09:27) *
Но есть по-моему у ИАРа жирный минус - откровенно слабая ИДЕ...

Не видел ее уже года полтора smile.gif, а компилятор пользую ежедневно....


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Proton
сообщение Dec 17 2008, 17:51
Сообщение #8


Частый гость
**

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



Цитата(zltigo @ Dec 17 2008, 20:21) *
Не видел ее уже года полтора smile.gif, а компилятор пользую ежедневно....

Можно поинтересоваться в какой среде Вы выполняете отладку программ? Для написания кода действительно лучше использовать специализированые редакторы типа SourceInsight, однако альтернатив отладчика IARа я не знаю.


--------------------
Всяк хорошая мысля к нам приходит опосля.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Dec 17 2008, 18:36
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 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
Go to the top of the page
 
+Quote Post
FormatCft
сообщение Dec 18 2008, 11:55
Сообщение #10


Местный
***

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



Цитата(zltigo @ Dec 17 2008, 23:36) *
Сложность программ начиная с некоторого уровня делает внутрисхемную отладку практически бесполезной. Более того, и достаточно простые программы начинающих отладчик провоцирует писать заплаточным методом - вот тут x + y получилось 3, хотели 4, так сейчас допишем + 1, потом ежели где вылезет там отнимем -1.....

Закон сохранения гвоздей называется )) Код не доска или можно сказать и доска, но только в 10ти мерном пространстве, поэтому не так просто иногда понять в чем дело. Поэтому и нужны дополнительные инструменты, которые преобразуют эту страну чудес в обычный почти объективный мир (чем больше таких инструментов, тем лучше).
===
К тому же программист это не столяр, который может 100 раз измерить своим трезвым глазом и один раз отрезать кому-нибудь (чего-нибудь). Поэтому чаще всего программа даже у людей с опытом, хочешь не хочешь, похожа на ежа из гвоздей если не видеть что происходит в области inside.
===
И не отрицаю, что у некоторых голова как глобус (с масштабом 1:1), который может предсказания давать для этого причудливого мира. С джидаями начального и среднего уровня всё иначе (к числу их собственно и относится основная толпа).
===
И прошу не счесть, что: одна таблетка помогает от бессоницы, но плохо. Две помагают хорошо. А три помагают навсегда...
Просто хочется иметь очень широкий спектр инструментов: начиная от пилки для ногтей и кончая пилой "дружбой" для особо-запущенных случаев.
===
!ИМХО!
===
Дак всё же. Кейл или Иар?
Go to the top of the page
 
+Quote Post
scout
сообщение Dec 18 2008, 14:02
Сообщение #11


Частый гость
**

Группа: Свой
Сообщений: 120
Регистрация: 4-01-06
Из: Москва
Пользователь №: 12 837



Цитата(zltigo @ Dec 17 2008, 21:36) *
Сложность программ начиная с некоторого уровня делает внутрисхемную отладку практически бесполезной. Консоль много информативнее.


zltigo, а можете пояснить свою мысль? Чем принципиально консоль от окна отладчика отличается?
К тому же Uart-ы бывают все заняты...

Сообщение отредактировал scout - Dec 18 2008, 14:03


--------------------
То, что неясно, следует выяснить. То, что трудно творить, следует делать с великой настойчивостью.
Конфуций
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Dec 18 2008, 14:24
Сообщение #12


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



Цитата
Чем принципиально консоль от окна отладчика отличается?


Тем что консоль работает в контексте программы и не влияет на работу остальных модулей программы, если конечно правильно написана и требования к скорости вывода отладочной информации соответствуют скорости вывода консоли. Консоли разные бывают необязательно для этого использовать уарт, но как правило используется он из за его простоты, но у него есть ограничения по скорости, хотя если применять USB переходник то скорость можно поднять и выше 115200. Если в устройстве есть изернет можно его как консоль использовать, если конечно не идет отладка самого стека smile.gif.

Что косается отладчика внутрисхемного, так он сбивает работу устройства, отладчик останавливает процессор! а не время, по этому когда вы смотрите информацию время идет большая часть периферии продолжает работать, сеть шлет вам пакеты, и т.д. в общем реалтайм уже отсутствует, из за этого некоторые вещи невозможно отладить!. да и скорость у него низкая попробуйте посмотреть 2 -килобайта массив ? мало - того что среда тормозить начинает, так еще и с программой непонятно что творится будет, а через консоль это раз и файл записан и смотрите на него как хотите. Еще отладчик накладывает жесткие требования к выводу информации, в консоли выводите так как вам нужно или на сколько позволяют ресурсы.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Dec 18 2008, 15:01
Сообщение #13


Гуру
******

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



Цитата(MALLOY2 @ Dec 18 2008, 17:24) *

Добавлю одно из важных отличий - ведется лог событий той или иной заказанной степени детализации и видны причинно следственные связи. Причем все это и без подключенного отладчика в реальных объектовых условиях эксплуатации.
Цитата(FormatCft @ Dec 18 2008, 14:55) *
Просто хочется иметь очень широкий спектр инструментов: начиная от пилки для ногтей и кончая пилой "дружбой" для особо-запущенных случаев.

Так я, если внимательно читали, их и имею. Только ногти не запускаю так сильно, что-бы бензопила потребовалась smile.gif. Реально, мне пригодился-бы отладчик один раз - когда изучал, например, ARM, писал порт операционки. Вот тогда она у меня разок зациклилась намертво и пришлось искать проблему откатами и делением пустыни пополам. Но тогда в эту первую неделю отладчик мне еще не привезли. А когда уже системка поднялась, консольнормальная буферизированая, обработчик exceptions... отладчик и не нужен практически. Для AVR пользовался (кроме загрузки)тоже один раз для совсем мелюзги. PIC - только для загрузки. Больше всего пользовал BlackFin-овский.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
scout
сообщение Dec 18 2008, 15:41
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 120
Регистрация: 4-01-06
Из: Москва
Пользователь №: 12 837



MALLOY и zltigo спасибо за информацию.
Сейчас как раз настало то время, когда надо отладить пару девайсов, а отладчика нет.
Попробую написать универсальный модуль для вывода отладочной информации...

Кстате, а в качестве терминальной программы что пользуете? Hyper Terminal?


--------------------
То, что неясно, следует выяснить. То, что трудно творить, следует делать с великой настойчивостью.
Конфуций
Go to the top of the page
 
+Quote Post
FormatCft
сообщение Dec 18 2008, 15:52
Сообщение #15


Местный
***

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



Цитата(scout @ Dec 18 2008, 20:41) *
MALLOY и zltigo спасибо за информацию.
Сейчас как раз настало то время, когда надо отладить пару девайсов, а отладчика нет.
Попробую написать универсальный модуль для вывода отладочной информации...

Кстате, а в качестве терминальной программы что пользуете? Hyper Terminal?

GemorTerminal на самом деле это. Совершенно не удобен. Лучше использовать что-нибудь по лучше. Или лучше написать самому (лично сам своё использую).
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd June 2025 - 14:39
Рейтинг@Mail.ru


Страница сгенерированна за 0.01507 секунд с 7
ELECTRONIX ©2004-2016