|
Разница CodeVision и WinAVR |
|
|
|
Jul 22 2006, 10:15
|
Частый гость
 
Группа: Свой
Сообщений: 83
Регистрация: 17-05-06
Пользователь №: 17 190

|
Гребаные идентификаторы.... Как просто было в CodeVision : PORTD.1=1; DDRD=1; Пытаюсь в WinAVR сделать - достал примерно следующий код: Код DDRD &= ~(_BV(PD2)); // Назначаем 2-ю линию порта D на вход PORTD |= (_BV(PD2)); // подключаем "подтягивающий" резистор Нельзя ли попроще как-нибудь? И еще вопрос - инициализирую АЦП - выдает беспорядочные хаотичные цифры. Понятно, что дело в том, что ловятся шумы. Вылечил резистором 4,7 кОм на питание. А как-нить программно нельзяли?
|
|
|
|
|
 |
Ответов
|
Jul 25 2006, 11:31
|

Профессионал
    
Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380

|
Цитата Если писать со знанием особенностей конкретного компилятора, то охотно верю. USB драйвер под WinAVR (gcc) компилируется компактнее, чем IAR'ом, поскольку специально оптимизирован под gcc (но не содержит непереносимых между этими компиляторами вещей). Истинную правду говорите. Очень многое зависит от того как писать. Цитата Однако, попытка скомпилировать сторонний код, а именно - реализацию AES декриптора от Atmel, - показала, что для такого кода gcc существенно менее эффективен по сравнению с IAR (1.5 и 1 килобайт кода соответственно). Это стандартная Атмеловская аппликуха? Надо будет попробовать. Давно хотел поиметь для теста реальную задачу, чтобы как следует проанализировать оптимизацию IAR и WinAVR.
--------------------
Вони шукають те, чого нема, Щоб довести, що його не існує.
|
|
|
|
|
Jul 25 2006, 17:37
|

Частый гость
 
Группа: Свой
Сообщений: 175
Регистрация: 26-01-06
Из: Sevastopol
Пользователь №: 13 664

