Содержание:
Соберите схему на базе ATmega8 или ATmega88. Потребуется кварц 12 МГц, два конденсатора 22 пФ, резистор 2.2 кОм и стабилизатор напряжения 3.3 В. Пайку выполняйте аккуратно – перегретые дорожки часто становятся причиной неработоспособности.
Загрузите последнюю версию прошивочного софта с официального репозитория. Для Windows используйте Zadig, чтобы заменить драйверы libusb. В Linux права доступа настраиваются через udev – добавьте правило с идентификатором производителя 16c0:05dc.
Подключите целевой чип к разъему IDC-10. Проверьте распиновку: SCK на 7-й контакт, RESET на 4-й. Если устройство не определяется, уменьшите скорость обмена до 125 кГц флагом -B в avrdude.
Для записи загрузчика в новые экземпляры ATTiny13 задайте фьюзы: lfuse=0x75, hfuse=0xFF. Ошибка «verification error» часто возникает из-за недостаточного питания – подавайте 5 В напрямую на VCC, минуя стабилизатор.
Подключение и настройка устройства
Подсоедините плату к компьютеру через кабель с разъёмом USB 2.0. Убедитесь, что драйверы автоматически установились – если нет, скачайте их с официального репозитория AVRDUDE.
Для работы с AVR-чипами (ATmega, ATtiny) используйте AVRDUDESS или Khazama AVR Programmer. В настройках укажите:
- Тип подключения – ISP;
- Скорость обмена – 8 МГц для стабильной записи;
- Формат файла – Intel HEX.
Перед записью данных проверьте соединение: в терминале выполните команду avrdude -c usbasp -p m328p
. Если появится ошибка «Device not responding», переподключите контакты SCK, MOSI, MISO.
Для защиты от сбоев при записи отключите все внешние нагрузки на целевой схеме. Если используется тактирование от внутреннего генератора, выставьте соответствующие фьюзы.
Сборка устройства для записи кода на AVR
Необходимые компоненты
- Плата с ATmega8 или ATmega88 (DIP-корпус проще для монтажа)
- Кварцевый резонатор 12 МГц
- Конденсаторы: 2 шт. 22 пФ, 1 шт. 10 мкФ
- Резисторы: 2 шт. 68 Ом, 1 шт. 2.2 кОм
- Стабилизатор напряжения 3.3 В (LD1117V33)
- Разъём USB тип B
- Штырьковые контакты для подключения к целевой плате
Порядок сборки
- Подключите USB-разъём: D+ к PD2, D- к PD3 через резисторы 68 Ом
- Установите стабилизатор 3.3 В между VCC и GND
- Добавьте конденсатор 10 мкФ между VCC и GND для фильтрации
- Припаяйте штырьки для подключения к целевой плате: SCK, MOSI, MISO, RESET, GND, VCC
После сборки проверьте мультиметром:
- Отсутствие короткого замыкания между линиями питания
- Напряжение 5 В на входе стабилизатора и 3.3 В на выходе
Настройка программного обеспечения
Скачайте последнюю версию avrdude с официального сайта или репозитория вашей ОС. Для Windows используйте сборку с поддержкой libusb, например, avrdude-v6.3-mingw32.zip.
Установка драйверов
Подключите устройство к компьютеру. В диспетчере устройств найдите неизвестное оборудование с идентификатором 16C0:05DC. Укажите путь к драйверам из архива USBasp-win-driver.zip или установите автоматически через Zadig.
Проверьте корректность подключения командой:
avrdude -c usbasp -p m8
Конфигурация среды
В Arduino IDE перейдите в Файл → Настройки. В поле «Дополнительные ссылки» добавьте URL:
https://raw.githubusercontent.com/SpenceKonde/ATTinyCore/master/package_spencekonde_index.json
В разделе Платы выберите ATtiny25/45/85, укажите частоту 1 МГц (внутренний генератор) и пункт USBasp в качестве инструмента.
Для работы с PlatformIO добавьте в platformio.ini:
[env:attiny85] platform = atmelavr board = attiny85 upload_protocol = usbasp
Сборка устройства: пошаговая инструкция
Подключение компонентов
Проверка и отладка
После сборки подключите устройство к компьютеру. Если драйвер не установился автоматически, загрузите его с официального сайта производителя чипа. Проверьте напряжение на выходе: должно быть 5 В (±0,25 В). Для теста загрузите тестовый скетч через avrdude с параметром -c usbasp.