Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

Результаты опроса: Я пользуюсь компилятором для AVR ...
WinAVR 17 27.42%
IAR 15 24.19%
CodeVision 22 35.48%
Другой компилятор С 1 1.61%
Я пишу не на С 7 11.29%
Голосовавшие: 62. Вы ещё не голосовали в этом опросе

 
Опции темы

IAR AVR

Непрочитано 15.09.2009, 17:47  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: IAR AVR

Сообщение от oleg110592 Посмотреть сообщение
volatile может в ИАРе и не надо:
44 bytes of CODE memory (+ 136 range fill )
64 bytes of DATA memory
Ну да, не надо . Уберите вообще объявление плавучих переменных и саму функцию CalcC - получите свои 136 байт. Выходит плавучее умножение занимает 0 байт и выполняется за 0 тактов?
Кстати как раз размер меня тут практически не интересует. Он растет не так и сильно. А вот время выполнения арифметики важнее, тут кристалл пожирнее не возьмешь. А Вы время не привели...
Однако на количество смайлов ограничение [тут типа улыбка]
Реклама:

Последний раз редактировалось kison; 15.09.2009 в 17:57.
kison вне форума  
Непрочитано 15.09.2009, 18:10  
oleg110592
Гражданин KAZUS.RUN
 
Регистрация: 05.04.2009
Сообщений: 973
Сказал спасибо: 35
Сказали Спасибо 154 раз(а) в 133 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: IAR AVR

Сообщение от kison Посмотреть сообщение
Ну да, не надо . Уберите вообще объявление плавучих переменных и саму функцию CalcC - получите свои 136 байт. Выходит плавучее умножение занимает 0 байт и выполняется за 0 тактов?
У меня достаточно проектов на ИАРе и там ни одного volatile. Но устройства работают и продаются давно (первый мой ИАР 4.11 2005г). Я не спец по Си (использую малую часть возможностей) но volatile, всегда думал, нужен скорее для переменных, которые используются в прерываниях.
volatile - лучший друг программиста работающего с потоками -
http://www.crossplatform.ru/node/183
oleg110592 вне форума  
Непрочитано 15.09.2009, 18:24  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: IAR AVR

Сообщение от oleg110592 Посмотреть сообщение
У меня достаточно проектов на ИАРе и там ни одного volatile. Но устройства работают и продаются давно (первый мой ИАР 4.11 2005г). Я не спец по Си (использую малую часть возможностей) но volatile, всегда думал, нужен скорее для переменных, которые используются в прерываниях.
volatile - лучший друг программиста работающего с потоками -
У меня как минимум одна переменная в каждом проекте объявляется с этим квалификатором. Именно потому, что я использую прерывания, а это отдельный поток. Ну и что бы сообщить основному потоку о событии из прерывания и требуются такого типа переменные.
А в данном случае ( тест) без этого квалификатора компилятор просто бы перемножил две переменных еще на этапе компиляции. Для того чтобы не дать ему стать читером и пришлось ввести volatile. Кстати GCC вел себя так же - заоптимизировал в 0. Но volatile и ему вправил мозг.
kison вне форума  
Непрочитано 15.09.2009, 18:40  
urry
Почётный гражданин KAZUS.RUN
 
Аватар для urry
 
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 107 раз(а) в 66 сообщении(ях)
urry на пути к лучшему
По умолчанию Re: IAR AVR

Сообщение от oleg110592 Посмотреть сообщение
У меня достаточно проектов на ИАРе и там ни одного volatile.
действительно прикольно.
(С) В толпе раздался смех - Остап оценил шутку
...
urry вне форума  
Непрочитано 15.09.2009, 18:47  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: IAR AVR

Вот странно - 15 человек в опросе призналось в использовании этого компилятора. Но почему то ни один не отписывается - почему он сделал такой выбор. И чем его не устроил GCC. Про то, у кого он на законных основаниях спрашивать не будем. Видимо только у меня Правда ненадолго...
kison вне форума  
Непрочитано 15.09.2009, 18:49  
oleg110592
Гражданин KAZUS.RUN
 
Регистрация: 05.04.2009
Сообщений: 973
Сказал спасибо: 35
Сказали Спасибо 154 раз(а) в 133 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: IAR AVR

Попробую в следующем проекте GCC . Скажите, WinAVR 2009 можно пользоваться или 2006 надежнее, или сборки Клена с Электроникса?
oleg110592 вне форума  
Непрочитано 15.09.2009, 18:54  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: IAR AVR

