Делаем программатор STK200/300

В настоящее время микроконтроллеры AVR фирмы ATMEL получили весьма широкое распространение. Это обусловлено небольшой стоимостью, развитой периферией, доступностью и удобством средств разработки. Несомненным достоинством процессоров этой серии является возможность внутрисхемного программирования с использованием интерфейса SPI.
Для начала работы с этими микроконтроллерами необходимо обзавестись какими либо средствами осуществляющими внутрисхемное программирование. Существует достаточно большое количество различных конструкций программаторов, но на первоначальном этапе вполне подойдет адаптер STK200/300. В данной статье я попытаюсь подробно описать процесс сборки этого адаптера. Причем настоятельно рекомендую повторить конструкцию именно так, как описано, а не на куске макетной платы. Рекомендация вытекает из шести летнего использования адаптера собранного на чем попало.

Адаптер получил свое название от комплектующихся им отладочных плат фирмы ATMEL для быстрого начала работы с микроконтроллерами AT90S8515 и ATmega103 соответственно. На самом деле приведенная схема соответствует одновременно обоим адаптерам, в ней присутствуют перемычки для определения наличия как адаптера STK200 (выводы 2-12 разъема X1), так и STK300 (выводы 3-11).



Для изготовления адаптера нам потребуется разъем DB25М с пластиковым корпусом, десятижильный плоский кабель длиной около 2 метров, разъем IDC-10, стеклотекстолит, детали по схеме и немного терпения.

Делаем программатор STK200/300


Все детали монтируются на односторонней печатной плате. Разводка платы осуществлена не на 100%, поэтому часть проводников выполнена навесным монтажом. Такое решение было принято в связи с тем, что изготовление двухсторонней платы более трудоемко и в данной ситуации не имеет особого смысла. Плата изготавливается по всем известной лазерно-утюжной технологии. Коротко напомню ее основные шаги.
На глянцевой бумаге с помощью лазерного принтера печатается чертеж печатной платы. В качестве бумаги подойдут листы из рекламного буклета или чего то подобного. Я использовал рекламную книгу о средствах автоматизации фирмы Siemens. Поверхность медной фольги текстолита зачищается мелкой наждачной бумагой и протирается ватным тампоном, при этом надо проследить что бы на поверхности не осталось волокон ваты. После чего следует приглаживание рисунка утюгом к фольге. Вот здесь добавлю свои замечания по этой важной процедуре. Для увеличения качества изготавливаемых плат и снижения количества брака, а также облегчения работы я использую не хитрое приспособление показанное на рисунке. Пояснять конструкцию думаю нет необходимости.



Заготовка печатной платы вместе с распечатанным чертежом проводников зажимается между двумя металлическими пластинами через дополнительные прокладки из мягкого термостойкого материала ( я использую ткань сложенную в несколько слоев). На получившийся пакет ставим утюг и включаем в сеть. Ждем минут пять и снимаем утюг. После чего даем пакету остыть. Вынимаем заготовку платы с уже “мертво” прилипшей распечаткой чертежа и опускаем в теплую воду для дальнейшего удаления бумаги. Удалив бумагу и протравив фольгу у вас должно получиться нечто подобное тому, что показано на рисунке.



Далее необходимо удалить тонер. Я обычно для этого использую ацетон. Берем ватный тампон, смачиваем ацетоном и стираем тонер. Результат показан на рисунке. В принципе можно остановиться на этом, но мы будем лудить.



Для лужения используется следующий метод. Берем небольшую кастрюльку, наливаем немного воды, растворяем в воде лимонную кислоту ( сильно много сыпать не надо, так что бы была кислой) и кипятим. Когда вода закипит опускаем печатную плату, если лимонной кислоты было достаточно, то медь немного изменит цвет. Бросаем кусочек сплава Розе и ждем пока он расплавиться, после чего держа пинцетом ватный тампон равномерно наносим сплав по поверхности платы. Эта операция естественно проводится в кипящей воде. Должно получиться как на рисунке.



Далее вооружившись ножницами по металлу, обрезаем лишнее по контуру и дорабатываем напильником.



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



Далее припаиваются светодиоды и дорабатывается верхняя крышка разъема. Суть доработки заключается в сверлении двух отверстий под светодиоды. Как должно получиться можно посмотреть на рисунке.



Поле этого можно припаивать микросхему 74HC244. С помощью многожильного или одножильного монтажного провода не большого сечения ( я использовал провод во фторопластовой изоляции) припаиваем перемычки в соответствии с принципиальной схемой. Не забываем припаять перемычку с любого контакта из диапазона 18-25 на корпус разъема и с корпуса на общий проводник печатной платы, но уже со стороны монтажа. Для пояснения и наглядности привожу рисунок того, что должно получиться.



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



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



Установив собранную плату в верхнюю часть корпуса разъема проверяем не забыли ли припаять перемычку с контакта разъема на его корпус ( о том как это сделать говорилось выше).



Окончательно собираем корпус разъема. Распечатываем этикетку, обклеиваем ее с лицевой стороны скотчем и закрепляем на корпусе в предусмотренном для этого углублении на нем.



Ну вот и все. Адаптер для внутрисхемного программирования готов! Что получилось у меня показано на рисунке. У вас должно получиться то же самое, если вы следовали моим указания.

Можно проводить испытания. Подключаем к макетной плате с установленным микроконтроллером, запускаем программу для внутрисхемной прошивки с поддержкой STK200/300 ( например CodeVisionAVR Programmer) и наслаждаемся.



