WinAvr в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

saint981 писал(а):то есть создаем MFile по стандартному шаблону (описан в журнале РА):


Зачем вам какие-то журналы ?! Вы ж на РадиоКоте ! Тут все есть. Знай почитывай.

Я делал как написано в начале этого топика - топика про WinAVR.
DeltaQ
Открыл глаза
Сообщения: 45
Зарегистрирован: Чт окт 30, 2008 13:26:18

Сообщение DeltaQ »

Как точно узнать сколько тактов будет выполняться команда на си?
us = CPU_F * us;
while( us > 0 ) us--;
saint981
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Вс мар 08, 2009 22:52:27
Откуда: Ukraine

Сообщение saint981 »

спасибо за помощь - разобрался в чем была ошибка!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

DeltaQ писал(а):Как точно узнать сколько тактов будет выполняться команда на си?
us = CPU_F * us;
while( us > 0 ) us--;


Скомпилировать и посмотреть посчитать в листинге АСМ или в симуляторе.
GNN
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Вт ноя 04, 2008 12:44:24

Сообщение GNN »

Здравствуйте коты.
Есть одна прорамма для WinAVR, и мэйкфайл готовый.
Я перекомпилировал её с Меги8 на Мегу16. Проблема осталась- переделать мейкфайл для coff и extendet coff. Использую WinAVR-20090313. Думаю, кто нибудь уже имеет опыт ручного редактирования мейкфайлов.
Помогите пжлст. Прилагаю мейкфайл.
Вложения
Makefile.txt
(1.89 КБ) 368 скачиваний
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Рекомендую его с исходниками приложить.
GNN
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Вт ноя 04, 2008 12:44:24

Сообщение GNN »

Вложения
Overley.zip
переделано на МЕГУ16
(44.11 КБ) 292 скачивания
GNN
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Вт ноя 04, 2008 12:44:24

Сообщение GNN »

Я добился создания COF, - нашёл рабочий мейкфайл и кое-что подправил под себя. 8)
Вложения
Makefile.zip
Изменена степень оптимизации.
(2.68 КБ) 282 скачивания
GNN
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Вт ноя 04, 2008 12:44:24

Сообщение GNN »

Только, почему-то отладка в Студии застопорилась. :(
Буду разбираться дальше, а пока перевёл на русский 5ый раздел мануала по WinAVR. Может кому-то пригодиться.
Вложения
WinAVR+A-STUDIO, VMLAB, etc.RUS.txt
(6.39 КБ) 599 скачиваний
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

и в VMLAB не пашет и нет маркеров слева от исходника чтоб точки останова ставить.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

если мне память не изменяет, то из-под WinAVR студия и протеус прекрасно ведут отладку по ELF-файлу, если при компиляции были включены опции -g3 -gdwarf-2
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
GNN
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Вт ноя 04, 2008 12:44:24

Сообщение GNN »

Спасибо, ARV. вечером попробую.
GNN
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Вт ноя 04, 2008 12:44:24

Сообщение GNN »

Всё так. :)) Пашет и с первоначальным мейкфайлом. Студия последняя,
с окошком Шпрота VSM. Сегодня скачал. И не надо никаких coff.
Ещё раз спасибо ARV. :))
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Естественно cof нужен только для VMLAB, причем если проект создавать в VMLAB то мэйкфайл вообще не нужен, VMLAB все сам делает. 3 примера в VMLAB есть.
Аватара пользователя
Sounds
Прорезались зубы
Сообщения: 238
Зарегистрирован: Вт май 27, 2008 23:23:24

Сообщение Sounds »

WinAVR работает под vista или нет?
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Пишут не уж то правду ?

http://kazus.ru/forum/topics/15004.html

В проекте WinAVR при использовании "itoa" добавляется 180 байт, а в проекте CVAVR - 112, вот эта разница подрубает у меня всякую решительность. Но теперь даже не это важно. Просто принципиально непонятно как заставить этот код работать в WinAVR'e. Поэтому прошу помощи.


А вопрос - как куски асма вставлять в WinAVR ?
Аватара пользователя
Andrejkin
Первый раз сказал Мяу!
Сообщения: 34
Зарегистрирован: Пн сен 29, 2008 21:47:32

Температурный даталоггер

Сообщение Andrejkin »

Господа, кто может протестит исходники на предмет компиляции? У меня при компиляции вылазит куча ошибок. Юзаю WinAVR20070525

Спасибо!

Температурный даталоггер - http://www.geocities.com/larshomepage/
Исходники - http://www.geocities.com/larshomepage/TheThermometerSwedish.zip
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

ikarab писал(а):Пишут не уж то правду ?

http://kazus.ru/forum/topics/15004.html

В проекте WinAVR при использовании "itoa" добавляется 180 байт, а в проекте CVAVR - 112, вот эта разница подрубает у меня всякую решительность. Но теперь даже не это важно. Просто принципиально непонятно как заставить этот код работать в WinAVR'e. Поэтому прошу помощи.


А вопрос - как куски асма вставлять в WinAVR ?

1. У меня был проект, относительно большой, под 12К итогового кода. Я обновил WinAVR и получил увеличение размера аж на 1,3К. Стал задавать вопросы и в конце концов получил ответ: в последнее время GCC вообще и AVR-GCC в частности развиваются в сторону агрессивной оптимизации по скорости. Проявляется это в том, что все бОльшие и бОльшие по размеру функции вставляются в код инлайном по умолчанию, ну и кое-какие другие вещи происходят. Разумеется, это вызывает видимое разрастание кода, хотя по скорости его исполнения предполагается выигрыш. Однако, GCC тем и отличается от CVAVR (мне так кажется), что предоставляет программисту богатейшие возможности для регулирования поведения компилятора. В частности, всю агрессию оптимизатора можно отклбючить или умерить. В общем, я сделал небольшую памятку по ключикам для оптимизации... короче, упомянутый выше проект в новой версии я собрал размером 9,8К - практически на 2К меньше, чем было! кстати, CVAVR, видимо, более лояльна к неаккуратности программиста, а GCC - четко следует стандарту. в итоге для WinAVR бывает достаточно написать static перед функциями, которые используются в единственном модуле, чтобы получить чуть ли не 10% экономии объема кода. Т.е. пишите грамотно - будет более оптимально.
2. С ассемблерными вставками в WinAVR тоже по сравнению с CVAVR двояко: с одной стороны мощность ассеблерных вставок умопомрачительная, а с другой - сложность их применения повыше будет. Главная особенность в том, что в WinAVR не приветствуется использование явно указанных регистров в командах ассемблерных вставок - распределение регистров берет на себя компилятор, чтобы даже ассемблерные вставки оптимизировались! кстати, благодаря тому, что WinAVR влезает оптимизатором и в ассемблерные вставки, частенько надо использовать volatile для ассемблера :) Короче, тема ассемблерных вставок в WinAVR довольно обширна, а мне что-то подсказывает, что здесь не очень любят заморочки...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

ARV писал(а):CVAVR, видимо, более лояльна к неаккуратности программиста

Это точно. Потому я ирекомендую новичкам CVAVR.

ARV писал(а):здесь не очень любят заморочки...

Да их нигеде не любят наверно. просто чтоб морочиться надо иметь опыт и знания.

У новичков нет ни того не другого.
Потому CVAVR для новичков самое то.
Изображение
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

а я всем, даже новичкам, советую сразу писать аккуратно, тщательно обдумывая все. тогда проблем бывает меньше хоть в WinAVR, хоть в CVAVR.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Ответить

Вернуться в «AVR»