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

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

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

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

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

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

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

 
Опции темы
Непрочитано 23.06.2010, 00:43  
291066
Прописка
 
Регистрация: 05.03.2010
Сообщений: 144
Сказал спасибо: 47
Сказали Спасибо 195 раз(а) в 19 сообщении(ях)
291066 на пути к лучшему
По умолчанию Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

Всем доброго дня.
Столкнулся со следующей непоняткой - при изменении режимов оптимизации компилятора нарушается работоспособность программы. Если компилится без оптимизации - все работает нормально. Но только стоит включить оптимизацию - гаплык, часть функций отрабатывает неверно. Ничего кроме режима оптимизации не меняется.
Использую AVR Studio 4.18 bild 692.
Может кто подскажет где собаке порыться?

Я.
Реклама:
291066 вне форума  
Непрочитано 23.06.2010, 01:05  
OlegNZH
Почётный гражданин KAZUS.RU
 
Регистрация: 28.02.2010
Сообщений: 2,297
Сказал спасибо: 53
Сказали Спасибо 461 раз(а) в 392 сообщении(ях)
OlegNZH на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

На другой ветке недавно ссылка проходила - Вам может подойти http://chipenable.ru/index.php/progr...e-keyword.html

Последний раз редактировалось OlegNZH; 23.06.2010 в 01:07.
OlegNZH вне форума  
Сказали "Спасибо" OlegNZH
291066 (23.06.2010)
Непрочитано 23.06.2010, 01:06  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

Читаем про volatile.
volatile_for_chainiks.pdf
И здесь
st_1 вне форума  
Эти 3 пользователя(ей) сказали Спасибо st_1 за это сообщение:
291066 (23.06.2010), MiklScherbak (25.06.2010), nml (23.06.2010)
Непрочитано 23.06.2010, 01:42  
nml
Супер-модератор
 
Аватар для nml
 
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,381
Сказал спасибо: 1,962
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
nml на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

В таком случае стОит поизучать листинги.

Ну или хотя бы - показать программу и указать, что собственно меняется при различных оптимизациях.

Вообще, корректно написанная программа логику свою изменить, IMHO, не может.
А глюки... Они разные бывают
__________________
[ жизнь приятна и красива, если выпить литр пива ]
nml вне форума  
Непрочитано 23.06.2010, 02:05  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

Сообщение от nml Посмотреть сообщение
что собственно меняется при различных оптимизациях.
ИМХО нет особого смысла.
Как правило всё разваливается на первом уровне оптимизации.
А вот листинги посмотреть стоит.

Последний раз редактировалось st_1; 23.06.2010 в 02:07.
st_1 вне форума  
Непрочитано 23.06.2010, 12:21  
291066
Прописка
 
Регистрация: 05.03.2010
Сообщений: 144
Сказал спасибо: 47
Сказали Спасибо 195 раз(а) в 19 сообщении(ях)
291066 на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

Благодарю всех за советы. Теперь понятно в каком направлении копать. Расстановка volatile на тех переменных которые могут меняться в прерываниях не привела к работоспособности программы. Сегодня займусь анализом листинга. Пограмма вроде простая, но впервые за много лет вернулся к программированию, да еще и на совершенно незнакомом процессоре.
По результатам копания обязательно отпишусь.

И еще один вопрос - можно ли получить на тине2313 четыре аппаратных выхода ШИМ с таймера? У меня нет ШИМа на 0C0B (все остальные работают нормально). я подозреваю что накосячил в инициализации, но пока не могу найти где.

Я.
291066 вне форума  
Непрочитано 23.06.2010, 13:00  
kittec
Гражданин KAZUS.RU
 
Регистрация: 14.11.2008
Сообщений: 701
Сказал спасибо: 298
Сказали Спасибо 283 раз(а) в 193 сообщении(ях)
kittec на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

На ATtiny2313 получить четыре аппаратных ШИМа легко, но только от двух таймеров.
kittec вне форума  
Непрочитано 23.06.2010, 14:52  
291066
Прописка
 
Регистрация: 05.03.2010
Сообщений: 144
Сказал спасибо: 47
Сказали Спасибо 195 раз(а) в 19 сообщении(ях)
291066 на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

Я тоже так понимаю. Три выхода работают нормально а четвертый молчит. Значит где то ишибся в инициализации. один ШИМ с этого таймера работает нормально. Буду копать.

Последний раз редактировалось 291066; 23.06.2010 в 16:59.
291066 вне форума  
Непрочитано 23.06.2010, 15:00  
MisterDi
Почётный гражданин KAZUS.RU
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,294
Сказал спасибо: 442
Сказали Спасибо 1,048 раз(а) в 706 сообщении(ях)
MisterDi на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

Сталкивался с тем, что компилятор выбрасывал "лишние" по его мнению команды, что приводило к изменению временнЫх параметров импульсов. Присоединяюсь к мнению nml о необходимости изучения листинга.
__________________
misterdi<@>i.ua
MisterDi вне форума  
Непрочитано 24.06.2010, 09:27  
wowlw
Частый гость
 
Регистрация: 26.08.2008
Сообщений: 23
Сказал спасибо: 10
Сказали Спасибо 8 раз(а) в 5 сообщении(ях)
wowlw на пути к лучшему
По умолчанию Re: Может ли меняться логика откомпилированной программы при использовании разных режимов оптимизации?

Оптимизацию по скорости лучше не применять, а критичные ко времени процедуры
писать на ассемблере. Особенно прерывания.
wowlw вне форума  
 

Закладки
Опции темы

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

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

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


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot