Как вы все знаете, я занялся электроникой и AVR процессорами. А раз так, то надо эти процессоры чем то прошивать. Т.е. нужен программатор. Спасибо компании Atmel за AVR вообще и ISP (технология внутрисхемного последовательного программирования) в частности. Она позволяет зашивать процы с помощью простого девайса, который можно собрать дома на коленке. Но я решил пойти чуть дальше....
И сделать не только программатор, но и добавить немного удобства в его эксплуатацию.
Итак, сначала определяемся со схемой. Их в инете лежит великое множество. Начиная от "5 проводков" из LPT порта (велик шанс спалить порт) и заканчивая USB девайсами (дорого и муторно).
Я решил использовать семейство аналогов Атмеловского STK200+. Все они строятся на микросхеме 74HC244 (шинный формирователь) и отличаются только подключением этой самой микросхемы. Выбор пал на эту схему. Почему? Да потому что в ней 3 светодиода вместо 2х
Хочется красивый корпус, ZIF панельку, внешнее питание, унифицированный разъем ISP выхода и т.д.
Разводим 2 платы (сам программатор и выход на панельку и разъем) 3 вечера паяем, собираем, обрабатываем дремелем корпус, делаем гравировку, заполняем ее акриловой краской, ставим разъем внешнего питания, для подключения к компу используем принтерный кабель, который перепаиваем под свои нужды. Вообщем вот что получилось.
Теперь самое долгожданное и в тоже время страшное. Пробный запуск.
Вставляем проц в панельку, кнопкой включаем внешнее питание, в своем софте (я использую codevisionAVR) нажимаем
Через секунду появляется
ААААААААААААА! ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ! Оно работает!!!! Можно пойти покурить.
Дальше ОЧЕНЬ ВАЖНО! Нажимаем Read ---> Fuse Bits. В появившемся окошке нажимаем Yes, соглашаясь перенести считаные фьюзы в окно программы. Меняем то что надо (НАДО БЫТЬ АБСОЛЮТНО УВЕРЕННЫМ В ТОМ ЧТО МЕНЯЕМ) Т.к. неправильно выставив, можно "убить" проц так, что потом по ISP его не реанимировать. ТОлько через паралельный программатор или вообще никак.
Открываем файл прошивки в этой софтине и нажимаем кнопку Program all. Сначала память проца стирается
Потом пишется
И проверяется. Все. Стоит отметить что вопреки мнениям в инете, этот программатор довольно шустрый. Залил 2кб прошивки за 4-5сек. (это только заливка, без верификации хотя она еще быстрее)
Если закончилось без ошибок - мы победили. Ура! Можно еще раз покурить