ARCAdaptor

Руководство по эксплуатации

http://adapto.rs

Что это такое?

ARCAdaptor - общий вид

ARCAdaptor - общий вид

Плата ARCAdaptor — это основа для быстрого и простого создания собственных USB HID устройств. В конфигурации по умолчанию ARCAdaptor не требует дополнительной настройки и готов к использованию сразу после подключения к компьютеру.

ARCAdaptor базируется на популярном микроконтроллере ATMega8 и фактически является конструктором для создания собственных USB-устройств.

C помощью ARCAdaptor можно:

Приступая к работе

Комплект поставки

Плата поставляется в 3 вариантах:

Сборка и подготовка к работе описана в разделе Самостоятельная сборка ARCAdaptor.

Подключение устройства

ARCAdaptor подключается к USB-порту компьютера или даже планшета(*) , и питается от этого же порта. Если используется микропрограмма ("прошивка") по умолчанию, то никаких драйверов для работы не требуется.

(*) Примечание: На планшете/телефоне требуется поддержка функции USB-host и поддержка HID-устройств. Большинство планшетов оснащены подобным функционалом.

На рисунке ниже показаны разъемы платы с обозначением контактов.

Диаграмма ARCAdaptor

Диаграмма ARCAdaptor

Контакт ARCAdaptor № контакта ATmega8 Наименование контакта Комментарий
X1
1 17 PB5 (SCK)
2 GND Общий (земля)
3 16 PB4 (MISO)
4 GND Общий (земля)
5 23 PC0 (ADC0)
6 GND Общий (земля)
7 24 PC1 (ADC1)
8 GND Общий (земля)
9 25 PC2 (ADC2)
10 GND Общий (земля)
11 26 PC3 (ADC3)
12 GND Общий (земля)
13 27 PC4 (ADC4/SDA)
14 GND Общий (земля)
15 28 PC5 (ADC5/SCL)
X2
1 11 PD7 (AIN1)
2 GND Общий (земля)
3 2 PD4 (XCK/T0)
4 GND Общий (земля)
5 12 PB0 (ICP)
6 GND Общий (земля)
7 10 PD6 (AIN0)
8 GND Общий (земля)
9 9 PD5 (T1)
10 GND Общий (земля)
11 13 PB1 (OC1A)
12 GND Общий (земля)
13 14 PB2 (SS/OC1B)
14 GND Общий (земля)
15 15 PB3 (MOSI/OC2)
X3
1 1 PD3 (INT1) Режим PRG
2 GND Общий (земля)
3 31 PD1 (TXD)
4 GND Общий (земля)
5 29 PC6 (RESET) Сброс
6 GND Общий (земля)
7 GND Общий (земля)*
8 GND Общий (земля)*
9 VCC +5V*
10 VCC +5V*

(*) Примечание: Контакты 7,8,9,10 разъема X3 целесообразно использовать для питания платы без использования USB (автономные устройства) и/или для питания подключаемых к ARCAdaptor устройств.

Подключение осуществляется с помощью стандартного кабеля USB-A – USB-B.

После автоконфигурации платы в системе появится 3 новых устройства – клавиатура и 2 джойстика.

Пример использования "прошивки" по умолчанию

"Прошивка" по умолчанию создана на основе проекта V-USB MAME Panel. Автор: Andreas Oberdorfer, страница проекта находится здесь.

Как сказано выше, после подключения ARCAdaptor к компьютеру, в системе появится 3 новых устройства:

Диспетчер устройств после подключения ARCAdaptor с "прошивкой по умлочанию"

Диспетчер устройств после подключения ARCAdaptor с "прошивкой по умлочанию"

V-USB MAME Panel изначально задумывалась, как основа для создания домашнего игрового автомата, работающего под управлением программы MAME32. Привязка контактов ARCAdaptor выполнена исходя из этого замысла.

