Avr isp usb linux

Программирование микроконтроллеров AVR под LINUX

USBasp — простой внутрисхемный USB-программатор для микроконтроллеров Atmel AVR. Программатор построен на микроконтроллере ATMega88 (или ATMega8) и содержит минимум деталей. Программатор использует свой USB-драйвер, никакие специальные USB контроллеры не нужны.

Особенности программатора:
— работа под любой платформой: Windows, Linux и Mac OS X
— какие-либо специальные компоненты или smd не нужны
— скорость программирования до 5 кБ/сек
— SCK-джампер позволяет программировать низкоскоростные контроллеры ( < 1.5МГц)
— в планах: последовательный интерфейс (например для отладки)

Схема предназначена для программирования только 5В кристаллов. В других случаях, уровни должны быть преобразованы!

Т.к. в схеме программатора используется микроконтроллер, то его необходимо предварительно прошить. Для этого подключите другой рабочий программатор и установите джампер J2, для активации функции обновления прошивки.
Прошейте программатор при помощи прошивки: «bin/firmware/usbasp.atmega88.xxxx-xx-xx.hex» или «bin/firmware/usbasp.atmega8.xxxx-xx-xx.hex»
Необходимо будет установить фьюзы для подключения внешнего кварца
# TARGET=atmega8 HFUSE=0xc9 LFUSE=0xef
# TARGET=atmega48 HFUSE=0xdd LFUSE=0xff
# TARGET=atmega88 HFUSE=0xdd LFUSE=0xff

J1 — источник питания (от USB, либо внешний источник). Будьте аккуратнее, т.к. схема не содержит какой-либо защиты от КЗ.
J2 — обновление прошивки (сам себя обновлять не может!). Установленный джампер позволяет программировать контроллер программатора другим рабочим программатором.
J3 — если программируемый МК низкоскоростной

Подключите программатор USBasp к USB. Windows найдет устройство и попросит указать драйвер, укажите ему папку «bin/win-driver«. Windows установит драйвер.
Теперь можно запустить avrdude, к примеру:
1. Войти в терминальный режим, МК: AT90S2313: avrdude -c usbasp -p at90s2313 -t
2. Записать main.hex в flash-память МК ATmega8: avrdude -c usbasp -p atmega8 -U flash:w:main.hex

Читайте также:  Линукс принтер очередь печати

Компиляция прошивки:
1. Установите GNU toolchain для микроконтроллеров AVR (пакеты avr-gcc, avr-libc)
2. Войдите в директорию firmware/
3. Выполните команду «make main.hex»
4. Прошейте «main.hex» ATMega(4)8. Например при помощи uisp или avrdude (используйте
Makefile с опцией «make flash«). Для прошивки установите джампер J2 и подключите USBasp к рабочему программатору.
Также нужно установить фьюзы для работы от внешнего кварца (используйте Makefile
с опцией «make fuses«).

Компиляция avrdude:
ПО AVRDUDE поддерживается программатором USBasp начиная с версии 5.2.
1. Установите пакет libusb: http://libusb.sourceforge.net/
2. Скачайте последнюю версию avrdude: http://download.savannah.gnu.org/releases/avrdude/
3. cd avrdude-X.X.X
4. Сконфигурируйте:
./bootstrap
./configure
5. Компиляция:
make
make install

  • AVRDUDE — поддерживается USBasp начиная с версии 5.2
  • BASCOM-AVR — поддерживается USBasp начиная с версии 1.11.9.6
  • Khazama AVR Programmer — Windows XP/Vista GUI приложение для USBasp и avrdude
  • eXtreme Burner — AVR — программа Windows GUI для USBasp

Под данный программатор разработано более 10 различных вариантов разводки печатной платы, которые можно скачать ниже, либо на страничке официального сайта.

Источник

USBASP драйвер для windows 7-10 / Linux / MacOS

