Размер основной платы 76x76мм, а платы коммутации 95x80мм. Они изготовлены из одностороннего фольгированного стеклотекстолита и оптимизированы для метода «утюжной» технологии. Все резисторы и неполярные конденсаторы в SMD корпусах, микросхемы – в DIP. В качестве DD3 можно использовать как устаревший AT90S2313, так и новый ATtiny2313. Причем первый даже более предпочтителен по причинам, которые будут рассмотрены ниже. В качестве DD2 очевидно можно использовать не только ATmega8535, но и AT90S8535, правда такой вариант не тестировался.
Программатор выполнен в корпусе, спаяном из фольгированного гетинакса. Плата коммутации является верхней крышкой, в ней сделаны по месту не показанные на чертеже отверстия для SB1 и HL1-HL3. Разъем СШ-7 для внутрисхемного программирования размещается на боковой стенке. Кабель связи с компьютером может иметь длину 1…1,5м. Питание осуществляется от любого сетевого адаптера с напряжением 9…15в и током до 100ма.
После сборки следует внимательно проверить правильность монтажа, отсутствие короткозамкнутых дорожек и непропаяных соединений. После этого нужно проверить наличие напряжения питания 5в на выходе DA1. Если все в порядке, можно приступать к «оживлению» устройства. Это достаточно серьезная процедура и спешить тут не следует.
Контроллер DD3 перед установкой в схему необходимо запрограммировать. Его прошивка разработана на основе Appnote AVR910: In-System Programming [5]. Первая версия этого документа датирована 1997 г. Первоначально использовался контроллер типа AT90S1200, в дальнейшем, не без активного участием радиолюбителей программа была адаптирована для AT90S2313, а ее возможности расширены [6]. В предлагаемом устройстве для записи в контроллер DD3 следует использовать доработанный автором файл прошивки isp_2313.hex из архива isp.zip.. В этом же архиве находится исходный текст этого файла isp_2313.asm и дистрибутивы печатных плат в формате Sprint-Layout 4.0.
Получается, что для того, чтобы сделать этот программатор, необходим другой программатор. Но он нужен только один раз и для этой цели можно воспользоваться упоминавшимся ранее PonyProg или обратиться за помощью к друзьям. Как уже говорилось, с одинаковым успехом можно использовать как AT90S2313, так и ATtiny 2313. Прошивка будет работать с любым из них. Однако, если на Fuse биты первого можно не обращать внимания, используя их значения по умолчанию, то для ATtiny2313 Fuse биты следует установить следующим образом: SPMEN=1, DWEN=1, EESAVE=1, SPIEN=0, WDTON=1, BODLEVEL2…0=111, RSTDISBL=1, CKDIV8=1, CKOUT=1, SUT1…0=11, CKSEL3…0=1101 (0 - запрограммирован, 1 - нет). К сожалению, фирма Atmel не предусмотрела возможность включать состояние этих бит в файл прошивки, а их неправильная установка может привести к полной неработоспособности устройства. Поэтому, в случае возникновения сомнений, следует руководствоваться фирменной документацией на контроллер ATtiny2313, а тем, у кого нет опыта в работе с программаторами предпочтительно поискать старый AT90S2313.
Установка Fuse бит ATmega8535 по умолчанию также не подходит, и, если есть возможность, их желательно предварительно запрограммировать следующим образом: S8515C=1, WDTON=1, SPIEN=0, CKOPT=0, EESAVE=1, BOOTSZ1…0=00, BOOTRST=1, BODLEVEL=1, BODEN=1, SUT1…0=11, CKSEL3…0=1111. Запрограммировать их можно будет и непосредственно в описываемом программаторе, но лучше использовать контроллер с предварительно установленными Fuse битами. Дело в том, что по умолчанию в качестве тактового установлен внутренний RC генератор на 1 мгц. Соответственно на выводе XTAL2 никакого сигнала не будет, значит и на DD3 тактовая частота подаваться не будет. А это приведет к полной неработоспособности устройства.
Выходов из этой ситуации может быть несколько. Первый, как уже указывалось, использовать контроллер с предварительно запрограммированными Fuse битами. Если это невозможно, придется запаять временную перемычку между выводом XTAL1(13) DD2 и XTAL2(4) DD3. Теперь кварц окажется подключенным и к DD3. Все будет работать, но… только до того момента, пока Fuse биты не переконфигурируют тактовый генератор DD2 на работу с кварцем. После этого временную перемычку нужно удалить, разумеется предварительно отключив питание. Если при установке бит была допущена ошибка, повторно этот способ может и не сработать. Но не стоит отчаиваться. В качестве крайней меры можно порекомендовать временно разорвать соединение между выводами XTAL2(12) DD2 и XTAL1(5) DD3 и подключить к DD3 второй кварц и 2 конденсатора аналогично ZQ1 и C1, C2. Или подать на вывод XTAL1 DD3 сигнал от внешнего источника необходимой частоты и амплитуды.
Теперь наступило время подключить программатор к COM порту и подать на него питание при НАЖАТОЙ кнопке SB1. Ни один из светодиодов не должен светиться. После этого нужно запустить AVR Studio. Желательно использовать версию не ниже 4.09. Все дальнейшие пояснения будут относиться к версии 4.12. После запуска в меню Tools надо выбрать AVR Prog.
Если все сделано правильно, через несколько секунд на экране появится окно, показанное ниже на рисунке слева. Нажатие на кнопку «Advanced» (в правом нижнем углу) приведет к переходу на следующее окно. Если Fuse биты были заранее запрограммированы, то выглядеть оно будет так, как показано на рисунке справа.
Комментарии 8