Контакт ARCAdaptor Обычный режим Режим c включенным Shift
X1
1 JOYSTICK1 — UP KEY_UpArrow
3 JOYSTICK1 — DOWN KEY_DownArrow
5 JOYSTICK1 — LEFT KEY_LeftArrow
7 JOYSTICK1 — RIGHT KEY_RightArrow
9 JOYSTICK1 — BUTTON1 KEY_Enter
11 JOYSTICK1 — BUTTON2 KEY_Esc
13 JOYSTICK1 — BUTTON3 KEY_Tab
15 KEY "1" KEY_P
X2
1 JOYSTICK2 — UP KEY_PageUp
3 JOYSTICK2 — DOWN KEY_PageDown
5 JOYSTICK2 — LEFT AC_VolumeDown
7 JOYSTICK2 — RIGHT AC_VolumeUp
9 JOYSTICK2 — BUTTON1 KEY_F7
11 JOYSTICK2 — BUTTON2 KM_SHIFT_F7
13 JOYSTICK2 — BUTTON3 KM_ALT_F4
15 KEY "2" AC_Mute
X3
1 KEY_5/PRG (cointrigger) KEY_5/PRG (cointrigger)
3 SHIFT SHIFT
5 RESET RESET

Некоторые пояснения. Служебный контакт SHIFT (см. таблицу контактов), при замыкании на "землю" (GND), позволяет задействовать дополнительные 17 контактов. Например, если ряд контактов задействован для джойстика, то при замкнутом SHIFT контакты уже работают как кнопки клавиатуры — "стрелка вверх", "вниз", "влево", "вправо". Контакт COINTRIGGER может работать для перевода устройства в режим программирования.

Тестирование функциональности

Для получения представления, о том как всё это работает, выполним простой опыт.

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

  1. Припаяйте отрезки провода к контактам кнопки и облудите или скрутите свободные концы провода, чтобы они не "лохматились" и беспрепятственно входили в разъём устройства.

    Подключение провода к ARCAdaptor

    Подключение провода к ARCAdaptor

  2. Один из отрезков провода вставьте в ряд контактов "земля" (чётный) разъема X1.

  3. Подключите устройство к компьютеру (второй отрезок все еще не подключен).

  4. Перейдите в режим тестирования джойстиков. Например для Windows 7 или Windows 8 выполните следующую последовательность действий: Панель Инструментов → Устройства и принтеры. В окне появится список устройств, подключенных к компьютеру. Выберите "Arcadaptor 8" и кликните правой кнопкой мыши по значку (на нем изображена клавиатура).

    Параметры игровых устройств управления

    Параметры игровых устройств управления

    Список подключенных джойстиков

    Список подключенных джойстиков

  5. Нажмите кнопку "Свойства". Появится окно тестирования и настройки джойстика.

  6. Поочередно замыкайте контакты нечетного ряда X1. На компьютере будет отображаться активность:

    Тестирование джойстика

    Тестирование джойстика

Редактирование контактов

Оригинальная программа V-USB MAME Panel была изменена таким образом, чтобы позволить назначать другие функции контактам ARCAdaptor. Так например, вместо 2х джойстиков и клавиатуры можно использовать один джойстик, но с 8 кнопками.

Примечание: в этом случае в системе по прежнему будет видно 2 джойстика, но задействован будет только один. Второй лишь "занимает место".

Для изменения значений можно воспользоваться online-редактором, находящимся по адресу: http://adapto.rs/arc/editor/.

Использование online-редактора

Редактор написан с использованием HTML5 и JavaScript и работает в браузерах Google Chrome, Mozilla Firefox и Opera(*).

(*) Примечание: Поддержка Opera ограничена из-за особенностей реализации HTML5, но в целом все работает.

Рабочая область редактора состоит из 2х частей — схематичного шаблонного изображения клавиатуры и 2х джойстиков и набора контактов ARCAdaptor (X1, X2 X3).

Для назначения нового функционала на контакт платы ARCAdaptor просто перетащите кнопку экранной клавиатуры или джойстика на желаемый контакт.

После этой операции отредактированный контакт примет новое значение и будет "подсвечен".

Благодаря технологии HTML5 сохранение значений происходит автоматически.

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

Для этого кликните по ссылке Get EEPROM Image и файл конфигурации будет загружен на ваш компьютер.

После этого ARCAdaptor нужно перевести в режим программирования и загрузить новые значения с помощью следующей команды:

avrdude -p m8 -c usbasp -D -U eeprom:w:<имя_файла_конфигурации>

Восстановить "заводские" значения можно кликнув по ссылке Set default values.

Ручное редактирование контактов

Значения контактов можно изменить с помощью редактирования исходного текста "прошивки" и последующей компиляции. Путь к файлу конфигурации:

FIRMWARE/eeprom/hid_eeprom.c

