USBTinyISP или опять программатор

2013-03-10

Схема программатора

Внутрисхемный программатор для микросхем AVR - вещь в радиовредительском хозяйстве необходимая. В интернетах полно схем - от просто набора проводков, цепляющихся на LPT-порт, до сложных устройств, поддерживающих High Voltage Programming, на случай, если контроллер ушел в состояние, не совместимое с жизнью (ошибка в fuses, прочее).Приведенная выше схема датируется 2010 годом, в нее внесены некоторые изменения (как и в прошивку).

Оригинал схемы находится тут

К несчастью, в опубликованной документации найдены некоторые ошибки - а именно - сигналы MOSI и MISO перепутаны местами, а также к 5 вольтам подтянута линия D+, а не D-. В этом случае устройство будет пытаться определиться, как high-speed, что не соответствует действительности.

Также в схему введены дополнительные токоограничивающие резисторы на 1К на сигнальные линии. В крайнем случае их можно запросто закоротить.

В прошивку же внесены следующие изменения - стек V-USB заменен на “последний с сайта”. Это должно добавить стабильности в работе.

Проект перенесен на GITHUB

Настройки fuse bits

  • lfuse:0xe1
  • hfuse:0x5d
  • efuse:0xff

Внимание! После установки fuse-битов контроллер ATtiny45 перестанет реагировать на reset, и его больше нельзя будет перепрошить с помощью ISP-программатора. Так что лучше все десять раз проверить в процессе.

Worklog

Вначале печатаем “зеркальную” схему из Eagle на лазерном принтере. Причем чем старее принтер - тем лучше. Новые очень экономно расходуют тонер, что не способствует качественным “переводным картинкам”. В качестве бумаги используем тонкую фотобумагу Lomond.

Распечатка для ЛУТ

Теперь переводим с помощью утюга рисунок на медь.

Рисунок переведён на медь

Время готовить раствор для травления. Недавно на radiokot.ru публиковался состав для травления - доступный, простой и безопасный для труб:

  • 100 грамм 3% раствора перекиси водорода (аптека)
  • 30 грамм лимонной кислоты (бакалейный магазин)
  • Соль нужно добавлять до тех пор, пока она не перестанет растворяться

Добавить к этому нечего, разве что перекись можно заменить гидроперитом в таблетках (6 штук на 100 грамм воды) а сам раствор дает наилучшие результаты при небольшом нагреве. Можно использовать водяную баню, или, как на картинке ниже - обогреватель для кружки. Помимо этого при травлении использовался еще аквариумный компрессор, чтобы раствор не взбалтывать постоянно.

Травление платы в домашних условиях

Травление идет какое-то очень небольшое время и вот результат.

Протравленная плата

Остальное - дело техники.

Собранны программатор

Проверям.

1
2
3
4
5
$ avrdude -p m8 -c usbtiny avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9307
avrdude: safemode: Fuses OK
avrdude done. Thank you.

Вроде работает. К недостаткам можно отнести сравнительно медленную скорость работы, но по соотношению цена-качество - пока что равных ему нет.


В массы

В трубу