Для внутрисхемной прошивки AVR микроконтроллеров чаще всего применяют специализированный AVR программатор: он прекрасно работает с любыми контроллерами AVR серии ATmega, ATtiny и AT, имеющими SPI интерфейс в режиме внутрисистемного программирования или ISP (In System Programming).

USBASP программатор

USBASP программатор даёт возможность программировать устройства в собранном виде без отключения от питания, а также существенно упрощает отладку программного обеспечения. Программирование можно осуществлять многократно.

Драйверы для USBASP доступны под различные ОС:

2011-05-28 — последняя прошивка с поддержкой TPI для программирования ATMega88 и ATMega8. Все последующие релизы avrdude также работают с данной прошивкой.

Читайте также:  Kali linux iso 2019

Доступны и более ранние версии драйверов:

  • USBASP.2011-05-28.tar.gz (519 kB) – последняя прошивка с поддержкой TPI для программирования ATMega88 и ATMega8. Все последующие релизы avrdude также работают с данной прошивкой.
  • USBASP.2009-02-28.tar.gz (260 kB)
  • USBASP.2007-10-23.tar.gz (172 kB)
  • USBASP.2007-07-23.tar.gz (176 kB)
  • USBASP.2006-12-29.tar.gz (118 kB) Поддержка программирования ATMega48 и ATMega8.
  • USBASP.2006-09-16.tar.gz (116 kB) Новые VID/PID!
  • USBASP.2005-11-14.tar.gz (175 kB)
  • USBASP.2005-07-03.tar.gz (166 kB)
  • USBASP.2005-04-21.tar.gz (169 kB)

Как установить драйвер USBASP на компьютер?

Установка драйвера USBASP производится в несколько простых шагов:

  1. Скачиваем драйвера по ссылкам выше
  2. Распаковываем архив с установочными файлами
  3. Запускаем исполняемый файл (SETUP)
  4. В открывшимся окне соглашаемся с установкой
  5. Перезагружаем компьютер для корректного обновления данных в реестре

После установки драйвера заново подключаем контроллер и смотрим, чтобы плата корректно отобразилась в списке диспетчера устройств.

Источник

Geting USBasp v2.0 to work with Linuxmint

I recently bricked by Arduino Uno board and any attempt to upload new sketch will produce and error. I had tried to reflash the firmware multiple times using my serial programmer that I build a while back but no luck getting it to work. I end up purchasing a USBasp v2.0 programmer from eBay.

USBasp v2.0 should work right out of the box on Linux in most cases. On Arduino IDE, you only need to sett the following:

Board: Arduino/Genuino Uno Programmer: USBasp

The Port setting is not used and the menu item should be grayed out. You should be able to burn bootloader or upload Sketch using the USBasp programmer with the above settings.

Or reflash the boot loader from command line.

/path/to/arduino-1.8.2/hardware/arduino/avr/bin/avrdude -C/path/to/arduino-1.8.2/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -cusbasp -Uflash:w:/path/to/arduino-1.8.2/hardware/arduino/avr/bootloaders/optiboot/optiboot_atmega328.hex:i -Ulock:w:0x0F:m

Читайте также:  Управление оборотами кулера линукс

On some system. A tty device is created when USBasp is connected. In my case /dev/ttyS0. However when Port is set to /dev/ttyS0 in Arduino IDE. You will see the following errors:

avrdude: Warning: cannot open USB device: Permission denied
avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor=’www.fischl.de’ product=’USBasp’

To Fix Permission denied error. As root edit “/etc/udev/rules.d/99-USBasp.rules” with the following:

SUBSYSTEM=="usb", ATTRS=="16c0", ATTRS=="05dc", GROUP="dialout"

Add self to dialout user group.

sudo usermod -aG dialout $USER

Then logoff and login again.

Unplug USBasp device then restart udev.

sudo /etc/init.d/udev restart

To reflash the Arduino Uno boot loader

In the Arduino IDE Tool menu. Set the following:

Board: Arduino/Genuino Uno
Programmer: USBasp

Then select Tools/Burn Bootloader.

Источник

Оцените статью
Adblock
detector