В этой же папке находится makefile, рассчитанный на работу с компилятором avr-gcc. Используйте его для адаптации к своей среде разработки и компилятору.

Пример: Подключаем джойстик от ZX-Spectrum к ARCAdaptor

У вас он наверняка есть, может быть даже с компьютером. Болтается где-нибудь на балконе, антресолях или в гараже. Выглядел он, скорее всего, вот так:

Классический клон ZX-Spectrum

Классический клон ZX-Spectrum

Разъем DIN5, как правило имел следующую распайку — "колечко" — общий, а 5 контактов соответствовали сигналам "вверх", "вниз", "влево", "вправо" и "огонь". Возьмите мультиметр и проверьте назначение контактов.

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

Подключение джойстика к ZX-Spectrum

Подключение джойстика к ZX-Spectrum

(*) Примечание: Используется скриншот аутентичного руководства по эксплуатации советского клона ZX-Spectrum.

Отпаяйте или отрежьте контакт, соответствующий "общему". Подключите его к чётному ряду контактов X1 или X2 — это сигнал GND.

Теперь поочередно отпаивайте или отрезайте старые контакты от разъёма DIN5 и вставляйте их в соответствующие контакты разъёма X1 (или X2, если хотите чтобы джойстик был "вторым" в системе).

В конечном итоге вы получите примерно такую картину:

Подключение джойстика ZX-Spectrum к ARCAdaptor

Подключение джойстика ZX-Spectrum к ARCAdaptor

Решительно запускайте режим тестирования джойстика в вашей операционной системе. Он должен "отзываться". Самое время поставить какой-нибудь эмулятор ZX-Spectrum и вспомнить былые времена!

Загрузка программ в ARCAdaptor

ARCAdaptor позволяет загружать в себя микропрограмму ("прошивку") без использования дополнительных устройств благодаря программе-загрузчику, который установлен в микроконтроллер на этапе изготовления устройства (*). Загрузчик, он же bootloader — маленький участок программного кода, расположенный в специальной области микросхемы. После сброса при выполнении некоторых условий эта программа выполняется. В во всех остальных ("обычных") случаях стартует основная "прошивка".

(*) Примечание: В случае приобретения готовой платы. В других случаях загрузчик устанавливается самостоятельно.

В качестве загрузчика для ARCAdaptor используется свободно распространяемая программа USBAspLoader.

Кстати, именно использование загрузчика обеспечивает одну из ключевых особенностей ARCAdaptor, а именно, работу с Arduino IDE.

Avrdude

Для того, чтобы загрузить программу, или образ EEPROM в ARCAdaptor, на компьютер нужно установить утилиту avrdude.

Если на компьютере установлен пакет Arduino IDE, то avrdude установлен вместе с ним "автоматически".

Вызывать avrdude нужно с дополнительным параметром — указанием файла конфигурации:

Для Windows:

cd c:\arduino\hardware\tools\avr\bin

avrdude -C ..\etc\avrdude.conf -c usbasp -p atmega8 <остальные_команды>

Для MacOS:

cd /Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/bin

./avrdude -C ../etc/avrdude.conf -c usbasp -p atmega8 <остальные_команды>

В операционных системах MacOS X и Linux дополнительные драйвера не требуются. Для Windows же потребуется установка драйверов для USBAsp.

Переход в режим программирования и установка драйверов USBAsp для Windows

Последовательность действий:

В Windows 8 работа драйвера USBAsp возможна только в специальном режиме с отключенной подписью драйверов. Как в него перейти, можно почитать по этой ссылке. К сожалению, каждый раз при перепрошивке устройства придется переходить в этот режим. Хотя бы до того момента, пока авторы USBAsp не добудут себе цифровую подпись.

Команды загрузки программ в ARCAdaptor

Загрузить новый образ EEPROM (например, если вы создали новую конфигурацию в онлайн-редакторе для дефолтной программы):

avrdude -p m8 -c usbasp -D -U eeprom:w:<имя_файла_образа_eeprom>

Заменить дефолтную программу на свою (размер программы не более 6144 байт):

avrdude -p m8 -c usbasp -D -U flash:w:<имя_файла_прошивки>

Записать программу и образ EEPROM за один проход (те же требования к размеру программы):

avrdude -p m8 -c usbasp -D -U flash:w:<имя_файла_прошивки> -U eeprom:w:<образ_eeprom>

