USB программатор (AVRasp) на Atmega88 (Atmega48, Atmega8)

Для примера сделаем программатор на основе Atmega88 и попробуем прочитать прошивку с другой Atmega88!
Также установим на Linux Rosa Fresh R12 графическую оболочку для Avrdude – AVR8 Burn-O-Mat.

Схема будет следующая:

Собирал её по следующей схеме:

https://fischl.de/usbasp/

Прошивку hex файл можно скачать здесь:
Скачать прошивку usbasp.2011-05-28 в архиве tar.gz
Скачать прошивку usbasp.2011-05-28 в архиве zip

Hex файл находится здесь:

Действия по изготовлению программатора USBasp:
1. Прошиваем Atmega88 hex файлом из архива выше – можно использовать простейший программатор – 5 проводков через LPT порт + программа PonyProg2000 или Avrdude

Программатор – 5 проводков через LPT порт:

—————————————
Схема LPT Atmel AVR простой программатор: ATmega8, ATmega48, ATmega88, ATmega168 и некоторые другие в DIP28.

Программатор 5 проводков для других Atmeg в этой статье – https://gameforstreet.ru/avr-prostye-i-prostejshie-programmatory/
——————————————

Программу PonyProg2000 можно скачать здесь – скачать.

2. Прописываем фьюзы в PonyProg2000 для Atmega88 следующие:

3. Вставляем компоненты и провода.

4. Устанавливаем драйверы:

Для Windows XP устанавливал вот эти драйверы:

Для Linux, в моем примере использовал свою ОС Linux Rosa Fresh R12 Plasma – устанавливаем avrdude:

urpmi avrdude

Отключаем программатор от компьютера и создадим файл с правилом что разрешает доступ к программатору USBAsp всем пользователям на компьютере, выполним команду:

sudo nano /etc/udev/rules.d/60-objdev.rules

После запуска откроется текстовый редактор, вставьте в него вот этот код:

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", MODE="0666", SYMLINK+="USBasp"

Выходим из редактора и сохраняем файл (CTL+X и Y).

Для того чтобы в Linux наш скрипт заработал можно перезагрузить ОС.

5. Проверяем работу программатора Usbasp

avrdude -p m8 -c usbasp -P usb -n

Если все подключено и настроено как нужно то то вывод программы будет выглядеть вот таким образом:

А теперь давайте считаем прошивку микроконтроллера что хранится во Flash-памяти и сохраним ее в файл.

Считывание Flash для программатора USBAsp, но для сначала скопируйте какой-нибудь hex файл, положите его например в домашнюю папку и переименуйте в 111.hex например:

avrdude -p m8 -c usbasp -P usb -U flash:r:/home/alisa7/111.hex:i

После выполнения команды – файл 111.hex перепишется и будет содержать данные из флешь-памяти микроконтроллера.

———————————-
Для начала сверим идентификаторы устройства и убедимся что у нас действительно программатор USBAsp. Подключаем программатор к USB порту ноутбука и смотрим лог последних событий системы за текущий день:

sudo journalctl -f

К примеру, в конце вывода последней команды увидим вот что:

Oct 11 13:11:52 alpha5 kernel: usb 1-2: new low-speed USB device number 9 using xhci_hcd
Oct 11 13:11:52 alpha5 kernel: usb 1-2: New USB device found, idVendor=16c0, idProduct=05dc
Oct 11 13:11:52 alpha5 kernel: usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Oct 11 13:11:52 alpha5 kernel: usb 1-2: Product: USBasp
Oct 11 13:11:52 alpha5 kernel: usb 1-2: Manufacturer: www.fischl.de

———————————-

6. Скачиваем графическую оболочку для ardude – AVR8 Burn-O-Mat

Скачать можно здесь: http://avr8-burn-o-mat.brischalle.de/

Или здесь:
– Скачать AVR8 Burn-O-Mat в формате zip
– Скачать AVR8 Burn-O-Mat в формате tar.gz

7. Запускаем файл start.sh и настраиваем AVR8 Burn-O-Mat

Прописываем, где находятся файлы avrdude в настройках AVR8 Burn-O-Mat

На моей ОС Linux Rosa Fresh R11:

/user/bin/avrdude

/etc/avrdude/avrdude.conf

Прописываем права доступа к файлу avrdude.conf

chmod 777 avrdude.config

8. Читаем фьюзы и прошивку!

Видео инструкция:

“rutube.ru/video/d7770a567ff9d3c13df7ed36f8601720/”

Добавить комментарий