Страница 95 из 421

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

Добавлено: Вс ноя 14, 2010 13:27:58
Symbiosis
Как запустить CVAVR под Mac OS ? В виртуальной машине работает, но программатор и терминал не могут работать с COM портами. В то время как AVRprog работает с COM портом из под виртуальной машины (USB AVR910 программатор, в системе как виртуальный COM порт).

Быть может есть аналоги очень близкие ?

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

Добавлено: Вс ноя 14, 2010 22:49:14
Сериг
Symbiosis писал(а):Как запустить CVAVR под Mac OS ? В виртуальной машине работает, но программатор и терминал не могут работать с COM портами. В то время как AVRprog работает с COM портом из под виртуальной машины (USB AVR910 программатор, в системе как виртуальный COM порт).

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

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

Добавлено: Пн ноя 15, 2010 04:51:52
Symbiosis
Я запуская в среде Windows через виртуальную машину. Но как я уже писал выше, встроенный программатор не работает. И терминал тоже. Это очень неудобно. Либо от компа к компу бегать, либо перезагружать mac в windows. AVRprog, как я писал работает, но глючно, даже под виндой он не всегда с первого раза шьет. Часто пишет во время проверки, что не совпадают данные *.hex и того что он записал в микроконтроллер.

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

Добавлено: Пн ноя 15, 2010 07:41:09
Сериг
Symbiosis писал(а):Я запуская в среде Windows через виртуальную машину. Но как я уже писал выше, встроенный программатор не работает. И терминал тоже. Это очень неудобно. Либо от компа к компу бегать, либо перезагружать mac в windows. AVRprog, как я писал работает, но глючно, даже под виндой он не всегда с первого раза шьет. Часто пишет во время проверки, что не совпадают данные *.hex и того что он записал в микроконтроллер.
дайте пожалуйста ссылку где скачать симулятор....у меня есть проггер :)))

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

Добавлено: Пн ноя 15, 2010 09:07:59
Symbiosis
Какой симулятор ? Виртуальную машину можно на торрентах скачать. nnm-club например. Называется Parallels.

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

Добавлено: Пн ноя 15, 2010 15:42:52
Сериг
спс у меня просто мак ос а нужна еще винда)

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

Добавлено: Пн ноя 15, 2010 20:58:35
moon7
Подскажите пожалуйста, почему кодевижин при старте закрывается? появляется стартовое окно на доли секунды и закрывается, раньше этот же вижин вел себя вполне нормально.

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

Добавлено: Вт ноя 16, 2010 22:58:31
Fasterpast
"пропатченный" кодвижн то небось? =)
удали в папке bin файл cvavr.ini и оба default.чтототам.
Может есть более толковое решение проблемы, но меня и так устраивает.

Symbiosis, другую виртуалку не пробовал?

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

Добавлено: Вт ноя 16, 2010 23:07:53
moon7
Работает) спасибо, странно, но раньше он и без удаления ини работал.

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

Добавлено: Вт ноя 16, 2010 23:10:38
Fasterpast
Пжалста )
Да у меня тож слетает 1 раз через 10. Честно, не пытался понять почему это происходит, кодвижном пользуюсь редко :)

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

Добавлено: Ср ноя 17, 2010 17:40:01
kotbimigot
moon7 писал(а):Подскажите пожалуйста, почему кодевижин при старте закрывается? появляется стартовое окно на доли секунды и закрывается
Здравствуйте! Проверьте путь к дистрибу - наличие в нем русских букв вызывает такой эффект при старте
moon7 писал(а):раньше этот же вижин вел себя вполне нормально.
Возможно вы переименовали папку с дистрибами, когда порядок на компе наводили, или винт поменяли/переименовали - в пути появились русские буквы

Т.е. необходимо,чтобы путь был настолько коротким,насколько это возможно и состоял только из латинских букв
Удачи!

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

Добавлено: Ср ноя 17, 2010 17:41:14
kotbimigot
Подскажите пожалуйста,почему в .lib не видятся константы,определенные через #define в основном файле программы?это особенность либов в CVAVR? как можно эту проблему решить? Если определяю такие константы через project->configure->C compiler->global#define, все нормально видится.Какие ограничения и особенности нужно учесть при использовании global#define?Неужели все глобальные константы пихать в global#define?

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

Добавлено: Сб ноя 20, 2010 21:57:33
ELcat
Дайте кто-нибудь, пожалуйста, ссылку на скачку CodeVisionAVR 2.04.4а с таблеткой желательно одним файлом, замахался искать. Или какую-нибудь другую версию, но чтоб с библиотеками поддержки SD FAT (Чена). Спасибо!

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