Осведомлённый пользователь в курсе, что помимо программ для микроконтроллеров ATmega большую роль играют так называемые fuse-биты, которые определяют режим работы микроконтроллера. Дефолтные значения для них приведены ниже. Мы не рекомендуем вам изменять их без необходимости или если вы не представляете, к чему это приведёт.

"Фузы" одинаковы как для загрузчика, так и для программы. Расшифровку можно посмотреть по ссылке AVR Fuse Calculator.

Разблокировка загрузчика

В поставляемом комплекте bootloader находится в состоянии locked, так что при попытке его стирания будет выдаваться сообщение об ошибке. Это сделано для того, чтобы сохранить работоспособность платы даже при загрузке программы с ошибкой. Если вы все-таки решились пожертвовать им (к примеру, вы гуру и 6 кб вам мало), нужно разблокировать bootloader. Это делается следующей командой

avrdude -p m8 -c <ваш_программатор> -U lock:w:0x3f:m

Использование других проектов с ARCAdaptor

ARCAdaptor базируется на типичном решении на микроконтроллере ATmega8 с использованием библиотеки V-USB. Это автоматически дает возможность использовать плату в качестве "базы" для других известных проектов. На сегодняшний день протестированы следующие проекты:

(*) Примечание:: Требуется небольшая доработка - подробности в соответствующем разделе.

Рассмотрим подключение каждого.

Pixelkit

Pixelkit — замечательное устройство, сопрягающее джойстики "из 90ых" — Sega, Dendy, Atari с реальностью 21 века — USB разъемом.

К недостаткам проекта можно отнести лишь то, что "каждому джойстику нужна своя плата Pixelkit".

Оригинальная схема и руководстве по сборке здесь.

К сожалению, "в лоб" использовать прошивку от Pixelkit не получится, так как она не помещается в отведенный объем. Поскольку исходные тексты PixelKit открыты, мы внесли в них незначительную модификацию, которая позволила уместить всю заявленную функциональность Pixelkit в доступную память ARCAdaptor.

Скачать модифицированную версию программы Pixelkit можно отсюда, там же есть список внесенных изменений.

Pixelkit использует 9 контактов (c 1 по 9), а также 2 "джампера" - переключателя режимов работы. На рисунке ниже — соответствие контактов ARCAdaptor "терминам" Pixelkit.

Коммутация ARCAdaptor при работе в режиме "Pixelkit"

Коммутация ARCAdaptor при работе в режиме "Pixelkit"

После загрузки программы, подключения джойстика и выставления нужной конфигурации с помощью JP1 и JP2 устройство готово к работе. Для того, чтобы не портить "аутентичность" старинных геймпадов — можно, например приобрести разъемы DB9 и DB15 в магазине радиотоваров избежать вандализма по отношению к геймпадам.

Загрузить прошивку и список изменений можно отсюда, оригинальная прошивка, схема и печатная плата доступны для загрузки здесь.

4NES4SNES

Автор 4NES4SNES — Raphaël Assénat. Сайт проекта находится по этой ссылке. Благодаря 4SNES4NES можно подключить целых 4 джойстка к одному ARCAdaptor. Этот проект, в отличие от Pixelkit, не требует никаких доработок. Подключение очень простое, приведено ниже на рисунке.

Коммутация ARCAdaptor при работе в режие 4NES4SNES

Коммутация ARCAdaptor при работе в режие 4NES4SNES

Локальный архив проекта находится тут.

USBJoy

Проект позволяет подключить джойстики от Sony PlayStation 1. Особенно отрадно, что работают даже аналоговые "стики". Микропрограмма ("прошивка"), опять-таки не требует изменений. В качестве рекомендации — крайне желательно на контакт, требующий 3.5 вольта подавать именно 3.5 вольта, а не 5. Это можно сделать, соединив 2 диода последовательно, впрочем это видно на схеме. Хотя китайским джойстикам все равно (выяснилось в процессе тестирования, но не следует этим увлекаться).

Примечание: В оригинальном рисунке имеются ссылки на другие рисунки. Их можно найти в архиве по ссылке, указанной ниже.

Принципиальная схема подключения джойстика PSX к ATMega

Принципиальная схема подключения джойстика PSX к ATMega

Примечание: Приведен пример подключения одного джойстика. Второй подключается по аналогии, используя сигналы DAT2,CMD2, SEL2,CLK2.

Коммутация ARCAdaptor в режиме USBJoy

