После обновления до Atmel Studio 7 avr isp mkii clone перестал работать.
Исходные данные:
Программатор avr isp mkii clone на at90usb162 16МГц
1. Подготовка среды для сборки прошивки с fw 1.8 и режимом переключения совместимости
— устанавливаем Atmel Studio 7;
— кроме того для компилятора устанавливаем набор портированных *nix утилит: BASH *nix shells, и *nix утилит таких как cut, find и sed:
с сайта mingw скачиваем инсталятор и при установке выбираем следующие пункты: mingw32-base, mingw32-binutils и msys-base, инсталятор сам установит все зависящие пакеты;
— с сайта скачиваем архив LUFA библиотек с проектами, распаковываем в корень системного диска (c:\lufa-master\… );
— в переменной среды PATH для пользователя и для системы дописываем (! пример):
C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin;C:\MinGW\msys\1.0\bin
(пути будут зависить от типа ОС и предпочтений пользователя)
2. Правка исходников прошивки и копиляция
— правим файл C:\lufa-master\Projects\AVRISP-MKII\make (прописываем свой камнь и частоту)
MCU = at90usb162
ARCH = AVR8
BOARD = USBTINYMKII
F_CPU = 16000000
F_USB = $(F_CPU)
OPTIMIZATION = s
TARGET = AVRISP-MKII
— правим файл C:\lufa-master\Projects\AVRISP-MKII\Config\AppConfig.h (разрешаем переключение режимов совместимости):
// #define LIBUSB_DRIVER_COMPAT
#define RESET_TOGGLES_LIBUSB_COMPAT
— правим файл C:\lufa-master\Projects\AVRISP-MKII\Lib\V2ProtocolParams.h (тут указываем совместимость версии прошивки 1.8):
#define FIRMWARE_VERSION_MINOR 0x18
сборка:
— открываем камандную строку AS 7 command promt и пишим команды построчно:
cd C:\lufa-master\Projects\AVRISP-MKII\
make all
— после этого в данном (C:\lufa-master\Projects\AVRISP-MKII\) каталоге должен появиться hex файл прошивки (который прошиваем с помощью Flip введя программатор в режим DFU);
— после прошивки режим совместимости в программаторе выбирается нажатием RESET и сохраняется в памяти;
— для очистки каталога от результатов компиляции можно выполнив команду:
make clean
3. Настройка ОС
— Скачиваем Zadig. Zadig это USB driver менеджер для Windows, позволяет подменять драйвер. Последняя версия идет с libusb-win32 (v1.2.6.0) драйвером.
— Открываем Zadig, Options, List All Devices. Из списка выбираем AVRISP mkII (прежде при первом подключении программатора следует сменить режим).
— Смeнить текущий драйвер на libusb-win32 (v1.2.6.0)
Перезагрузка не требуется.