http://yadi.sk/d/EdS3X2RcSs9HD
WinAvr в вопросах и ответах
- Сообщения: 94
- Зарегистрирован: Сб июл 18, 2009 21:38:43
Граждане, у кого WinAVR установлен и настроен, компильните плз. 2 проекта. Мейк в комплекте. А то у меня его сейчас нету...
http://yadi.sk/d/EdS3X2RcSs9HD
http://yadi.sk/d/EdS3X2RcSs9HD
- Реклама
Приветствую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 скачивания
- Сообщения: 94
- Зарегистрирован: Сб июл 18, 2009 21:38:43
Спасибо!
Проект http://codeandlife.com/2012/03/03/diy-u ... generator/
Флешер был 16-и битным, я так понимаю, вы его заменили 8-и битным типом?
Проект http://codeandlife.com/2012/03/03/diy-u ... generator/
Флешер был 16-и битным, я так понимаю, вы его заменили 8-и битным типом?
- Сообщения: 94
- Зарегистрирован: Сб июл 18, 2009 21:38:43
Там если пошукать, есть и плата http://codeandlife.com/topics/v-usb-electronics/
Тут на русском, но устаревшая версия http://www.rlocman.ru/shem/schematics.html?di=133991
Могу свою плату дать, в спринте, под SO корпуса.

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

точно, ошибся, не посмотрел в тексте повнимательнее.Dikoy писал(а):Флешер был 16-и битным, я так понимаю, вы его заменили 8-и битным типом?
во вложении переправил на 16 бит, проверьте
плату не надо, спасибо, под такие корпуса нечем делать
- Вложения
-
- usb_tiny85_v2.rar
- (129.43 КБ) 184 скачивания
- Реклама
- Сообщения: 94
- Зарегистрирован: Сб июл 18, 2009 21:38:43
Кстати, насчёт плат, мне 3 платы под этот ключ обошлись в $3.75, включая доставку по миру. Вот тут заказываю: https://oshpark.com/
Отзыв: http://forum.ixbt.com/topic.cgi?id=48:10279-4#101
Если будете у них заказывать ОБЯЗАТЕЛЬНО делайте экспорт контура в КАЖДОМ слое (гербере). А то снесут все полигоны и зазоры.
Отзыв: http://forum.ixbt.com/topic.cgi?id=48:10279-4#101
Если будете у них заказывать ОБЯЗАТЕЛЬНО делайте экспорт контура в КАЖДОМ слое (гербере). А то снесут все полигоны и зазоры.
- Сообщения: 94
- Зарегистрирован: Сб июл 18, 2009 21:38:43
А почему оно епромовский файл не выдаёт? У меня там пароль сохранён. Может, что в мейке поправить?
- Сообщения: 94
- Зарегистрирован: Сб июл 18, 2009 21:38:43
ПС. Код работает, даже хорошо работает. Но вместо пароля выдаёт какую-то фигню.
Читаю инет, нигде внятно не написано, как заставить его выдавать hex и eep отдельно...
Читаю инет, нигде внятно не написано, как заставить его выдавать hex и eep отдельно...
может кто поправит makefile в исходном проекте...
сделал другой makefile, смотрите вложение в личке
Вот только код Ваш мудреный, в еепроме не целиком, так понимаю, что слэш(\) понимается компилятором как "новая строка" и
поэтому тут код кончается... Вообщем посмотрите файл еепрома
сделал другой makefile, смотрите вложение в личке
Вот только код Ваш мудреный, в еепроме не целиком, так понимаю, что слэш(\) понимается компилятором как "новая строка" и
поэтому тут код кончается... Вообщем посмотрите файл еепрома
- Сообщения: 94
- Зарегистрирован: Сб июл 18, 2009 21:38:43
Ну тут я уже сам поправлю, винавр установил и вроде настроил - через блокнот компилится.
Раньше комп был только с гостевой учёткой, ничего не поставишь. И вот, админ вышел и отпуска, и счастье наступило.
В конце пароля символ (nl) 0x0a, по простому "ентер", чтоб после ввода он сам нажимался. Чтоб компилятор его вставил в конец строки, и используются управляющие символы \n\0 http://ru.wikipedia.org/wiki/%D0%A3%D0% ... 0%BB%D1%8B
http://en.wikipedia.org/wiki/Newline
Если б массив был забит вручную, побайтно, можно было просто вбить 0x28 в конце, но если пишется строка, то только управляющими символами.
Раньше комп был только с гостевой учёткой, ничего не поставишь. И вот, админ вышел и отпуска, и счастье наступило.
В конце пароля символ (nl) 0x0a, по простому "ентер", чтоб после ввода он сам нажимался. Чтоб компилятор его вставил в конец строки, и используются управляющие символы \n\0 http://ru.wikipedia.org/wiki/%D0%A3%D0% ... 0%BB%D1%8B
http://en.wikipedia.org/wiki/Newline
Если б массив был забит вручную, побайтно, можно было просто вбить 0x28 в конце, но если пишется строка, то только управляющими символами.
Не знал, спасибо за разъясненияDikoy писал(а):В конце пароля символ (nl) 0x0a, по простому "ентер", чтоб после ввода он сам нажимался. Чтоб компилятор его вставил в конец строки, и используются управляющие символы \n\0
- Сообщения: 94
- Зарегистрирован: Сб июл 18, 2009 21:38:43
Про ключ, что я делал выше, на базе V-USB library.
Не работает, тварь, на мамках AMD. На интелах всё чудесно.
В инете народ говорит, известная проблема. Лечить можно, но долго и нудно.
Так что учтите, кто будет использовать.
Не работает, тварь, на мамках AMD. На интелах всё чудесно.
В инете народ говорит, известная проблема. Лечить можно, но долго и нудно.
Так что учтите, кто будет использовать.
вопрос следующий почему после if (CheckBit(PINA, 0)) cbi(PORTA, 0); не выполняется оператор выдает ошибку?
задача: после приема команды с пульта рц5 при включении пикнуть раз(это работает после приема любой команды с пульта- портянка1 ),а при выключении пикнуть два раза.
работает если пустить портянку через запятую после if (CheckBit(PINA, 0)) cbi(PORTA, 0);пикает, как надо 2 раза(т.е. сначала отрабатывает приход команды, потом после выполнения команды "отключения") но ведь через запятую это не по феншую или я ошибаюсь?)
Спойлер
Код: Выделить всё
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;
}
}
}
работает если пустить портянку через запятую после if (CheckBit(PINA, 0)) cbi(PORTA, 0);пикает, как надо 2 раза(т.е. сначала отрабатывает приход команды, потом после выполнения команды "отключения") но ведь через запятую это не по феншую или я ошибаюсь?)
потому что cbi и sbi - это ассемблерные команды, а пишете Вы на СИ. Оформляйте их соответствующевопрос следующий почему после if (CheckBit(PINA, 0)) cbi(PORTA, 0); не выполняется оператор выдает ошибку?
Fucking static initialization order fiasco
может, надо после if фгурными скобочками обозначить условно-выполняемый блок с вашими портянками? кстати, сами портянки неплохо бы функциями сделать
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
У Вас дважды определяется один и тот же макрос в main.h
Fucking static initialization order fiasco
это не проблема и не ошибкаPink-Pank писал(а):У Вас дважды определяется один и тот же макрос в main.h
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!