Коммутация ARCAdaptor в режиме USBJoy

Внимательно изучите порядок контактов на разъема джойстика Sony PlayStation!

Скачать оригинальный архив с прошивкой и схемой можно тут. Или воспользоваться зеркалом.

Прочие проекты

Практически любой проект для ATmega8, базирующийся на V-USB и использующий скорость 12 Mhz может быть либо сразу загружен в ARCAdaptor, либо перекомпилирован с минимальными изменениями. Без изменений работают проекты, отвечающие следующим условиям:

При желании можно даже заменить кварцевый резонатор на другую частоту (если требуется).

(*) Примечание: В случае, если бинарный файл прошивки превышает этот объём, проблему можно решить путём отключения загрузчика и освобождения отведённой под него памяти. Для загрузки таких прошивок понадобится программатор.

Для проверки размера прошивки используйте команду avr-size. Она поставляется в составе WinAVR (для Windows) и avr-утилит для Linux и MacOS X.

avr-size <имя_файла.hex>

Работа с Arduino IDE

ARCAdaptor можно использовать с Arduino IDE. Главное преимущество такого подхода — вам не требуется специальных знаний языка C/C++, для того, чтобы начать разработку собственных устройств! Да и загрузка собственных программ в устройство имеет более дружественный интерфейс, чем командная строка.

Перед началом работы нужно выполнить несколько простых действий по настройке Arduino IDE для его работы с ARCAdaptor.

Настройка Arduino IDE

Некоторые предварительные настройки:

(*) Примечание: Для операционных систем Linux и MacOS X пути отличаются, но принцип тот же.

Запуск первого скетча

Оригинальный Arduino, как правило, оснащен светодиодом-индикатором, подключенным к контакту "digital pin 13" (см. таблицу соответствия контактов). Этот индикатор часто используется в тестовых целях.

В ARCAdaptor никаких средств индикации не предусмотрено, но их можно сделать самостоятельно за пару минут.

Для этого потребуется:

Соедините анод (+) диода с ножкой резистора (обычная скрутка). Вставьте другую ножку резистора в гнездо X1-1, а катод (-) диода в X1-2. Стандартный индикатор для Arduino готов.

Примечание: Как правило, ножка "анода" более длинная, если, конечно вы не пользуетесь деталями бывшими в употреблении.

Выглядит вся конструкция приблизительно так:

Подключение светодиода к ARCAdaptor

Подключение светодиода к ARCAdaptor

Теперь можно переходить к прошивке "скетча".

Ограничения при работе с Arduino IDE

Помните, что контакты digital pin 2, digital pin 0 зарезервированы, а контакт digital pin 3 используется в качестве переключателя в режим программирования. Эти нюансы следует иметь ввиду при использовании ARCAdaptor в Arduino IDE. Другими словами - digital pin 2 и digital pin 0 не доступны в списке контактов, а digital pin 3 при его замыкании с сигналом "земля" после сброса переведет ARCAdaptor в режим программирования, и программа-скетч может не запуститься.

Также, размер скетча не должен превышать 6144 байт — это ограничение и так прописано в конфигурационном файла, созданном при настройке Arduino IDE, но в любом случае нужно об этом помнить.

Cоответствие контактов ARCAdaptor с ATmega8 и Arduino

Контакт ARCAdaptor Контакт Arduino
X1
1 digital pin 13
3 digital pin 12
5 analog input 0
7 analog input 1
9 analog input 2
11 analog input 3
13 analog input 4
15 analog input 5
X2
1 digital pin 7
3 digital pin 4
5 digital pin 8
7 digital pin 6
9 digital pin 5
11 digital pin 9 (PWM)
13 digital pin 10 (PWM)
15 digital pin 11 (PWM)
X3
1 digital pin 3
3 digital pin 1 (TX)
5 reset

Использование в качестве отладочной платы

Плата спроектирована таким образом, что контакты X1, X2, X3 по шагу и расположению совпадают с расположением контактов т.н. "слепыша" — макетной платы.

Установленная макетная плата для ARCAdaptor

Установленная макетная плата для ARCAdaptor

Это дает простор для проектирования собственных устройств, тем более что для загрузки микропрограмм ("прошивок") в общем случае не требуется программатор.

Изготовить плату расширения можно буквально за несколько минут.

Детали

