Перейти к содержанию
    

Альтернативные прошивки для AVR910 by PROTTOSS

Странно это. Проявляется только в CV и только в семействе М16ХХ.

А судя по вашему описанию багов должно глючить всегда и везде.

Выйду из отпуска зашью ребятам вашу версию.

 

З.Ы. DOPER вроде-бы тоже обновляется изредка,неужто до сих пор не в курсе?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Странно это. Проявляется только в CV и только в семействе М16ХХ.

А судя по вашему описанию багов должно глючить всегда и везде.

Выйду из отпуска зашью ребятам вашу версию.

 

З.Ы. DOPER вроде-бы тоже обновляется изредка,неужто до сих пор не в курсе?

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

 

Странно это. Проявляется только в CV и только в семействе М16ХХ.
Вы удивитесь :) Но AVRStudio, CV и avrdude имеют зачастую совершенно разные подходы к программированию отдельно взятого МК :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы удивитесь :) Но AVRStudio, CV и avrdude имеют зачастую совершенно разные подходы к программированию отдельно взятого МК :)

Но баги -же в софте программатора,вроде...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но баги -же в софте программатора,вроде...
Вы читали мой первый сегодняшний пост? Цитирую "в зависимости от типа МК и типа программного обеспечения"

 

Первый баг обходится, если pol1 = pol2

Второй баг обходится, если вместо чтения-проверки записанного байта в ЕЕПРОМ, использовать просто задержку на время записи в ЕЕПРОМ.

 

Это все устанавливается флагами в параметрах команды записи протокола ST500v2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Или конкуренция и все такое?;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Или конкуренция и все такое? ;)

Да какая конкуренция? :) Собирать проект просто нет времени. Да и испытывать не на чем... Вернее испытан был на моем программаторе. Прошивка в соседнем топике. Могу указать в каком именно месте ошибки:

Файл "isp.c"; функция "uchar ispProgramMemory(stkProgramFlashIsp_t *param, uchar isEeprom)"

Исходный код в теле функции:

/* poll for ready after each byte (word mode) or page (page mode) */
         if(param->mode & valuePollingMask){ /* value polling */
             uchar d = param->data[i];
             if(d == param->poll[0] || d == param->poll[1]){ /* must use timed polling */
                 timerMsDelay(param->delay);
             }else{
                 uchar x = param->cmd[2];     /* read flash */
                 x &= ~0x08;
                 if((uchar)i & 1){
                     x |= 0x08;
                 }
                 cmdBuffer[0] = x;
                 timerSetupTimeout(param->delay);
                 while(ispBlockTransfer(cmdBuffer, 4) != d){
                     if(timerTimeoutOccurred()){
                         rval = STK_STATUS_CMD_TOUT;
                         break;
                     }
                 }
             }
         }else if(param->mode & rdyPollingMask){ /* rdy/bsy polling */
             rval = waitUntilReady(param->delay);
         }else{                          /* must be timed delay */
             timerMsDelay(param->delay);
         }

 

Исправленный код. Смотрите комментарии на русском языке.

 

/* poll for ready after each byte (word mode) or page (page mode) */
         if(param->mode & valuePollingMask){ /* value polling */
             uchar d = param->data[i];
             if(d == param->poll[0] ||  /* must use timed polling */
               (d == param->poll[1] && isEeprom)){  /* poll2 используется только при программировании ЕЕПРОМ!!!  - см. описание протокола STK500v2 */
                 timerMsDelay(param->delay);
             }else{
                 if(!isEeprom){  /* Проверка какой тип памяти программируется !!! */
                     uchar x = param->cmd[2];     /* read flash */
                     x &= ~0x08; /* Команда записи младшего байта ФЛЭШ */
                     if((uchar)i & 1){
                        x |= 0x08;/* Команда записи старшего байта ФЛЭШ */
                     }
                 }
                 cmdBuffer[0] = x;
                 timerSetupTimeout(param->delay);
                 while(ispBlockTransfer(cmdBuffer, 4) != d){
                     if(timerTimeoutOccurred()){
                         rval = STK_STATUS_CMD_TOUT;
                         break;
                     }
                 }
             }
         }else if(param->mode & rdyPollingMask){ /* rdy/bsy polling */
             rval = waitUntilReady(param->delay);
         }else{                          /* must be timed delay */
             timerMsDelay(param->delay);
         }

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Только с прошивкой из этого топика мой программатор (заказывал на mkpochtoi, пришлось переделывать!) стал работать в линухе.

Благодарю. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы какой программатор заказывали - типа stk500 или AVR910 ? Приложите пожалуйста архив с прошивкой и всем что нужно чтобы программатор запустить в Linux.

Тоже хочу на мкпочтой программатор заказать и на ноутбуке у монтажника Linux установлен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы какой программатор заказывали - типа stk500 или AVR910 ? Приложите пожалуйста архив с прошивкой и всем что нужно чтобы программатор запустить в Linux.

Тоже хочу на мкпочтой программатор заказать и на ноутбуке у монтажника Linux установлен.

STK500. Вот полное описание переделки. Дел - на 20 минут, вместе с изготовлением эрзац-LPT-программатора.

http://rootadmin.livejournal.com/10824.html

Работает - отлично, уже поэкспериментировал.

ИМХО - если сразу заказать AVR910 - там вся переделка будет заключаться в перешивке.

Главное - не забывать что на схеме выводы для контролеера в DIP корпусе, а стоИт tqfp.

Изменено пользователем Andru_stv

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1)Сделал программатор по схеме PROTTOSSa . Хочу отметить медленную скорость работы прошивки PROTTOSSa. Перепрошил прошивку DOPERa - скорость работы !!!!!отличная!!!!!!. 2). Для информации (работа под WINDOWS 7) - прошивка (cdc) PROTTOSSа работает под win7, а прошивка (cdc) DOPER - непожелала работать под win7. Может кто подскажет как заставить работать прошивку cdc DOPER под win7.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нашел решение проблемы работы прошивки DOPER под windows 7. Проверено. При подключение программатора подсунуть вместо драйверов в архиве, вот ети драйвера http://www.recursion.jp/avrcdc/avrcdc_inf.zip (там найти папку с нужной виндой)

 

Если у вас набралось много виртуальных портов и есть желание их удалить - действуйте по етой методике http://forum.oszone.net/thread-122359.html

Изменено пользователем G_S_V

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

прошивка (cdc) PROTTOSSа работает под win7, а прошивка (cdc) DOPER - непожелала работать под win7.

Дела... Кто-нибудь еще такое наблюдал? Как это можно объяснить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте! Когда-то собирал программматор AVR910 by PROTTOSS - шил в основном Mega8, все работало отлично, но тут возникла необходимость прошить некоторое количество atmega128, но никак. Error entering ...... Не читается, не пишется. Решил попробовать альтернативные прошивки из данной темы - то же самое. При всем при этом STK200/300 читает и пишет без проблем. Но нужен именно программатор на USB.

 

Подскажите в чем может быть проблема?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

проверьте не висит ли что то на портах у меги -у Protoss достаточно высокоомные защитные резисторы по схеме

у меня тая штука с 910 и Usbasp было. Usbasp работал 910 нет

Изменено пользователем GYUR22

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...