Добавлено: Вс ноя 21, 2010 02:27:54
evgeniy66
ELcat писал(а):Дайте кто-нибудь, пожалуйста, ссылку на скачку CodeVisionAVR 2.04.4а с таблеткой желательно одним файлом, замахался искать. Или какую-нибудь другую версию, но чтоб с библиотеками поддержки SD FAT (Чена). Спасибо!
Ну вот например: http://rutracker.org/forum/viewtopic.php?t=2703149

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

Добавлено: Вс ноя 21, 2010 18:44:00
aam
Всем привет!
Пишу прогу, в которой используется 4-канальная ШИМ-стабилизация тока для зарядника. Проц ATmega32. Щас код выглядит так:

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

if(TST_F(ucFlags[0],CHARGE))
             OCR0=PWM_Current_Stab(4,OCR0);   // 1-й канал 
else
   {
      ...
   }          
if(TST_F(ucFlags[1],CHARGE))
             OCR1A=PWM_Current_Stab(5,OCR1A); // 2-й канал
else
   {
      ...
   }
if(TST_F(ucFlags[2],CHARGE))  
             OCR1B=PWM_Current_Stab(6,OCR1B); // 3-й канал
else
   {
      ...
   } 
if(TST_F(ucFlags[3],CHARGE))
             OCR2=PWM_Current_Stab(7,OCR2);   // 4-й канал
else
   {
      ...
   }
Хочу написать как-нибудь так:

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

if(TST_F(ucFlags[i],CHARGE))
             OCR[i]=PWM_Current_Stab(7,OCR[i]); 


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

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

Добавлено: Вс ноя 21, 2010 23:56:36
AlexFisher
А что мешает? Это же просто константы - номера регистров.
Скажем...

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

unsigned char aOCR[]={OCR1,OCR1A,OCR1B,OCR2};

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

Добавлено: Пн ноя 22, 2010 08:22:27
aam
В файле mega32.h они объявлены типа sfrb. Что это такое - не знаю, но я так понимаю, это воспринимается как адрес регистров ввода-вывода.
Я пробовал объявить массив sfrb OCR[4]={OCR0,OCR1A,OCR1B,OCR2}, но компилятор пишет ошибку.
А если объявить массив char, то там будут просто числа, получится, что я просто элементу массива буду присваивать другое значение, а запись в регистр OCRx не произойдет.
Я слышал, регистры ввода-вывода кроме своих адресов еще имеют адреса в оперативе. Вот и думаю, а что если объявить массив указателей типа int, инициализированный адресами OCRов. Но вот не получится ли, что при такой адресации обращение к ним будет дольше, чем при обычном написании? И как быть с разрядностью? (OCR0 и 2 - 8-разрядные, OCR1A, 1B 16-разрядные, но на самом деле ШИМ у меня используется 8-разрядный везде)

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

Добавлено: Пн ноя 22, 2010 08:39:45
ARV
WinAVR умеет работать с адресами регистров, как с указателями, и поэтому можно определять массивы из них. умеет ли то же самое делать CVAVR - не уверен...

однако, в ранее предложенном варианте есть ошибочка: массив-то должен быть из УКАЗАТЕЛЕЙ, а не значений регистров! то есть как-то так должно быть:

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

unsigned char* aOCR[]={&OCR1, &OCR1A, &OCR1B, &OCR2};
ну и использовать массив надо уже именно как массив указателей:

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

// вместо этого
OCR1 = 123;
// пишем теперь так
*aOCR[0] = 123;
но повторяю: этот подход работает в WinAVR - проверено, а с CVAVR попробуйте сами.

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

Добавлено: Пн ноя 22, 2010 09:09:43
aam
ARV писал(а):unsigned char* aOCR[]={&OCR1, &OCR1A, &OCR1B, &OCR2};
Вот я как раз так и писал. И компилятор ошибку выдавал - что-то типа нельзя брать адрес от OCR.

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

Добавлено: Пн ноя 22, 2010 10:16:49
stanik
Уважаемы Коты!
Помогите, пожалуйста!
У меня есть 8 битовых переменных: bit b0, b1, b2, b3, b4, b5, b6, b7;
и одна 8 битная переменная unsigned char in;
как можно побитно вписать все переменные b в in.
т.е. должно получиться типа этого:
b0=1;
b1=0;
b2=0;
b3=1;
b4=1;
b5=1;
b6=0;
b7=1;
in==0b10011101;