Потребуется обычный штыревой разъем с шагом 2.54 мм, а также подходящий по размеру кусок макетной платы с шагом, опять-таки 2.54 мм.

Начальная установка макетной платы на ARCAdaptor

Начальная установка макетной платы на ARCAdaptor

Сборка

Вставьте контакты в разъемы и наденьте сверху макетную плату. Запаяйте контакты на стороне макетной платы.

Фиксация контактов макетной платы для ARCAdaptor

Фиксация контактов макетной платы для ARCAdaptor

Снимите макетную плату с запаянным разъемами.

Вид собранной макетной платы для ARCAdaptor

Вид собранной макетной платы для ARCAdaptor

Самостоятельная сборка ARCAdaptor

Схема электрическая принципиальная

Схема выполнена в редакторе Eagle CAD.

Схема ARCAdaptor

Схема ARCAdaptor

Скачать файл формата .sch можно здесь.

Монтажная схема

Ниже приведено расположение элементов на плате.

Монтажная схема ARCAdaptor

Монтажная схема ARCAdaptor

Перечень деталей

Ниже представлен список деталей для сборки проекта самостоятельно.

Наименование Обозначение Номинал/название Типоразмер
Конденсатор C1 22p 0805
Конденсатор C2 22p 0805
Конденсатор C3 100n 0805
Стабилитрон D1 3.6v SOT23
Стабилитрон D2 3.6v SOT23
Микросхема IC1 Atmel ATmega8-AI TQFP32-08
Резистор R1 68 0805
Резистор R2 68 0805
Резистор R3 1K5 0805
Кнопка тактовая S1 SMD
Разъем USB USB1 USB-B розетка На плату
Разъем X1 MA08-2 Двухрядный,шаг 2.54 мм
Разъем X2 MA08-2 Двухрядный,шаг 2.54 мм
Разъем X3 MA05-2 Двухрядный,шаг 2.54 мм
Кварц 12 Mhz

Рекомендации по сборке

Плата ARCAdaptor рассчитана на использование SMD-деталей. Пайка SMD в домашних условиях — процесс требующий некоторой сноровки.

Для сборки в домашних условиях понадобятся:

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

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

Далее пропаяйте несколько ножек с каждой стороны. Когда микросхема будет закреплена, можно убрать пинцет и продолжить пайку.

Если возникло "залипание" припоя между ножками — не паникуйте. Просто капните некоторое количество жидкого флюса и прогрейте это место паяльником. Капля припоя рассосется.

Остальные мелкие детали запаиваются аналогично.

После этого можно устанавливать крупные разъемы и запаивать их. При желании разъемы X1, X2, X3 можно заменить на "вилку" или не запаивать вообще.

После этого промойте плату в спирте и высушите — не используйте батарею отопления или фен. Если хотите ускорить процесс — положите плату на кинескопный телевизор (тепло от кинескопа высушит плату быстрее), а лучше просто дайте высохнуть самостоятельно. После этого старой зубной щеткой очистите плату от остатков флюса, не удалённых спиртом.

Если что-то пошло не так

Установка загрузчика (bootloader) и микропрограммы ("прошивки") по умолчанию

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

Расположение контактов для программирования показано на рисунке ниже.

Контакты ARCAdaptor для подключения программатора

Контакты ARCAdaptor для подключения программатора

Пример установки загрузчика с помощью программы avrdude и программатора usbtiny.

avrdude -c usbtiny -p atmega8 -U flash:w:main.hex:i

avrdude -c usbtiny -p atmega8 -U hfuse:w:0xc0:m -U lfuse:w:0x9f:m

avrdude -c usbtiny -p atmega8 -U lock:w:0x0f:m

Значения fuse-битов и lock-битов

Лок-биты требуются для защиты загрузчика от затирания. Для разблокировки загрузчика используйте инструкцию из соответствующего раздела.

Пример установки основной дефолтной микропрограммы ("прошивки") с помощью avrdude и загрузчика без использования программатора

avrdude -p m8 -c usbasp -D -U flash:w:<имя_файла.hex>

avrdude -p m8 -c usbasp -D -U eeprom:w:<имя_файла.eep>

Обратите внимание, что при загрузке файла-программы fuse-биты не устанавливаются, так как используются текущие от bootloader.

Ссылки

Исходные тексты и сборки загрузчика и дефолтной микропрограммы ("прошивки")

Отказ от ответственности

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