Я использую WinAVR-20071221. Обновляться пока не тянет. Крайние сборки брать - стать бетатестером. Сборки "от клена" это самый пик бетатестерства - он собирает "по горячему", только патчи какие вышли, так и собрал. Хорошо это или плохо - как повезет.
kison вне форума  
Сказали "Спасибо" kison
oleg110592 (15.09.2009)
Непрочитано 15.09.2009, 20:23  
alberio
Гражданин KAZUS.RUN
 
Аватар для alberio
 
Регистрация: 08.07.2006
Сообщений: 582
Сказал спасибо: 76
Сказали Спасибо 90 раз(а) в 66 сообщении(ях)
alberio на пути к лучшему
Сообщение Re: IAR AVR

Сообщение от kison Посмотреть сообщение
Вот странно - 15 человек в опросе призналось в использовании этого компилятора. Но почему то ни один не отписывается - почему он сделал такой выбор. И чем его не устроил GCC. Про то, у кого он на законных основаниях спрашивать не будем. Видимо только у меня Правда ненадолго...
Не, ну народ, действительно! Юзеры иара, отмечались же на голосовании, так встаньте на защиту... Ну или, признайте, что хуже иар.
2 kison На счет приведеных вами чисел согласен - для дебага. А соберите-ка релиз! Думаю цифры серъезно поменяются...
__________________
Sex, Druggs, Rock&Roll
alberio вне форума  
Непрочитано 15.09.2009, 21:35  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: IAR AVR

Сообщение от alberio Посмотреть сообщение
А соберите-ка релиз!
А как Вы думаете в чем отличие между релизом и дебагом? Я то соберу без проблем, но заранее уверен что кроме неудобства в расчете тактов больше ничего не измениться. Ни на такт быстрее не будет. У ГЦЦ релиз и дебаг собираются одновременно. Точнее собирается дебаг, а затем отбрасывается вся отладочная информация ( метки, привязка к исходнику и т.п.) и из дебага извлекается ... релиз. Было бы удивительно, если бы что то менялось - я отладился, рассчитал такты, собрал релиз и.. нихрена не работает, код поменялся! Зачем тогда вообще нужен дебаг?

Сообщение от alberio Посмотреть сообщение
или, признайте, что хуже иар
Уже пора Видимо счетчик накрутился сам, а ИАР никто не использует. Хотя, если честно, не так важен инструмент, как степень владения оным. Я вполне допускаю что допустил при тестах ИАР какую то ошибку. Все же это не мой инструмент "на каждый день". Вот в тестах GCC я уверен, и уверен в полученных цифрах. С ИАР меня можно и переубедить. Но не словами, а тактами.
kison вне форума  
Непрочитано 15.09.2009, 23:58  
alberio
Гражданин KAZUS.RUN
 
Аватар для alberio
 
Регистрация: 08.07.2006
Сообщений: 582
Сказал спасибо: 76
Сказали Спасибо 90 раз(а) в 66 сообщении(ях)
alberio на пути к лучшему
По умолчанию Re: IAR AVR

Не могу ничем ответить, кроме опечаленой мины лица
Я покрутил оптимизацию. По размеру обыгрывает гцц, по тактам - никак
Но вернусь к причине, заставившей меня искать альтернативу винавру - его оптимизатор. Не раз я подымал вопрос, как с ним "бороться". Сетовал на его "негибкость" (даже сравнить с оптимизатором иаровским), на невозможность отключить оптимизацию для отдельного файла или куска кода.
На этот вопро я получал практически всегда один и тот же ответ - все дело в кривых ручонках, которые код пишут. Сложно спорить, ведь скорее всего это так, и надо просто набить руку и подружится с оптимизатором. Но пока я не готов после каждой сборки глядеть в дизассемблер, не вырезал ли чего нужного оптимизатор. А ведь не все его глюки состоят в "вырезке". Лучше пожертвую быстродействием. Пока, на данном этапе будть юзать ИАР.

Ну, вот, теперь бросайте в меня камни
__________________
Sex, Druggs, Rock&Roll
alberio вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
IAR for AVR kassiopay Микроконтроллеры, АЦП, память и т.д 5 27.03.2009 17:20
Глюк IAR C/EC++ Compiler for AVR 3.20 paha1956 Коллекция глюков 0 01.11.2006 17:31
IAR for AVR vasilij-kursikov Микроконтроллеры, АЦП, память и т.д 29 28.09.2006 18:14
IAR EW for Atmel AVR 4.12A Nikolajx Микроконтроллеры, АЦП, память и т.д 6 09.01.2006 15:18
[Решено] Ошибка в IAR C for AVR Lean Коллекция глюков 0 15.05.2003 11:34


Часовой пояс GMT +4, время: 05:48.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.