Страница 2 из 2
Re: OSA for AVR
Добавлено: Вт мар 16, 2010 02:56:02
testerplus
testerplus писал(а):(Кстати, рекомендую
обновиться: в WinAVR обнаружена ошибка (особенность, если хотите), которая не позволяет использовать кооперативный планировщик. Единственный выход - отключение оптимизации; ошибку опишу чуть позже).
Если кому интересно, подготовил описание ошибки:
http://wiki.pic24.ru/doku.php/osa/articles/winavr_bug
Re: OSA for AVR
Добавлено: Пт мар 19, 2010 17:55:02
foxit
testerplus писал(а):foxit писал(а):Даешь еще примеров для AVR!
Подкиньте идею, чтобы пример был:
1. Интересен, чтобы пользователи обратили внимание.
2. Уникален, чтобы мне его писать было не скучно.
3. Прост, чтобы любой новичок мог на коленке собрать.
Есть на радиокоте статья FM STEREO тюнер с цифровым управлением [url]http://radiokot.ru/circuit/analog/receiv_transmit/12
авторы Dt-Andrew и ChipManiac
Ссылка на обсуждение на форуме [url]http://radiokot.ru/forum/viewtopic.php?f=25&t=19974
На мой взгляд очень интересный девайс.
Программа МК написана на Си.
Интересно увидеть реализацию с использованием Осы.
Думаю многим будет интересно:
проект легок в повторении
Родная и альтернативная программы дадут оценить использование Осы.
Re: OSA for AVR
Добавлено: Пт мар 19, 2010 23:41:28
testerplus
Посмотрел я исходники. Довольно громоздкая программа, я не располагаю временем, чтобы ее перевести на OSA. Хотя сама задача довольно красиво уложится в парадигму ОСРВ. Если у Вас самого будет желание заняться ее "портированием" под OSA, я окажу помощь.
Re: OSA for AVR
Добавлено: Сб мар 20, 2010 09:31:48
ARV
testerplus писал(а): я не располагаю временем, чтобы ее перевести на OSA.
вы лучше найдите время разобраться с проблемой OSA+Оптимизатор AVR-GCC, а то ценность порта на AVR практически нулевая из-за этого (без оптимизации WinAVR просто нереально использовать). Если проблема решится - я, скорее всего, стану примерять вашу осу на себя

часто приходится делать вещи, которые элегантно впишутся в концепцию операционки - отчего бы не попробовать?
Re: OSA for AVR
Добавлено: Сб мар 20, 2010 10:16:35
testerplus
ARV писал(а):вы лучше найдите время разобраться с проблемой OSA+Оптимизатор AVR-GCC
Сейчас готовлю письмо разработчикам, может они подскажут какой-то выход.
Re: OSA for AVR
Добавлено: Сб мар 20, 2010 16:07:05
avreal
Однако же

Проверил это дело в
WinAVR-20060421 (avr-gcc 3.4.6)
WinAVR-20071221 (avr-gcc 4.2.2)
WinAVR-20090313 (avr-gcc 4.3.2)
WinAVR-20100110 (avr-gcc 4.3.3)
Klen-20091202 (avr-gcc 4.4.0)
Klen-20100228 (avr-gcc 4.5.0)
Нет ошибки только в первых двух. Причём, если уж на то пошло, это не только ошибка, но и дурь - оптимизатор "пермудрил", на самом деле нужды заводить переменную на стеке и не было.
И в первых двух, возможно, в других условиях (когда действительно понадобится переменная на стеке) ошибка опять вылезет.
Ох что-то мне это всё не нравится...
Re: OSA for AVR
Добавлено: Сб мар 20, 2010 16:35:23
avreal
Оказывается, в setjmp.h функция setjmp() и не помечена аттрибутом returns_twice
Но его добавление туда ни капли не помогает.
Паршиво...
Re: OSA for AVR
Добавлено: Вс мар 21, 2010 09:52:49
testerplus
avreal писал(а):Однако же

