roboforum.ru

Технический форум по робототехнике.
Текущее время: 01 мар 2025, 13:41

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 09 июн 2010, 20:45 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Ежели кто не знает - релиз WinAVR 20100110 был последним в том виде как мы его знаем. Последующие релизы будут выпускаться уже Atmel, вероятно, в составе AVR Studio. Эрик Уедингтон (Eric Weddington), основатель и майтейнер проекта, уже давно работает на Atmel.

Как это ни парадоксально, WinAVR включал новейшие патчи раньше, чем тулчейны в составе дистрибутивов Linux.

Ссылки по теме:
http://lists.nongnu.org/archive/html/av ... 00015.html
http://www.avrfreaks.net/index.php?name ... 0&highligh

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 09 июн 2010, 21:22 
Не в сети
Аватара пользователя

Зарегистрирован: 16 май 2009, 12:50
Сообщения: 1530
Откуда: Россия
прог. языки: Java, C
может в заголовке вы ошиблись, и надо было написать - "WinAVR умер. Да здравствует AVR Studio!"? а то тавтология прям получается

_________________
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 09 июн 2010, 21:51 
Не в сети
Аватара пользователя

Зарегистрирован: 15 ноя 2009, 13:37
Сообщения: 750
Откуда: Porto Franco "Odessa"
на мой взгляд хорошее слияние будет... еще бы нормальный редактор с подсветкой и старт визард как у CodeVisionAVR было бы вообще прелесть...

_________________
die Wahrheit ist irgendwo da draußen


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 09 июн 2010, 22:28 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
А меня, честно говоря, пугает такое стремительное, но экстенсивное развитие.
(впрочем я это во многих проектах наблюдаю).
Что принципиально нового добавилось в последних версиях (ну кроме поддержки новых чипов)?

Я вижу реально, что код становится с каждым разом все объемнее и тормознее (например если
сравнивать с древним ГЦЦ 2.9)... Некоторые невнятные моменты (не то чтобы ошибки, просто "странности" компилятора) продолжают поворяться из версии в версию... И такое ощущение,
что разработчикам все больше и больше наплевать на качество генерируемого кода...

С другой стороны, а что появилось принципиально нового, может поддержка плюсов? или реентерабельные библиотеки? - фига с маслом!...
Из более-менее значительного со времен 2.9 (а это оч давно) пожалуй припомню только:
- Изменились соглашения о регистрах для аргументов и результатов функций (примерно в 3.10)
- Появилась в библиотеках прямая поддержка регистров ввода-вывода
(и некоторые алиасы для совместимости с IAR)
- Начали генериться нормальные coff, а потом и студия стала поддерживать elf

Но при чем здесь падение качества кода???

Добавлено спустя 20 минут 8 секунд:
blindman писал(а):
Как это ни парадоксально, WinAVR включал новейшие патчи раньше, чем тулчейны в составе

Тут нет никакого парадокса.
Если вы посмотрите незамыленным реальным взглядом, то вы увидите,
что набор средств разработки под винду изначально был гораздо богаче
(компиляторов, программаторов, симуляторов, кадов, сред для ФПГА и т.п.)
В том числе и бесплатных, и условно-бесплатных...
И разработчик по факту сидел (и во многих случаях продолжает сидеть) под виндами.
Да, есть, правда, огромный класс встроенных осей с пра-линуксовым ядром,
но одно другому не мешает - потому что от кросс-компиляции так и так никуда не денешься.

Да, в последнее время немножко (совсем чуть-чуть) стали двигаться
удобные средства для никсов... Но, имхо, им еще плясать и плясать...
Про высокоинтегрированные среды (типа протеуса, например) я просто молчу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 09 июн 2010, 23:16 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
WinAVR это хорошо. Каковы его недостатки ?

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 10 июн 2010, 03:37 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Michael_K писал(а):
Тут нет никакого парадокса.
Если вы посмотрите незамыленным реальным взглядом, то вы увидите,
что набор средств разработки под винду изначально был гораздо богаче

При чем тут это? Весь тулчейн - изначально никсовый, его чтобы просто собрать под windows нужны костыли типа mingw

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 10 июн 2010, 09:39 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Разработчики сидят под виндами и заинтересованность пользователей в виндовой версии гораздо выше.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 30 июн 2010, 09:29 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Вопросы по WinAVR В коде старинном вот такая фигня:

static inline uint16_t time( void )
{
return __inw_atomic ( TCNT1L );
}

в доке 2002 года написано что это в io.h было, в новом нет конечно теперь в
#include <util/atomic.h>

Как мне написать это в современном варианте ? Вот наметка:

static inline uint16_t time( void )
{
uint16_t temp;
ATOMIC_BLOCK(ATOMIC_RESTORESTATE)
{
temp = ((uint16_t) TCNT1L) | ((uint16_t)TCNT1H <<8);
}
return temp;
}

Как то коряво.

1) можно ли return засунуть в атомик блок и написать сразу без применения temp
return (((uint16_t) TCNT1L) | ((uint16_t)TCNT1H <<8));

2) нужны ли прведения типов тут ?

3) как красиво написать ?

4) решено где посмотреть, найти старую io.h или исходник её - чтоб посмотреть как там было. Есть где то архив GCC 3.01
Dead подсказал что архив WinAVR там - http://sourceforge.net/projects/winavr/files/

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 30 июн 2010, 10:29 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
1. Да
2. Нужны перед сдвигом - потому что сдвиг 8-битного значения на 8 разрядов не имеет смысла
3.
Код:
uint16_t time(void)
{
   ATOMIC_BLOCK(ATOMIC_RESTORESTATE)
   {
      return TCNT1;
   }
}

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 30 июн 2010, 10:45 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Большое спасибо за помощь, так напишу.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 30 июн 2010, 11:25 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Блиндман, а разве при таком ретерне рестор отработает?

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 30 июн 2010, 11:41 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Отработает. Переменная для сохранения состояния макросом объявляется с атрибутом __cleanup__(__iRestore), в __iRestore восстанавливается SREG

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 30 июн 2010, 13:12 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Какая опция оптимизации в WinAVR на максимальную скорость ? Размер кода совсем не важен.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 30 июн 2010, 15:20 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
-O2 хотя для авр не редко -Os оказывается быстрей.
Во всяком случае для gcc < 4.5.

Вообще максимальная оптимизация по скорости — -O3, но не всегда она оправдана.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR умер. Да здравствует WinAVR!
СообщениеДобавлено: 30 июн 2010, 15:37 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Спасибо. Я как-то интуитивно тыкнул посередке -О2 Потом погоняю с разными - замерю.

А тот код атомарный верно работает - если был установлен I то выключает его и потом включает, а если сброшен был то не меняет.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 15 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO