CodeVision AVR в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Saadov
Нашел транзистор. Понюхал.
Сообщения: 155
Зарегистрирован: Вт авг 19, 2008 23:39:59
Откуда: г.Смоленск

Re: CodeVision AVR в вопросах и ответах

Сообщение Saadov »

ELcat писал(а):Последняя это какая, у меня 1.25.5?

CVAVR 2.04.4a
Кроме того у Чена вроде как частичная поддержка без возможности записи

http://elm-chan.org/fsw/ff/00index_e.html
f_write


А что подскажете по поводу JPEG или GIF, или для AVR это не реально?

Если у вас AVR32, то вполне
А для чего вам декодирование? Если решили складывать фото на карту, то стоит посмотреть
http://roboforum.ru/forum4/topic5562.html
http://electronix.ru/forum/index.php?showtopic=47633
http://electronix.ru/forum/index.php?showtopic=49195

Последняя особенно полезна
Аватара пользователя
ELcat
Друг Кота
Сообщения: 3258
Зарегистрирован: Вт май 19, 2009 09:27:30
Откуда: Украина

Re: CodeVision AVR в вопросах и ответах

Сообщение ELcat »

Saadov спасибо за ссылки, весьма полезная инфа. Но всё равно бы хотелось декодировать записанное на карте памяти обычной мегой 8 биткой.
Аватара пользователя
Morse
Встал на лапы
Сообщения: 140
Зарегистрирован: Пт фев 01, 2008 11:09:49
Откуда: СССР

Re: CodeVision AVR в вопросах и ответах

Сообщение Morse »

Кто знает как в переменную типа static unsigned int передать адрес метки?

Что-то пита:

void .......()
{
static unsigned int label_addres = label_1;

.......

label_1: while(1)
{
.....
if(.....) return;
}
.......

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

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

а нафига такое?!

P.S. В WinAVR адрес метки можно получить оператором &&, а вот как в вашем любимом CodeVision - не знаю...

Код: Выделить всё

void *ptr = &&label;
...
label: while(1){
 ...
}
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Morse
Встал на лапы
Сообщения: 140
Зарегистрирован: Пт фев 01, 2008 11:09:49
Откуда: СССР

Re: CodeVision AVR в вопросах и ответах

Сообщение Morse »

Он не любимый. Просто другого я не знаю, а изучать и переделывать проэкт нет времени.
static unsigned int label_addres = &&label_1; тоже не проходит.
Моя родина Советский Союз.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

Morse писал(а):Он не любимый. Просто другого я не знаю, а изучать и переделывать проэкт нет времени.
static unsigned int label_addres = &&label_1; тоже не проходит.

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

Мой уютный бложик... заходите!
Аватара пользователя
Morse
Встал на лапы
Сообщения: 140
Зарегистрирован: Пт фев 01, 2008 11:09:49
Откуда: СССР

Re: CodeVision AVR в вопросах и ответах

Сообщение Morse »

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

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

Morse писал(а):При выходе из функции я пишу в переменную адрес с которого вышел.
При последующем входе начинаю не с начала, а с адреса который сохранён в переменной.
Поэтому перемнная static, но при первом входе надо инициализировать переменную адресом первой комманды.

делаете что-то типа автомата состояний? ну так все гораздо проще делается:

Код: Выделить всё

void my_exotic_function(void){
   static unsigned int state = 0;
   switch(state){
   case 0: // первый вход
      state++;
      break;
   case 1: // второй вход
      state++;
      break;
   }
}
разумеется, изменить state можно любым способом - хоть с 0-го на 5-е сразу - это как вам по графу состояний нужно...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Morse
Встал на лапы
Сообщения: 140
Зарегистрирован: Пт фев 01, 2008 11:09:49
Откуда: СССР

Re: CodeVision AVR в вопросах и ответах

Сообщение Morse »

Что-то типа многозадачности. В программе работает паралельно несколько задач. Каждая задача это функция. В майне карусель вызывает их поочереди. Вошол в функцию, отработал, вышел. По карусели передалось управление следующей. При следущем входе управление передаётся в то место где закончил в прошлый раз. Общение между функциями через глобальные переменные и флаги.

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

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

Morse писал(а):Через switch case пробовал, но получается как-то кривовато, и не красиво.
ну, по-моему, как вы делаете - так еще страшнее...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Сериг
Это не хвост, это антенна
Сообщения: 1451
Зарегистрирован: Пт фев 19, 2010 19:39:28
Откуда: Москва

Re: CodeVision AVR в вопросах и ответах

Сообщение Сериг »

я вот тут схемку замутил дисплей 16х2 на аттини 2313 ,подскажите пожалуйста какие мне фьюзы поставить шчтобы он зароботал?
Аватара пользователя
avreal
Опытный кот
Сообщения: 842
Зарегистрирован: Чт дек 31, 2009 19:27:45
Откуда: Бровари, Україна
Контактная информация:

Re: CodeVision AVR в вопросах и ответах

Сообщение avreal »

Morse писал(а):Что-то типа многозадачности.
...
З.Ы. Через switch case пробовал, но получается как-то кривовато, и не красиво.

Не надо изобретать велосипед :-), по крайней мере в этом направлении (взятие адреса метки или switсh-многозадачность)
Его уже придумали и неплохо со всех сторон обсудили. Даже если что-то не нравится, лучше стартовать с достигнутого уровня и допиливать до своих требований.
Начните с http://www.sics.se/~adam/pt/ - один из корней всего этого
http://bsvi.pp.ua/protopotoki-protothreads/ - немного на русском
и вообще гуглить protothreads

Базовая версия именно на switch/case, недостатом есть то, что нельзя в задачах использовать "системные" макросы внутри своих swicth, т.е. свои switch должны стоять только между "системными" вызовами. Достоинство - работает на любом компиляторе языка С.
Говорят, в поледнее время компилятор CodeVision постепенно становится компилятором языка С, так что должно заработать.

Есть вариант на адресах меток и вычисляемом goto, достоинство - отстутстиве ограничений на применение swicth, особенность (а не недостаток ;-) ) - компилируется только GCC, в случае AVR это avr-gcc, WinAVR.
Лень в виде мании величия: «ты гений, зачем стараться?». В виде комплекса: «всё равно не выйдет, зачем упираться?». Как логика: «если достаточно, зачем знать и уметь больше?». Цель одна: остановить. Не любит тепло работающих мышц и шум работающего мозга.
Аватара пользователя
Morse
Встал на лапы
Сообщения: 140
Зарегистрирован: Пт фев 01, 2008 11:09:49
Откуда: СССР

Re: CodeVision AVR в вопросах и ответах

Сообщение Morse »

Всё это конечно хорошо, но мне-бы адрес метки в переменную записать. Переписывать всю программу нет желания. Она уже работает, но некоторые моменты хочу подправить.
Моя родина Советский Союз.
Аватара пользователя
ValBag
Потрогал лапой паяльник
Сообщения: 326
Зарегистрирован: Сб сен 06, 2008 12:56:13

Re: CodeVision AVR в вопросах и ответах

Сообщение ValBag »

Сериг писал(а):я вот тут схемку замутил дисплей 16х2 на аттини 2313 ,подскажите пожалуйста какие мне фьюзы поставить шчтобы он зароботал?
Вопрос сходен с тем, что задавал Швейк из книги Я. Гашека:
Стоит четырехэтажный дом, в каждом этаже по восьми окон,
на крыше -- два слуховых окна и две трубы, в каждом этаже по
два квартиранта. А теперь скажите, господа, в каком году умерла
у швейцара бабушка?
:)
Аватара пользователя
ValBag
Потрогал лапой паяльник
Сообщения: 326
Зарегистрирован: Сб сен 06, 2008 12:56:13

Re: CodeVision AVR в вопросах и ответах

Сообщение ValBag »

Morse писал(а):Всё это конечно хорошо, но мне-бы адрес метки в переменную записать.
Насколько мне известно, в CVAVR нет средств адресации метки, кроме как "goto" и только в той функции, где находится метка.
...Попробуйте воспользоваться тем примером, что приводил выше ARV, с анализом и изменением статуса в функции.
Аватара пользователя
Сериг
Это не хвост, это антенна
Сообщения: 1451
Зарегистрирован: Пт фев 19, 2010 19:39:28
Откуда: Москва

Re: CodeVision AVR в вопросах и ответах

Сообщение Сериг »

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

Re: CodeVision AVR в вопросах и ответах

Сообщение ARV »

Сериг писал(а):аууу почему меня игнорируете?
ARV можно к вам в личку постучатся?

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

Мой уютный бложик... заходите!
Ildus
Открыл глаза
Сообщения: 46
Зарегистрирован: Вт дек 02, 2008 22:04:27
Откуда: Нижний Новгород

Re: CodeVision AVR в вопросах и ответах

Сообщение Ildus »

То Сериг - ну реально же Вам ответили, и какая разница, в форуме или в личных сообщениях...
Вопрос неправильный, говорю проще, если Вы Гашека не понимаете и ни читали - Ваш вопрос - Сколько нужно залить в КАМАЗ солярки, чтобы в него поместилась бабушкина кровать.....
Какая разница, что Вы там мутите и что подключаете к AVR - Фьюзы отвечают за первичную установку процессора - в Вашем, случае - предполагаю - за тактовую частоту. Какая разница ЖК индикатору, какая частота у процессора, главное - протокол обмена написать написать правильно, с необходимыми частотами и задержками. ЖК индикатор будет работать при кварце и 4 МГц, и 20 МГц одинаково. У Вас в сообщении про это - ни слова.... Вы сами поймите, что хотите, затем поймите, что не получается, а затем спросите. В этом форуме не принято отвечать на вопросы людям, которые не соизволили прочитать описание микропроцессора....
Аватара пользователя
Сериг
Это не хвост, это антенна
Сообщения: 1451
Зарегистрирован: Пт фев 19, 2010 19:39:28
Откуда: Москва

Re: CodeVision AVR в вопросах и ответах

Сообщение Сериг »

Ildus писал(а):То Сериг - ну реально же Вам ответили, и какая разница, в форуме или в личных сообщениях...
Вопрос неправильный, говорю проще, если Вы Гашека не понимаете и ни читали - Ваш вопрос - Сколько нужно залить в КАМАЗ солярки, чтобы в него поместилась бабушкина кровать.....
Какая разница, что Вы там мутите и что подключаете к AVR - Фьюзы отвечают за первичную установку процессора - в Вашем, случае - предполагаю - за тактовую частоту. Какая разница ЖК индикатору, какая частота у процессора, главное - протокол обмена написать написать правильно, с необходимыми частотами и задержками. ЖК индикатор будет работать при кварце и 4 МГц, и 20 МГц одинаково. У Вас в сообщении про это - ни слова.... Вы сами поймите, что хотите, затем поймите, что не получается, а затем спросите. В этом форуме не принято отвечать на вопросы людям, которые не соизволили прочитать описание микропроцессора....

ну ладно...
значит так собрал я вот по этой статье http://my-avr.at.ua/publ/1-1-0-9 не знаю какие фьюзы поставить на сайте и кусок кода и схема только вместо микроконтролера атмега 8 аттини2313 хочу выводить знаки на экран.
kris95
Держит паяльник хвостом
Сообщения: 920
Зарегистрирован: Ср янв 07, 2009 19:30:23

Re: CodeVision AVR в вопросах и ответах

Сообщение kris95 »

Серёга, я тебе писал что не трогай фьюзы. А вообще - выучи ты их наконец. А то так и будешь до старости у всех фьюзы спрашивать. Лень учить фьюзы - пиши не на AVR а на PIC
Как там дела со стробом ?
Ответить

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