Например TDA7294

Форум РадиоКот • Просмотр темы - WinAvr в вопросах и ответах
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт апр 25, 2024 21:07:35

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


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 2102 ]    , 2, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вт апр 10, 2007 18:42:04 
Э...
Аватар пользователя

Карма: 1
Рейтинг сообщений: 9
Зарегистрирован: Ср апр 04, 2007 08:39:14
Сообщений: 2792
Откуда: Москва
Рейтинг сообщения: 0
Я в CVAVR вот такой код написал:

Код:
interrupt [TIM0_OVF] void timer0_int(void)
{
PORTC++;
#asm("ret")
}


Но тогда в листинге видно что не выполняются
некоторые действия до RETI

Код:
;      72 interrupt [TIM0_OVF] void timer0_int(void)
;      73 {

   .CSEG
_timer0_int:
   ST   -Y,R30
   IN   R30,SREG
   ST   -Y,R30
;      74 PORTC++;
   IN   R30,0x15
   SUBI R30,-LOW(1)
   OUT  0x15,R30
;      75 #asm("ret")
   ret
;      76 }

   LD   R30,Y+
   OUT  SREG,R30
   LD   R30,Y+
   RETI


вот это пропускается

Код:
   LD   R30,Y+
   OUT  SREG,R30
   LD   R30,Y+


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вт апр 10, 2007 18:49:09 
Открыл глаза
Аватар пользователя

Зарегистрирован: Пн дек 25, 2006 02:29:15
Сообщений: 56
Откуда: г.Винница Украина
Рейтинг сообщения: 0
Нада будет еще с jmp попробовать накрутить, вернусь потом крутану

_________________
А кота своего я назвал квадратом...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Вт апр 10, 2007 18:57:35 
Э...
Аватар пользователя

Карма: 1
Рейтинг сообщений: 9
Зарегистрирован: Ср апр 04, 2007 08:39:14
Сообщений: 2792
Откуда: Москва
Рейтинг сообщения: 0
Наверно проще просто запретить те прерывания вызова которых вы опасаетесь по завершении обработчика.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Ср апр 11, 2007 01:18:57 
Открыл глаза
Аватар пользователя

Зарегистрирован: Пн дек 25, 2006 02:29:15
Сообщений: 56
Откуда: г.Винница Украина
Рейтинг сообщения: 0
Так можно одельно глобальную переменную обьявить, потом сделать функцию которая будет ее записывать (поскольку почемуто в WinAVR на прямую это делать нехочет), а потом ее использовать в главной функции, но это как-то не то, все таки похимичить нада, чтобы было более оптимально. Хотя уже пробовал jmp, то тоже в WinAVR прыгало не туда куда надо, но еще все таки попробую, может что-то упустил....

_________________
А кота своего я назвал квадратом...


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Ср апр 11, 2007 17:13:28 
Открыл глаза
Аватар пользователя

Зарегистрирован: Пн дек 25, 2006 02:29:15
Сообщений: 56
Откуда: г.Винница Украина
Рейтинг сообщения: 0
Ни пробовал в компиляторе, или может както через параметр функции обработки перерывания, настроить чтобы, при выходе использовалась ret, а не reti??? Я себе написал выход из функции по адресу... Вышел, но переменные при этом не сохраняються, да и стек остается, гонивно выходит...., можно было б в конце, когда весь код написан, скопировать дисасемблерный код, который выполняет возобновление переменных и возврат в функцию, только заменив при этом ret на reti. Но это тоже гон..., проще и в правду запретить те прерывания которых опасаешся, а потом возобновить... :?

_________________
А кота своего я назвал квадратом...


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 11, 2007 16:12:15 
Нашел транзистор. Понюхал.

Карма: 1
Рейтинг сообщений: 25
Зарегистрирован: Пт сен 21, 2007 17:53:23
Сообщений: 190
Откуда: Зарайск
Рейтинг сообщения: 0
можно попробовать вместо INTERRUPT - SIGNAL
Код:
SIGNAL(имя прерывания)
{
}

похоже в новом WinAvr INTERRUPT убрали


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 18, 2007 17:25:17 
Нашел транзистор. Понюхал.

Карма: 1
Рейтинг сообщений: 25
Зарегистрирован: Пт сен 21, 2007 17:53:23
Сообщений: 190
Откуда: Зарайск
Рейтинг сообщения: 0
набрел тут кстати - если охарактеризовать вкратце:
WinAvr для тех, кто уже знает C
http://avr.h15.ru/index.php?page=winavr


Вернуться наверх
 
Не в сети
 Заголовок сообщения: WinAvr в вопросах и ответах
СообщениеДобавлено: Ср ноя 07, 2007 20:05:23 
Открыл глаза

Зарегистрирован: Пт окт 26, 2007 19:14:09
Сообщений: 44
Откуда: :-)
Рейтинг сообщения: 0
такая фигня тут со мною произошла.
повторяю один девайс, и в прошивке необходимо поменять некоторые данные.
сел сегодня, допаял... думаю, надо бы уже прошивку залить...
но make all выдает кучу ошибок...
сколько не пробовал устранить ошибки, ничего не получилось...
мож у меня компиляттор слишком старый(ну или слишком новый)?
выложил тут архив с исходниками... кому не сложно, попробуйте скомпилировать у себя - получится или нет...
я бы и не пытался чего сделать, да он (автор) hex выложил, значит исходники правильные.... хотя кто их, фрицев, знает...
буду очень благодарен за помощь/совет...


Вложения:
Комментарий к файлу: проверил - вирусов нет :-)
mp3_src-0.1.zip [28.12 KiB]
Скачиваний: 545

_________________
ех... дайте веревку и мыло...


Последний раз редактировалось jax Ср ноя 07, 2007 20:28:07, всего редактировалось 1 раз.
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: проблема с WinAvr-20070525
СообщениеДобавлено: Ср ноя 07, 2007 20:49:53 
Э...
Аватар пользователя

Карма: 1
Рейтинг сообщений: 9
Зарегистрирован: Ср апр 04, 2007 08:39:14
Сообщений: 2792
Откуда: Москва
Рейтинг сообщения: 0
jax писал(а):
автор hex выложил


А он не указал версию WinAVR в которой работал ? Или год публикации посмотрите. Может по дате создания файлов.

Можно будет соотв версию WinAVR найти.

_________________
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Ср ноя 07, 2007 20:56:13 
Открыл глаза

