WinAvr в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
Dikoy
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб июл 18, 2009 21:38:43

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

Сообщение Dikoy »

Граждане, у кого WinAVR установлен и настроен, компильните плз. 2 проекта. Мейк в комплекте. А то у меня его сейчас нету...
http://yadi.sk/d/EdS3X2RcSs9HD
Реклама
Rtmip
Держит паяльник хвостом
Сообщения: 963
Зарегистрирован: Чт апр 03, 2014 23:16:55
Откуда: Россия

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

Сообщение Rtmip »

Dikoy писал(а):компильните плз.

Приветствую :)
Во вложении то, что winavr выдал.
Но в папке usb_tiny85_v2 файл main.c я чуть изменил, иначе были ошибки при компиляции, сравните с оригиналом...

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

было так:
int main() {
   uchar i; 
    uint  flasher = 0;
сделал так:
int main() {
   uchar i; 
    uint8_t  flasher = 0;

Не могу утверждать, что моя замена верна, проверьте и напишите!
Ссылку можно, что это вообще за проект и схема устройства какая? :)
Вложения
proekt.rar
(28.26 КБ) 194 скачивания
Реклама
Аватара пользователя
Dikoy
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб июл 18, 2009 21:38:43

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

Сообщение Dikoy »

Спасибо!
Проект http://codeandlife.com/2012/03/03/diy-u ... generator/
Флешер был 16-и битным, я так понимаю, вы его заменили 8-и битным типом?
Аватара пользователя
Dikoy
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб июл 18, 2009 21:38:43

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

Сообщение Dikoy »

Там если пошукать, есть и плата http://codeandlife.com/topics/v-usb-electronics/
Тут на русском, но устаревшая версия http://www.rlocman.ru/shem/schematics.html?di=133991
Могу свою плату дать, в спринте, под SO корпуса.

Изображение
Реклама
Эиком - электронные компоненты и радиодетали
Rtmip
Держит паяльник хвостом
Сообщения: 963
Зарегистрирован: Чт апр 03, 2014 23:16:55
Откуда: Россия

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

Сообщение Rtmip »

Dikoy писал(а):Флешер был 16-и битным, я так понимаю, вы его заменили 8-и битным типом?
точно, ошибся, не посмотрел в тексте повнимательнее.
во вложении переправил на 16 бит, проверьте :)
плату не надо, спасибо, под такие корпуса нечем делать :)
Вложения
usb_tiny85_v2.rar
(129.43 КБ) 183 скачивания
Реклама
Аватара пользователя
Dikoy
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб июл 18, 2009 21:38:43

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

Сообщение Dikoy »

Кстати, насчёт плат, мне 3 платы под этот ключ обошлись в $3.75, включая доставку по миру. Вот тут заказываю: https://oshpark.com/
Отзыв: http://forum.ixbt.com/topic.cgi?id=48:10279-4#101

Если будете у них заказывать ОБЯЗАТЕЛЬНО делайте экспорт контура в КАЖДОМ слое (гербере). А то снесут все полигоны и зазоры.
Реклама
Rtmip
Держит паяльник хвостом
Сообщения: 963
Зарегистрирован: Чт апр 03, 2014 23:16:55
Откуда: Россия

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

Сообщение Rtmip »

Спасибо, это уже очень интересно! :beer:
Аватара пользователя
Dikoy
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб июл 18, 2009 21:38:43

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

Сообщение Dikoy »

А почему оно епромовский файл не выдаёт? У меня там пароль сохранён. Может, что в мейке поправить?
Аватара пользователя
Dikoy
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб июл 18, 2009 21:38:43

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

Сообщение Dikoy »

ПС. Код работает, даже хорошо работает. Но вместо пароля выдаёт какую-то фигню.
Читаю инет, нигде внятно не написано, как заставить его выдавать hex и eep отдельно...
Rtmip
Держит паяльник хвостом
Сообщения: 963
Зарегистрирован: Чт апр 03, 2014 23:16:55
Откуда: Россия

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

Сообщение Rtmip »

может кто поправит makefile в исходном проекте...
сделал другой makefile, смотрите вложение в личке :)
Вот только код Ваш мудреный, в еепроме не целиком, так понимаю, что слэш(\) понимается компилятором как "новая строка" и
поэтому тут код кончается... Вообщем посмотрите файл еепрома :)
Аватара пользователя
Dikoy
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб июл 18, 2009 21:38:43

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

Сообщение Dikoy »