В заключение хотелось сказать пару слов о длине кабеля. В большинстве источников говорится что длина кабеля не должна превышать нескольких десятков сантиметров для обеспечения надежной работы адаптера. Однако практика использования адаптера с двух метровым кабелем, изготовленного по выше описанной технологии, не выявила никаких проблем. Кабель такой длины позволяет удобно располагать программируемое устройство на рабочем столе и отказаться от использования удлинителя параллельного порта компьютера. В последствии приходилось общаться с людьми утверждавшими что успешно использовали подобную конструкцию с кабелем длиной около десяти метров для внутрисхемного программирования по интерфейсу SPI.
Надеюсь, что мои рекомендации окажутся полезными для тех кто решится начать свою работу с микроконтроллерами AVR со сборки адаптера STK200/300.

Скачать печатную плату в формате *.lay У вас нет доступа к скачиванию файлов с нашего сервера

Кунавин Михаил
г. Волгоград
mygrob@mail.ru

Дополнение 13.03.2012

Данная схема была собрана лабораторией RadioMaster.com.ua и вот пару слов о ней:

Появилась необходимость в программировании AVR контроллеров, для чего и был собран данный программатор.
Все было собрано точь в точь как указывается в статье, только были внесены некоторые доработки:
на 10 и 20 ножки контроллера повесили конденсатор 0,1мф (его видно на фотках, весит над микрухой) подалось внешнее питание с USB на VCC и GND, рекомендую перемычки делать как можно короче, и самое важное проверьте перед включением программатор на наличие ошибок и ляпов припоя, ведь ЛПТ порт спалить очень просто. Как делал я: уже на готовую залуженую плату был нанесен флюс и выставленным все детали кроме микросхемы, с помощью паяльной станции и дуйки они красиво стали каждый на свое место, следующим шагом было припаивание микросхемы маломощным паяльником (не перепутайте начало с концом), далее были поставлены перемычки и припаяны провода. Рекомендую программатор собирать по электрической принципиальной схеме а не по картинкам, так вы будете точно знать куда какой провод и будет меньше вероятность совершить ошибку. Светодиоды поставил СМД, раз все детали СМД, пусть и светики будут такие же. Светятся красиво внутри корпуса. Долго не мог понять почему не работает программатор, оказывается что с некоторыми прогами он не совместим, к примеру с PONYPROG2000 заработал сразу после настройки программы, с uniprof так и не заработал , хотя на настройку пинов и потратил уйму времени и даже их настроил как следует, но микроконтроллер увиден так и не был, хотя при подсоединении программатора Громова программа сразу увидела Atmega 8 и стала сотрудничать smile

Вот собственно что получилось:






10 комментариев

master-uri 14 мая 2010 00:20
Моя версия это программатора с использованием микросхемы в DIP корпусе+адаптер:
http://narod.ru/disk/20721054000/STK200-300.rar.html
gritsoon 3 сентября 2011 23:03
Сделал все по инструкции, получился клон :) Работает отлично!


Inffino 31 января 2012 15:14
дайте плиз схемку макетной платы куда устанавливается программируемый микроконтроллер и желательно вид с обоих сторон печатной макетной платы
shamasik 13 марта 2012 13:10
Кто какой прогой пользуется с этим программатором, и какие настройки LPT в BIOS, а то уже устал бороться с ним, то биос не правильно настроен, то прога посылает куда подальше так как с ним не дружит. Программатор собран правильно, получился как на фотках.
Спасибо.(просьба писать в личку, там точно увижу)

Уже разобрался, получилось атмегу 8А прошить, мда=)
--------------------
- Век живи - век учись, дураком подохнешь...
- Отложи на послезавтра то что можешь сделать сегодня, и тогда у тебя появятся два свободных дня!
SerpSB 13 марта 2012 22:24
Когда-то собрал такой вариант:



Схема и плата в архиве:
http://files.radiomaster.com.ua/05m84wpqu6u2/STK-200_300.zip.html
Yurik_LP 13 марта 2012 23:04
поделитесь схемой макетной платы куда устанавливается микроконтроллер для программирования!!! ПЛИЗ!!!
shamasik 13 марта 2012 23:07
SerpSB,
Главное делать по схеме и по меньше должны быть дорожки тогда меньше помех наводок, затухания сигнала. Думал тоже сделать в DIP корпусе на монтажной плате, но любопытство "поместится ли это все в корпус LPT" взяло свое, да и давно хотел попрактиковаться в пайке СМД компонентов, довольно таки не плохо для первого раза получилось.
С каким софтом работаете, какие контроллеры прошивали???
--------------------
- Век живи - век учись, дураком подохнешь...
- Отложи на послезавтра то что можешь сделать сегодня, и тогда у тебя появятся два свободных дня!
SerpSB 14 марта 2012 09:13
Прошивал этим программатором ATmega8A и ATTiny2313A с помощью CodeVisionAVR 2.05.

Для Yurik_LP:
Платы расширения для программирования МК видел здесь
http://www.radiokot.ru/lab/controller/29/
скачать можно здесь
http://www.radiokot.ru/lab/controller/29/03.zip
Yurik_LP 14 марта 2012 19:14
SerpSB, спасибо тебе большое!!!
a_komolow 21 августа 2012 21:19
Дёшево и сердито! Только LPT порт уже не везде есть
Ваше имя: *
Ваш e-mail: *
Войти через
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
Введите два слова, показанных на изображении:
© 2010-2017 Все права соблюдены.