Проверил это дело в
WinAVR-20060421 (avr-gcc 3.4.6)
WinAVR-20071221 (avr-gcc 4.2.2)
WinAVR-20090313 (avr-gcc 4.3.2)
WinAVR-20100110 (avr-gcc 4.3.3)
Klen-20091202 (avr-gcc 4.4.0)
Klen-20100228 (avr-gcc 4.5.0)
Спасибо, что проверили на разных версиях. Про 20071221 мне уже писали, но Вы правильно заметили насчет того, что в другом случае переменная с стеке может появиться.
avreal писал(а):Оказывается, в setjmp.h функция setjmp() и не помечена аттрибутом returns_twice
Это тоже странно, ведь в документации (в описании атрибута returns_twice) особо отмечено, что именно эта функция является примером его применения. Может, она в самой библиотеке как-то помечена. Просто когда я подменял вызов setjmp на вызов своей функции по дизаассемблеру было видно, что ошибка проявляется только тогда, когда функция помечена атрибутом returns_twice.
Re: OSA for AVR
Добавлено: Вс мар 21, 2010 10:35:07
moLCHec
Поддерживаю AVR в сомнениях в части RTOS. Сейчас реализую проект имеющий целый спектр разнородных задач. Изначально тоже думал использовать RTOS благо есть готовые примеры в том же журнале Радио, однако после тщательного анализа оказалось, что применение RTOS для имеющихся ресурсов у AVR нерациально т.к. она пожирает много ресурсов. В результате за счет использования различных прерываний и адаптивной настройки таймеров по внешним условиям удалось реализовать одновременные прием/передачу данных с аппаратного UART и с двух програмных портов + работа с SPI flash памятью. Проект выжимает практически все ресурсы из Mega164. Нетрудно понять, что для более сложного проекта нужно просто перейти на ARM7 соизмеримые по цене с тяжеловсными Mega формата TQFP64 и более.
Доводилось реализовывать проекты с потоковым приемом/передачей по UART и управлением объектом в реальном времени с использованием ПИ регулятора, также все было реализовано без особых усилий и танцев с бубном за счет аппаратных возможностей AVR.
ИМХО примение RTOS для AVR это демонстрация ВОЗМОЖНОСТИ, а не НЕОБХОМОСТЬ.
Re: OSA for AVR
Добавлено: Пн май 31, 2010 12:17:44
testerplus
ARV писал(а):вы лучше найдите время разобраться с проблемой OSA+Оптимизатор AVR-GCC, а то ценность порта на AVR практически нулевая из-за этого (без оптимизации WinAVR просто нереально использовать).
Нашел вариант решения проблемы. Теперь на WinAVR+OSA можно использовать любой уровень оптимизации (если еще какая гадость не вылезет)
Версия 100531
Re: OSA for AVR
Добавлено: Пн май 31, 2010 23:26:51
kontroller
Написал RTOS для AVR на WinAVR.
Программировать с использованием RTOS значительно проще, хотя система,конечно, ресурсы контроллера кушает.
Работает с любыми Мегами
Если тема интересная выложу текст программы
Re: OSA for AVR
Добавлено: Вт июн 01, 2010 07:26:46
ARV
kontroller писал(а):Написал RTOS для AVR на WinAVR.
Программировать с использованием RTOS значительно проще, хотя система,конечно, ресурсы контроллера кушает.
Работает с любыми Мегами
Если тема интересная выложу текст программы
о, еще одна ось нарисовалась
вы сначала расскажите что да как в вашей оси, мы тут послушаем, помозгуем

какие возможности, какие фичи, сведения о расходе ресурсов, демонстрационные примеры... а то сразу - нате код, разбирайтесь сами!

Re: OSA for AVR
Добавлено: Чт июн 03, 2010 18:53:58
mr.Kirill
...вы сначала расскажите что да как в вашей оси, мы тут послушаем, помозгуем
Добавлю от себя:
Особо интересны ее плюсы и минусы в сравнении с уже существующими RTOS. И что послужило толчком к написанию оной.
Re: OSA for AVR
Добавлено: Чт июн 03, 2010 23:19:13
testerplus
2 ARV и mr.Kirill: при всем уважении к вам, вы не правы в постановке вопроса. Не стоит забывать, что мотивация авторов подобных программ (библиотек) ограничивается жестом "пользуйтесь на здоровье!". Здесь не будет никакой конкурентной борьбы за пользователей, поэтому время на раскрутку тратится только тогда, когда оно есть и когда оно совпадает с желанием. Плохо документированным продуктом будут пользоваться меньше, чем хорошо документированным. Авторы это знают, но документировать или нет, а уж тем более - приводить доказательства преимуществ с подробным описанием всех свойств, это отсается на их усмотрение. Кому надо - сами сравнят и выберут, а если еще и звезды удачно выстроятся, то напишут очерк и выложат на всеобщее обозрение.
2 kontroller: Я бы с интересом заглянул в исходники. Если проект неудачный, то им просто не будут пользоваться, а если удачный, то кто-то и без описания займется (либо уже кинут клич по делу: "давай описание, а то там-то там-то не разобраться")
Re: OSA for AVR
Добавлено: Пт июн 04, 2010 08:13:41
ARV
да нормальная постановка вопроса, имхо. одного факта наличия чего-либо недостаточно для привлечения интереса к нему. даже до уровня "а что это тут такое?" недостаточно. как минимум надо сказать что-то типа "эта ось запускается даже на тини2313!" или "в ее состав включены модули поддержки асинхронного приема/передачи по USART" - то есть хоть что-то, что заставит посмотреть. а так "я сделал" - ну и что?
если я скажу, что по утрам пою в душе - много найдется желающих услышать пение? а если я скажу, что пою дуэтом с Анной Семенович? имхо, во втором случае уж наверняка кто-нибудь заинтересуется (как минимум, фотку концерта попросит)

Re: OSA for AVR
Добавлено: Пт июн 04, 2010 09:13:05
testerplus
Да нет, сам вопрос правильный и совершенно справедливый. Я говорил именно о постановке в форме требования (больше обращался к Вам, чем к
mr.Kirill). Не выложит описание - его творение пройдет мимо; может, ему же хуже, а может, и все равно; а так, не вопросом, но требованием, можно отбить охоту продолжать работу над ОС (даже если он ее ведет совместно с Анной Семенович

).
Re: OSA for AVR
Добавлено: Сб июн 05, 2010 14:33:29
Томатный
чтоли и себе написать ОС?

Re: OSA for AVR
Добавлено: Чт июн 23, 2011 14:18:44
Dimone
Нафига козе баян.. -иногда проще сделать самому вытесняющий планировщик, с минимально необходимым api, и не натягивать на себя чужой камзол с десятью рукавами...
Re: OSA for AVR
Добавлено: Ср мар 27, 2013 21:03:06
Apparatchik
Захотелось попробовать. Пойдет ли в связке Eclipse + WinAVR? И мне пока непонятно зачем нужны семафоры и флаги, нельзя ли пользоватся просто глобальными переменными (флагами)?