Зарегистрирован: Пт окт 26, 2007 19:14:09
Сообщений: 44
Откуда: :-)
Рейтинг сообщения: 0
посмотрел даты создания файлов срхиве...
прикольная штука выявилась:
hex создан 05.03.2005, а исходники датируются 06.03.2005 :))
пишет такую фигню:
Цитата:
config.c:3: fatal error: opening dependency file .dep/*.o.d: Invalid argument

и не понятно мне, почему он начинает с config.c, а не с mp3.c...

_________________
ех... дайте веревку и мыло...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 08, 2007 08:38:49 
Модератор
Аватар пользователя

Карма: 27
Рейтинг сообщений: 58
Зарегистрирован: Пн апр 03, 2006 11:43:25
Сообщений: 4517
Откуда: Санкт - Петербург
Рейтинг сообщения: 0
Медали: 3
Получил миской по аватаре (1) Мявтор 2-й степени (1) Мявтор 3-й степени (1)
Вот это (см вложение) поставьте - мне помогло.


Вложения:
winavr_patch.rar [48.64 KiB]
Скачиваний: 623

_________________
Оптимизм х (Опыт + Знания) = const
Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 08, 2007 16:29:48 
Открыл глаза

Зарегистрирован: Пт окт 26, 2007 19:14:09
Сообщений: 44
Откуда: :-)
Рейтинг сообщения: 0
спасибо за ссылочки...
патч не помог...
винавр почти докачал...
и тут до меня дошло в чем дело...
мож, вопрос не в тему... но все же...
конечно, компиляция начинается с mp3.c, и тут у него ступор: функций описаний нет в файлах *.h, они все в *.c, а они нигде не include...
я что-то не то делаю, да? подскажите, как эти файлы с функциями включить в проект... а то совсем грустно, что голова пуста... :)) :)
пойду еще поковыряю...

_________________
ех... дайте веревку и мыло...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 08, 2007 17:26:28 
Открыл глаза

Зарегистрирован: Пт окт 26, 2007 19:14:09
Сообщений: 44
Откуда: :-)
Рейтинг сообщения: 0
поставил винАвр 2004 года... патч сверху, а то матерился на версию gnugcc...
и все равно не хочет... вроде берется, но пишет:
Цитата:
C:\WinAVR\utils\bin\make.exe: *** No rule to make target `*.o', needed by `mp3.elf'. Stop.

вот такая фигня... делаю свой makefile, та же ошибка с определением функций...

через 30 минут
мож это и не Вин Авр вовсе, я АврСтудио?
ни разу не работал с ней, поэтому только щас об этом подумал...
Студио использует Makefile? я из-за этого файла подумал на ВинАвр

_________________
ех... дайте веревку и мыло...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 08, 2007 19:05:55 
Э...
Аватар пользователя

Карма: 1
Рейтинг сообщений: 9
Зарегистрирован: Ср апр 04, 2007 08:39:14
Сообщений: 2792
Откуда: Москва
Рейтинг сообщения: 0
jax писал(а):
поставил винАвр 2004 года... патч сверху


Зачем ему патч ???

_________________
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 08, 2007 19:15:58 
Открыл глаза

Зарегистрирован: Пт окт 26, 2007 19:14:09
Сообщений: 44
Откуда: :-)
Рейтинг сообщения: 0
Цитата:
зачем ему патч??

да от безнадеги :))
не, правда, функции описаны в файлах *.c, а в главной программе только хидеры включены, а они, в свою очередь, тоже только на хидеры ссылаются...
я вот не в курсе... так и должно быть?
ребят, попробуйте у себя... мож я что-то не так делаю? в проекте все файлы указаны...

_________________
ех... дайте веревку и мыло...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 08, 2007 20:09:06 
Модератор
Аватар пользователя

Карма: 27
Рейтинг сообщений: 58
Зарегистрирован: Пн апр 03, 2006 11:43:25
Сообщений: 4517
Откуда: Санкт - Петербург
Рейтинг сообщения: 0
Медали: 3
Получил миской по аватаре (1) Мявтор 2-й степени (1) Мявтор 3-й степени (1)
WinAVR 20070122

В Makefile строку
Код:
SRC = *.c

заменил на
Код:
SRC = mp3.c config.c delay.c fat.c mmc.c spi.c test.c vs1001.c

После этого компиляция идет нормально.
Попробуй.
Да, кстати, обрати внимание, что схемы в этой статье не соответствуют прошивке. В теме в "Статьях" есть ссылки на правильные (хотя, думаю, ты их уже видел). Если удастся повторить плеер - расскажи, интересно.

Да, еще: мне кажется, что в mp3.c есть косяк (да и компилятор ругается) в основном цикле в строке
Код:
if(fopenc(ps.file_index,'r', "*       MP3", &fp))

возможно, имелось в виду
Код:
if(fopenc(ps.file_index,'r', "*.MP3", &fp))

хотя так тоже ругается, а вот так:
Код:
u08 temp [6] = "*.MP3";
if(fopenc(ps.file_index,'r', temp, &fp))

компилится без вопросов... Честно говоря, особо глубоко не копал.. :oops:


Вложения:
mp3.rar [141.9 KiB]
Скачиваний: 590

_________________
Оптимизм х (Опыт + Знания) = const
Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 09, 2007 20:53:03 
Открыл глаза

Зарегистрирован: Пт окт 26, 2007 19:14:09
Сообщений: 44
Откуда: :-)
Рейтинг сообщения: 0
Aheir, спасибо... попробовал на WinAVR 20040404, ругается на invalid lvalue in assignment, попозже попробую на 20070525, мож получится чего...
это плеер не с этого сайта.
http://members.liwest.at/dobretsb/stephan/mp3player.html тут немецкие товарищи по пояльнику свою конструкцию выложили.
да, если честно, все началось с того, что у меня нет кварца на 25 МГц, поэтому решил заменить его на кварц 30 МГц, а для этого код надо поменять, иначе проигрывать быстрее будет...
теперь уже понял, что зря в это полез, завтра поеду в соседний город за мегой (спалил седня последнюю в ходе экспериментов на стабильность работы) и кварцы прикуплю...
если интересно, то обязательно выложу результаты экспериментов...
кстати, если есть проблемы с покупкой vs'ок, то их можно попросить у производителя. вот мне, если бы я заказал их в инет-магазине, они шли бы недели 3-4, а так авиапочтой за неделю пришли. бесплатно... но это по секрету 8) никому не говорите 8)

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

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

_________________
ех... дайте веревку и мыло...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 09, 2007 21:20:14 
Модератор
Аватар пользователя

Карма: 27
Рейтинг сообщений: 58
Зарегистрирован: Пн апр 03, 2006 11:43:25
Сообщений: 4517
Откуда: Санкт - Петербург
Рейтинг сообщения: 0
Медали: 3
Получил миской по аватаре (1) Мявтор 2-й степени (1) Мявтор 3-й степени (1)
Плеер этот с нашего сайта, ну, т.е. на нашем сайте он появился, видимо, с указанной тобой странички, жаль, что с неточной схемой. :)
Результаты интересны весьма, так что по мере сил буду участвовать в разбирательствах с этой конструкцией.
Бывает, что при пайте от перегрева отваливаются проводники внутри кварца. На совсем малогабаритных кварцах (типа часовых - цилиндрики), например, рекомендуется при пайке придерживать вывод между местом пайки и корпусом пинцетом для обеспечения теплоотвода. А еще у меня как-то кварц умер от падения на пол.
Если мега уже зашита на работу от кварца - подключить любой другой заведомо рабочий да проверить. Иные способы проверки работоспособности МК, кроме как по отклику прошивальщику или по тестовой программе, мне неизвестны. Особенно если не сильно понятно, прошито ли в него что-нибудь, и если да - то что.
Но это все оффтоп в рамках данной ветки.
Кстати, есть предложение таки перебраться в ветку обсуждения этой статьи, будет полезнее и удобнее.

_________________
Оптимизм х (Опыт + Знания) = const


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 09, 2007 21:38:15 
Открыл глаза

Зарегистрирован: Пт окт 26, 2007 19:14:09
Сообщений: 44
Откуда: :-)
Рейтинг сообщения: 0
Aheir писал(а):
Кстати, есть предложение таки перебраться в ветку обсуждения этой статьи, будет полезнее и удобнее.

ОК, завтра чего сделаю, в ту тему писать буду... вопросов, наверное, будет...

_________________
ех... дайте веревку и мыло...


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Сб дек 15, 2007 00:42:29 
Грызет канифоль
Аватар пользователя

Зарегистрирован: Сб сен 09, 2006 19:00:18
Сообщений: 257
Откуда: СССР
Рейтинг сообщения: 0
Что то я не фига не въехал в этот кампулятыр. например строка PORTD=0 - в асме получаетсо хрен знает что, загружает 0 через указатели в какую то область памяти, в итоге ошибка. Как вставлять асм-функции так и не разобрался #ASM{} и подобное - не проходит. В чем прикол? Как его насроить?
Хотел ускорить разработку проэкта, а получилось наоборот, потерял 1 день. Вернулся на АСМ.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 2102 ]    , 2, , , ...  

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


Кто сейчас на форуме

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


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y