download

 

AVReAl – AVR serial programmer

На этой странице вы можете загрузить свежую версию AVReAl.
При работе с FT2232C/L/D, FT2232H, FT4232H необходимо установить драйвер для микросхем FTDI и библиотеку FTD2XX.DLL. Linux-версия также использует библиотеку FTD2XX (libftd2xx.so).

avreal/linux проверен с библиотеками libftd2xx версий по 0.4.16 включительно. С этой страницы можно загрузить 32-битную libftd2xx0.4.16.tar.gz и 64-битную libftd2xx0.4.16_x86_64.tar.gz версии этой библиотеки.

Для работы с LPT под WindowsNT, Windows2000, WindowsXP 32 и 64 бит, Windows7 32 и 64 бит необходимо установить драйвер доступа к портам DLPortIO. Для Windows 98 драйвер не нужен.

avreal для Linux также работает с LPT без дополнительных драйверов, необходимо только выбрать метод работы и настроить права программе.

AVReAl 

Version Windows Linux i386 Linux x86-64 FreeBSD
1.28rev9 1.28r9 – Win32 1.28r9 – Linux32 1.28r9 – Linux64 1.28r9 – FreeBSD (8.2)
1.28rev8 1.28r8 – Win32 1.28r8 – Linux32 1.28r8 – Linux64 1.28r8 – FreeBSD 8.2
1.28r8 – FreeBSD 6.4
1.28rev7 avw-1.28r7.zip avl32-1.28r7.zip avl64-1.28r7.zip avb-1.28r7.zip
1.28rev6 avw-1.28r6.zip avl32-1.28r6.zip avl64-1.28r6.zip avb-1.28r6.zip
1.28rev5 avw-1.28r5.zip avl32-1.28r5.zip avl64-1.28r5.zip avb-1.28r5.zip
1.28rev4 avw-1.28r4.zip avl32-1.28r4.zip avl64-1.28r4.zip avb-1.28r4.zip
1.28rev3 avw-1.28r3.zip avl32-1.28r3.zip avl64-1.28r3.zip avb-1.28r3.zip
1.28rev2 avw-1.28r2.zip avl32-1.28r2.zip avl64-1.28r2.zip avb-1.28r2.zip
1.28rev1 avw-1.28r1.zip avl32-1.28r1.zip avl64-1.28r1.zip avb-1.28r1.zip
1.28rev0 avw-1.28r0.zip avl32-1.28r0.zip avl64-1.28r0.zip avb-1.28r0.zip
avw-1.27r4.zip avl32-1.27r4.zip avl64-1.27r4.zip avb-1.27r4.zip

Сообщения об обновлениях программы и найденных ошибках публикуются в категории История.
Некоторые из предыдущих версий программы (включая последнюю DOS-версию) находятся на «старой» страничке History.

DLPortIO 

File Comments
dlportio-64.zip (25K)
Драйвер и библиотека для 64-битных версий Windows.
Инсталлятор командной строки. Подробнее…
dlportio-32-bat.zip (17K)
Драйвер и библиотека для 32-битных версий Windows.
Инсталлятор командной строки. Подробнее…
dlportio-32-exe.zip (167K)
Драйвер и библиотека для 32-битных версий Windows.
GUI-инсталлятор. Подробнее…

Драйвера не проверялись с Windows Vista, но, судя по всему, должны работать при инсталляции как для Windows 7

 

AT89S51, AT89S52 serial programmer

at89s52.zip

По просьбам выкладываю старую версию последовательного программатора at89s51, at89s52. Программа была сделана для знакомого методом переделки avreal под другой алгоритм. Насколько я знаю, ею прошито много тысяч контроллеров, так что “должно работать”.
Поддерживаются только Windows и LPT, для работы необходимо установить тот же драйвер, что и для avreal. Ключи в основном совпадают с ключами avreal, отдельного описания нет.
Проверка перед выкладыванием показала, что при высоких частотах в ключе -o (для моего компьютера – выше -o10MHZ) контроллер не программируется, поэтому при ошибках просто попробуйте снизить частоту до -o8MHz или даже до -o6MHz.
Эта версия не будет развиваться, но я попробую найти время и добавить поддержку at89s в основную программу.


32 Responses to “download”

  1. vitaly says:

    Доброго дня.

    У мене виникла необхідність програмувати процесори AT89S52 з під операційної системи Linux, чи можна розраховувати що найближчим часом ви зробите версію AT89S52 serial programmer для цієї операційної системи, або інтегруєте її функції у avreal?

    • ReAl says:

      Можливо, мені дійсно простіше буде для початку зробити окрему програму.
      Супроводжувати буде простіше одну, але це якщо внутрішня структура буде продумана. Тому зробити окрему, а потім звести до спільного знаменника може і краще.

      На початку грудня я підніму старі шматки для 89s5x і подумаю, як краще зробити.

  2. Андрей says:

    Можно с помощью AVRReal записать свою программу BootLoader в ATMega16? Нужно как-то указывать что эта программа записывается в NRWW секцию? И стирается ли основная программа из RWW секции?

    • ReAl says:

      С точки зрения программатора секции не отличаются, так как он «исполняется» «снаружи», а не из RWW-секции, как boot-loader.
      В HEX-файле указаны адреса, программатор шьёт по ним и всё.
      Стирается вся память микроконтроллера при указании ключа -e
      Если ключ не указан, то флеш не стирается и можно дописать в чистое место нужное содержиое.

      • Андрей says:

        С точки зрения программатора секции не отличаются, так как он «исполняется» «снаружи», а не из RWW-секции, как boot-loader.

        Я не понял, программатор когда записывает Flash в МК, стандартный BootLoader не использует? То есть если я сотру NRWW секцию и не запишу туда ничего, или запишу кривой BootLoader, МК всё равно будет благополучно программироваться через AVRReal?

        • ReAl says:

          Он его не только не использует, он начинает с того, что стирает его по ключу -e, так как снаружи кристалл стирается только весь.
          Любой внешний ISP-программатор не зависит от наличия бутлоадера. Если программирование по последоватльному каналу вообще разрешено (SPIEN=0), то он стирает-пишет всё через аппаратный интерфейс программирования.

          • Андрей says:

            Спасибо. Но остался вопрос: какой формат файла *.a90? Можно где то почитать? Ну, что бы понимать как правильно записать программу в МК.

          • ReAl says:

            Ну так насколько я понимаю, .a90 – самый что ни на есть intel hex формат, т.е. можно подсовывать avreal-у.
            Стирать при записи не забываете?

            Ну вышлите мне на почту avreal at real.kiev.ua файл, я гляну.

          • Андрей says:

            Ну так насколько я понимаю, .a90 – самый что ни на есть intel hex формат, т.е. можно подсовывать avreal-у.
            Стирать при записи не забываете?

            Тут всё классно, avreal его пишит отлично, я имел в виду для своего BootLoadera как его (этот файл *.а90) предоставить? Я так понял там в начале каждой строчки идёт адрес (в байтах) а потом данные в Hex виде, только их многовато. В общем хочу почитать описание hex формата файла.

          • ReAl says:

            Ну з цим ніяких проблем :-)
            http://real.kiev.ua/files/diff/intelhex.pdf

  3. [...] для запуска внешней утилиты-программатора avreal ( скачать ) и прошивки [...]

  4. Андрей says:

    Добрый день.
    AVReal принимает файлы в формате Intel HEX, я пытаюсь выставить в IAR формат выходного файла Intel Standart or Intel Extended для Tiny26, но контроллер прошивается не правильно. Я так понимаю что IAR формирует выходной файл(*.a90) не правильного формата? Как правильно выбрать формат выходного файла, или может использовать какой-то перекодировщик?

    • ReAl says:

      Когда-то давно IAR-овский софт иногда некорректно формировал hex-файл на границе 64К байт, но это в прошлом и это не может коснуться tiny26. Так что проблем быть не должно.
      В чём выражается “неправильность прошивания” ?

      • Андрей says:

        Процессор прошывается без ошибок, но программу не выполняет. Я загоняю самую простую програмку
        wait_3000ms;
        PORTA_7 = 0; PORTA_6=1; PORTA_5=0; PORTA_4=1;
        RS = 0; E = 1;
        wait_3000ms;
        PORTA_7 = 1; PORTA_6=0; PORTA_5=1; PORTA_4=0;
        RS = 1; E = 0;
        но она не выполняется, на ножках процессора уровни не изменяются.
        Раз формат файла выбран правильно, то я завтра попробую другим программатором, и если не разберусь, то напишу.
        Спасибо.

      • Андрей says:

        Да, все таки я запутался. Прошиваю процесор другим программатором, все работает. Прошивается без ошибок, fuses изменяет нормально. Как понять в чем проблема?

      • Андрей says:

        Прошивается контроллер без ошибок, читается без ошибок, но прочитанные данные отличаются от записанных. Тоже происходит и с Mega16. Как правильно вычислить в чем ошибка?
        Спасибо.
        К стати Tiny26 не верификацию не Очистку не проходит, пишит “контроллер не поддерживается”.

      • ReAl says:

        Та ну… tiny26 давно підтримується. Років шість так точно. Пару років з ними не працював, але пропасти з програматора вони не могли.
        Показуйте командний рядок, висилайте на пошту файл, який не пишеться — буду розбиратися.
        Ключ -e при запису додано? Автоматично по -w не зтирається, дописується по старому.

        • Андрей says:

          Спасибо. Ключ -e не был добавлен.
          Я пользовался бат файлами скачанными с Интернета, и не догадывался что по ключю -w контроллер просто дописывается.
          Благодарю.

  5. Андрей says:

    Я немного запутался. Написано (-frstdsbl=0 или -frstdsbl=on) – это одно и тоже. Значит если в DataSheet написано CKOPT установить(1), то в AvrReal я должен задать -fckopt=0 ???
    Ни как не могу установить биты чтобы ATMega16A заработал от внешнего резонатора. Я ставлю: CKSEL=E,SUT=0,CKOPT=0 , но контроллер останавливается.
    Заранее благодарю.

    • ReAl says:

      Написано (-frstdsbl=0 или -frstdsbl=on) – это одно и тоже

      Да.

      Значит если в DataSheet написано CKOPT установить(1), то в AvrReal я должен задать -fckopt=0

      Нет.

      The ATmega16A has two fuse bytes. Table 26-3 and Table 26-4 describe briefly the functionality of all the fuses and how they are mapped into the fuse bytes. Note that the fuses are read as logical zero, “0”, if they are programmed.

      Запрограммированное значение, on, это 0. Стёртое значение, off, это 1. Так что если в документации в колонке ckopt стоит 1 то и указывать надо ckopt=1.

      CKSEL=E,SUT=0,CKOPT=0

      Частота любая с полным размахом генератора (в данном случае ckopt=0 вместо 1 вроде даже и полезно), старт выставлен на “Ceramic resonator, fast rising power” – Вы уверены в том, что младший бит CKSEL и биты SUT выставили правильно? Кварц может просто не стартовать нормально и в каком там состоянии залипнет контроллер – непоянтно. Я бы под кварц ставил CKSEL=F,CKOPT=0,SUT=3 или CKSEL=F,CKOPT=0,SUT=1 в зависимости от BOD.
      Обычно если уж на кварце, то меня время старта от не волнует, ставлю CKSEL=F,CKOPT=0,SUT=3 даже при наличии BOD.

  6. Ruslan says:

    Доброго дня, пане Олександре!
    Дуже вже хочеться спробувати шити ATxmega чіпи.
    Думаю, не тільки мені одному. Скажіть, коли це можливо?
    Почати б з найлегших ATxmega16A4, ATxmega32A4, ATxmega64A4…
    Я так розумію, тут проблема в PDI-інтерфейсі?

    З подякою, Руслан. (FaM)

    • ReAl says:

      Проблема в часі.
      На героя “За мільярд років до кінця світу” Стругацьких я не тягну, але протягом останнього місяця у мене згорів блок живлення в комп’ютері та вийшло з ладу три вінчестери – за попередні двадцять років сумарні втрати були меншими.
      І це при тому, що якраз зараз роботи підвалило.
      Поки я розчухаюся, ще невідомо що буде з xmega :-(
      Гляньте в бік програматора на 90usb162 на електроніксі

      • Ruslan says:

        Проблем зашивати АТх не існує. Користуюся наразі AVRISP mkII. А той, що ви рекомендували (90usb162), і є його аналог. Просто хочеться, щоб був один універсальний для усіх МЕГ. Як буде час, то підтримайте і цю серію. І ще – думаєте, АТх – це тупиковий хід? Тобто, пророкуєте йому недовге життя?
        Дякую за відповідь.
        Руслан. (ФаМ)

      • ReAl says:

        Так, то клон AVRISP mk II, хоч я і не розбирався, наскільки 1:1 сумісний.
        “один універсальний програматор” — це залежить від того, що під цим розуміти.

        Якщо апаратуру, то через особливості PDI універсальним для tiny+mega+xmega буде швидше AVRISPmkII, ніж щось на базі підтримуваних на даний момент адаптерів.
        З цього випливає, що якщо мати на увазі універсальну програму, то це мені треба додати роботу з AVRISPmkII.

        Щодо перспектив ATXmega — це залежить від цінової політики Atmel.
        З точки зору техніки — там нарешті деякі речі зробили такими, якими вони мали бути з самого початку, тому вважаю це вдалим кроком, хоч, можливо, і дещо запізним.

  7. Андрей says:

    когда я использую bat файл для изменения fuses, то в качестве второго параметра немогу передать список изменяемых fuses. Вместо списка передается первое слово из списка. Например команда f.bat mega16 sut=0 в качестве второго параметра передает просто sut. в bat файле написано так: avreal32-1.28r1.exe +%1 -p1 -as -o1000 -n -2 -w -f%2
    тоесть как правельно выполнять запись fuses с использованием bat файла.

    • ReAl says:

      (был два дня далеко от дома, поэтому задержался с ответом)

      Особенность командного процессора в win.
      Символ ‘=’ заменяется на пробел, аргумент с этим символом разбивается на два независимых.
      Можно запретить обработку аргумента, взяв его в кавычки (так, кстати, следует передавать и имена файлов с пробелами).
      Т.е. Ваш файл можно вызывать так

      f mega16 "sut=0"

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

      avreal32-1.28r1.exe -p1 -as -o1000 -n -2 %*

      Вот это %* означает “подставить сюда все аргументы без изменений”
      Тогда командный файл можно будет вызывать и так

      f +mega16 -fsut=0 -w

      и так

      f +mega16 -e -w -v code.hex -l2

      и так

      f +mega16 -r code.hex ee.hex
  8. Андрей says:

    В простом LPT адаптере “5 проводков” нужно ставить какие то резисторы между MK & LPT?

Leave a Reply

[flagcounter image]