Ну тут я уже сам поправлю, винавр установил и вроде настроил - через блокнот компилится.
Раньше комп был только с гостевой учёткой, ничего не поставишь. И вот, админ вышел и отпуска, и счастье наступило.
В конце пароля символ (nl) 0x0a, по простому "ентер", чтоб после ввода он сам нажимался. Чтоб компилятор его вставил в конец строки, и используются управляющие символы \n\0 http://ru.wikipedia.org/wiki/%D0%A3%D0% ... 0%BB%D1%8B
http://en.wikipedia.org/wiki/Newline
Если б массив был забит вручную, побайтно, можно было просто вбить 0x28 в конце, но если пишется строка, то только управляющими символами.
Rtmip
Держит паяльник хвостом
Сообщения: 963
Зарегистрирован: Чт апр 03, 2014 23:16:55
Откуда: Россия

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

Сообщение Rtmip »

Dikoy писал(а):В конце пароля символ (nl) 0x0a, по простому "ентер", чтоб после ввода он сам нажимался. Чтоб компилятор его вставил в конец строки, и используются управляющие символы \n\0
Не знал, спасибо за разъяснения :)
Аватара пользователя
Dikoy
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб июл 18, 2009 21:38:43

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

Сообщение Dikoy »

Про ключ, что я делал выше, на базе V-USB library.
Не работает, тварь, на мамках AMD. На интелах всё чудесно.
В инете народ говорит, известная проблема. Лечить можно, но долго и нудно.
Так что учтите, кто будет использовать.
mastech
Грызет канифоль
Сообщения: 269
Зарегистрирован: Чт мар 11, 2010 17:45:37
Откуда: г.фрязино

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

Сообщение mastech »

вопрос следующий почему после if (CheckBit(PINA, 0)) cbi(PORTA, 0); не выполняется оператор выдает ошибку?
Спойлер

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

while(1)

{

if (rc5.dataOK) // приняты данные
{ //портянка 1
PORTB |= (1 « PB0); // здесь нормально работает
_delay_ms(50); //ножка дрыгается
PORTB &= ~(1 « PB0);
_delay_ms(50);

if (rc5.command==1)
{

if (CheckBit(PINA, 0)) cbi(PORTA, 0); //если включен отключаем

// портянка2
PORTB |= (1 « PB0); //нужно вставить
_delay_ms(50) ; //эту
PORTB &= ~(1 « PB0);//портянку
_delay_ms(50); //подрыгать ножкой

else sbi(PORTA, 0);
}

rc5.dataOK = 0;
}
}
}

задача: после приема команды с пульта рц5 при включении пикнуть раз(это работает после приема любой команды с пульта- портянка1 ),а при выключении пикнуть два раза.
работает если пустить портянку через запятую после if (CheckBit(PINA, 0)) cbi(PORTA, 0);пикает, как надо 2 раза(т.е. сначала отрабатывает приход команды, потом после выполнения команды "отключения") но ведь через запятую это не по феншую или я ошибаюсь?)
Аватара пользователя
Pink-Pank
Опытный кот
Сообщения: 721
Зарегистрирован: Ср июн 11, 2014 09:43:13
Откуда: США
Контактная информация:

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

Сообщение Pink-Pank »

вопрос следующий почему после if (CheckBit(PINA, 0)) cbi(PORTA, 0); не выполняется оператор выдает ошибку?


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

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

Сообщение ARV »

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

Мой уютный бложик... заходите!
mastech
Грызет канифоль
Сообщения: 269
Зарегистрирован: Чт мар 11, 2010 17:45:37
Откуда: г.фрязино

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

Сообщение mastech »

по этому поводу у меня тоже есть вопросы. разбираюсь я плохо но мне кажется это автор библиотеки назвал свои дефайны
Вложения
main.h
(408 байт) 314 скачиваний
rc5.c
(2.66 КБ) 367 скачиваний
rc5.h
(758 байт) 334 скачивания
Аватара пользователя
Pink-Pank
Опытный кот
Сообщения: 721
Зарегистрирован: Ср июн 11, 2014 09:43:13
Откуда: США
Контактная информация:

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

Сообщение Pink-Pank »

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

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

Сообщение ARV »

Pink-Pank писал(а):У Вас дважды определяется один и тот же макрос в main.h

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

Мой уютный бложик... заходите!
mastech
Грызет канифоль
Сообщения: 269
Зарегистрирован: Чт мар 11, 2010 17:45:37
Откуда: г.фрязино

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

Сообщение mastech »

иии)
Ответить

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