Опыт работы с программатором STK200
- Подробности
- Категория: Для микроконтролеров
- Опубликовано: 01.04.2017 19:12
- Просмотров: 2684
А.В. Кравченко, г. Киев РА 4'2006
Разрабатывая микроконтроллерные устройства, автор часто сталкивался с проблемой программирования микроконтроллеров (МК). Очень часто программаторы имеют свои собственные программы управления. Где их взять, и сколько драгоценного времени и денег необходимо потратить на сборку программатора? Современные МК входят в целые семейства, они настолько разнообразны и функционально выражены, что возникает необходимость в выборе специализированных программаторов. На отечественном рынке хорошо обосновались (очень дешевые) МК Р/С фирмы Microchip и AT, tiny, Mega фирмы Atmel.
Автор неоднократно работал с МК Siemens, Philips, Renesas, Tochiba и др. [1]. К сожалению, эти фирмы не так заботятся о пользователях, как Microchip и Atmel.
Проблема с программаторами стоит остро из-за их бурного развития. Для радиолюбителей каждая копейка дорога, а МК, предлагаемые фирмами и описанные на страницах журнала,
абсолютно разные. Данный программатор представляет собой дешевый вариант программирования МК. Для семейства tiny фирмы Atmel автор нашел выход прочитав книгу [2] и собрав программатор, согласно рис.1 (себестоимость программатора около 3 дол.) за 40мин.Этот программатор повторяет функции
хорошо известного программатора STK200 фирмы Atmel. Фирма на сегодняшний день выпускает и поддерживает только версии STK500, но он слишком дорого стоит. К программатору STK200 разработана программа в режиме DOS. Программа достаточно проста и работает надежно, хотя имеет некоторые особенности. Ее можно взять с сайта www.ln.com.ua или приобрести книгу автора с оригинальным диском (2)
Надо сказать, что этот программатор не является собственной разработкой автора, статья написана как руководство к пользованию. Из опыта работы с программатором автор немного изменил оригинальную схему, а также выявил недостатки программы. К npoграмме привыкнуть очень тяжело, - это плата за простоту. Основной недостаток - работа программы только в MS DOS или, в лучшем случае. Windows 98 в режиме DOS. Второй недостаток - это ввод функции программирования вручную. Третьим недостатком является плохая организация перезаписи МК. Для перезаписи лучше использовать файлы .bat, указанные в книге [2]. При наличии всех ключей перезапись идет с ошибками, поэтому для перезаписи необходимо стереть МК, затем проверить, после сообщения об ошибке записать заново. Привыкнув к специфике записи, перезаписи, радиолюбители получат хороший опыт по работе с разными программаторами.
Детали программатора: микросхема IC1 - 74НС244 (или аналог), R1 -7кОм,R2-910 Ом, С1 -47мкФх16 В, С2-0,1 мкФх!6 В (рекомендуется установить блокировочный конденсатор по питанию ближе к микросхеме), D1 -КД522, SV1 -любой для питания бытовой аппаратуры, X1 - IDC10 (при желании плоский разъем), Х2 - DB25. Монтажная плата для сборки показана на рис.2. Плату можно собрать навесным монтажом и вставить в корпус разъема DB25 (фото 1). Для этого плату необходимо вырезать строго по внутренним размерам разъема и вставить между выводами разъема DB25, монтаж вести навесным способом (фото 1 и фото 2). Разъем питания устанавливают на корпус программатора. Автор использовал два разъема на выходе из программатора: один стандартный, согласно оригинальной плате STK200 фирмы Atmel, разводка табл.1, второй нестандартный Elka22, табл.2, фото 3. От программатора с платы монтажа лучше пустить шлейф небольшой длины (не более 15 см) для подключения непосредственно к программируемой плате. Можно сделать отдельно плату для программирования любого МК, при этом использовать только программатор STK200 (фото 4).
Со временем на этой отдельной плате для прошивки МК можно реализовать на панельках любые варианты программирования.
После сборки и проверки программатора STK200 необходимо через шлейф подключить программатор к LPT-порту компьютера и подать питание от внешнего источника. Выйти в режим DOS (автор использовал программу Volkov commander), выбрать путь к .ехе файлу и запустить файл, дописать название записываемого МК, название LPT-порта, название программатора, ключи операции программы, байт в FLASH-коде, название файла прошивки. Если все введено правильно, программа начинает работать сразу, и в течение нескольких секунд запишет данные в МК. Если есть ошибки, необходимо их расшифровать, проверить правильность набранной фразы и исправить. Обратите внимание, что файл .ехе и файл прошивки должны находиться в одной папке (и на диске С).
Для выбора типа программатора
устанавливают ключи:
-ab работа через Altera ByteBlaster;
-as работа через адаптер Atmel STK*00 (рассматриваемый
программатор);
-аа автоматический выбор ByteBIaster/STK;
-az пытаться переводить выходы LPT в Z-состояние для
"отключения" программатора от схемы ("byte-blaster для ленивых", работает в "FBPRG" режиме);
-аr инверсия полярности сброса (например, для подачи его через резистор в базу присутствующего в схеме транзистора);
- ai# установить время неактивного Reset после стирания равным
-# mS. Необходимо устанавливать большим времени задержки снятия сброса присутствующим в схеме супервизором;
-ар подавать питание чипа через свободные выходы данных LPT (несовместимо с -ab, -as).
Для управления программой существуют ключи. Ключи записываются после фразы eal.exe +tiny12 -p378 -as. Автор предлагает порядок записи прошитой микросхемы:
-е стереть содержимое микросхемы;
-v проверить но совпадение с файлом;
-w+ записать файл в микросхему. Остальные ключи имеют функции:
-b проверить МК на наличие данных в памяти;
-r прочитать данные из чипа в файл;
-I установить уровень защиты (при разработке лучше не использовать);
-f список fuses для тех чипов, в которых они "шьются" по ISP (используется при перенастройке МК);
-с как байт в FLASH коде.
С остальными ключами можно ознакомиться, прочитав книгу [2]. Программатор можно успешно применять для внутрисхемного
программирования, но при этом необходимо отслеживать выводы подключения программатора к программируемой схеме. В программируемой схеме не должно быть перемычек или выключателей на ноль, а также активных элементов, подключенных к питанию или "земле". В случае коротких замыканий программатор выйдет из строя.
Литература
1. Зобин Ю., Тамазов А. Микроконтроллеры популярных семейств/'/Радио. - 2000. - №6-8.
2. Голубцов М.С., Кириченкова А.В. Микроконтроллеры AVR: от простого к сложному. - 2-е изд. - М: Салон-Пресс, 2004.