|
Цитата(beer_warrior @ Jul 25 2006, 14:31)  Это стандартная Атмеловская аппликуха? Надо будет попробовать. Давно хотел поиметь для теста реальную задачу, чтобы как следует проанализировать оптимизацию IAR и WinAVR. Это Appnote по реализации AES boot loader'а от атмела. Проект сделан под IAR, но я в попытках переделать этот проект под USB уперся в размер кода, чтобы впихнуть его с кучкой дополнительных функций и USB HID интерфейсом в 4 килобайта меги32. Потому проводил разные эксперименты по поводу того, как уменьшить размер кода, и пробовал компилировать разными компиляторами (а драйвером avr-usb поддержаны сегодня только gcc и IAR). Вышло, что сказал: сам драйвер компактнее транслируется gcc (но он под него оптимизирован, как и написано в его описании). А вот на коде AES я проиграл полкилобайта. Остался на IAR.
|
|
|
|
Сообщений в этой теме
virtuality Разница CodeVision и WinAVR Jul 22 2006, 10:15 ksv198 Цитата(virtuality @ Jul 22 2006, 14:15) Г... Jul 22 2006, 12:30 niccom Цитата(virtuality @ Jul 22 2006, 14:15) Г... Jul 22 2006, 12:34 xemul Код#define bitset(var,bitno) ((var... Jul 22 2006, 14:20 pitt Разница CodeVision и WinAVR в том, что один пакет ... Jul 22 2006, 16:13 vesago Цитата(pitt @ Jul 22 2006, 19:13) Разница... Jul 23 2006, 06:41  defunct Цитата(vesago @ Jul 23 2006, 09:41) Недос... Jul 23 2006, 20:15   Serg79 Цитата(defunct @ Jul 24 2006, 00:15) Цита... Jul 24 2006, 04:59    defunct Цитата(Serg79 @ Jul 24 2006, 07:59) Ну эт... Jul 24 2006, 06:31    vet Цитата(Serg79 @ Jul 24 2006, 08:59) Писат... Jul 24 2006, 07:52     Serg79 Цитата(vet @ Jul 24 2006, 11:52) Цитата(S... Jul 24 2006, 08:55 Laksus Цитатаxemul
#define bitset(var,bitno) ((var) |= 1 ... Jul 22 2006, 16:39 xemul Цитата(Laksus @ Jul 22 2006, 20:39) Понят... Jul 22 2006, 17:38 pitt Во-первых,
PORTD.1 = 1 эквивалентно PORTD |= ( 1 ... Jul 23 2006, 21:32 vesago Цитата(pitt @ Jul 24 2006, 00:32) Во-перв... Jul 24 2006, 07:14  pokos Цитата(vesago @ Jul 24 2006, 11:14) PORTD... Jul 24 2006, 09:21   vesago Цитата(pokos @ Jul 24 2006, 12:21) Цитата... Jul 24 2006, 09:53    pokos Цитата(vesago @ Jul 24 2006, 13:53) PORTD... Jul 24 2006, 12:43     _Bill Цитата(pokos @ Jul 24 2006, 15:43) Цитата... Jul 24 2006, 12:57     Семён Цитата(pokos @ Jul 24 2006, 16:43) Цитата... Jul 24 2006, 13:07      _Bill Цитата(Семён @ Jul 24 2006, 16:07) Цитата... Jul 24 2006, 13:14       Семён Цитата(_Bill @ Jul 24 2006, 17:14) Цитата... Jul 24 2006, 13:28        pokos Цитата(Семён @ Jul 24 2006, 17:28) товари... Jul 24 2006, 14:11       Woodoo Цитата(_Bill @ Jul 24 2006, 15:14) Цитата... Jul 24 2006, 19:31        pitt Цитата(Woodoo @ Jul 24 2006, 15:31) Если ... Jul 24 2006, 22:42 vet Serg79
Ручками совершенно необязательно; лично я и... Jul 24 2006, 09:05 Семён Цитата(vet @ Jul 24 2006, 13:05) Serg79
Р... Jul 24 2006, 09:37 Serg79 Цитата(vet @ Jul 24 2006, 13:05) Serg79
Р... Jul 24 2006, 10:01 WHALE дел на 5 минут,к тому-же я обычно свои библиотечны... Jul 24 2006, 11:24 Serg79 Цитата(WHALE @ Jul 24 2006, 15:24) дел на... Jul 24 2006, 11:55  Семён Цитата(Serg79 @ Jul 24 2006, 15:55) Цитат... Jul 24 2006, 12:23  defunct Цитата(Serg79 @ Jul 24 2006, 14:55) А Cod... Jul 24 2006, 23:06 beer_warrior ЦитатаИ правильно. Хотя:
А IAR еще лучше, но по 5.... Jul 25 2006, 06:44 osnwt Цитата(beer_warrior @ Jul 25 2006, 09:44)... Jul 25 2006, 10:59 Serg79 ЦитатаWinAVR не хуже, он просто сложнее в освоении... Jul 25 2006, 09:04 beer_warrior ЦитатаНасколько слышал, у него есть проблемы с адр... Jul 25 2006, 11:09 osnwt Цитата(beer_warrior @ Jul 25 2006, 14:09)... Jul 25 2006, 11:22 pitt Цитата(beer_warrior @ Jul 25 2006, 07:09)... Jul 25 2006, 15:31 beer_warrior Цитатаего стоит хотя бы отсутствие прагмы управлен... Jul 25 2006, 17:35 pitt Цитата(beer_warrior @ Jul 25 2006, 13:35)... Jul 25 2006, 18:50 tiasur AVRGCC 4.1.1
При любой оптимизации:
Код
PORTD ... Jul 25 2006, 22:16 pitt WinAVR size:
Код
PORTD = ( 1 << 0 ... Jul 26 2006, 01:04  tiasur pitt, а какая у Вас версия? Jul 26 2006, 01:43   pitt Цитата(tiasur @ Jul 25 2006, 21:43) pitt,... Jul 26 2006, 14:04    Сергей Борщ О! Может тут кто-нибудь скажет:
1) как застави... Jul 26 2006, 17:16     aesok Цитата(Сергей Борщ @ Jul 26 2006, 21:16) ... Jul 26 2006, 21:03 beer_warrior Цитата2) объявляю две функции (putstring, putstrin... Jul 26 2006, 21:53 pitt Цитата(beer_warrior @ Jul 26 2006, 17:53)... Jul 26 2006, 23:01 pitt Цитата(beer_warrior @ Jul 26 2006, 17:53)... Jul 27 2006, 12:58 pitt Цитата(beer_warrior @ Jul 26 2006, 17:53)... Jul 27 2006, 13:21 Seasonf Прошу прощения за глупый вопрос, но как заставить ... Aug 11 2006, 08:07 pitt Код#include <avr/pgmspace.h>
...
char cali... Aug 11 2006, 11:15 Seasonf Или так:
#include <avr/pgmspace.h>
...
pro_... Aug 11 2006, 12:34
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|