Страница 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;