Шар со световыми эффектами для новогодней елки
Верхушка новогодней елки
Счетчик Событий
Музыкальный звонок
Индикатор уровня звукового сигнала
Электромассажер
Повышающий преобразователь 3 В - 5 В на микроконтроллере
Шаговый двигатель для транспортера
Бытовой цифровой термометр
Автомат ночного освещения

По материалам

Скачать книгу
Современные микроконтроллеры образуют целые семейства, они настолько разнообразны и функционально насыщены, что возникает не­обходимость в выборе специализированных программаторов. На нашем рынке хорошо обосновались недорогие микроконтроллеры PIC от ком­пании Microchip, а также AVR (серии AT, Tiny и Mega) от компании Atmel. Хотя автор неоднократно работал с микроконтроллерами Sie­mens, Philips, Renesas, Toshiba, и др. [1], к сожалению, эти компании не так заботятся о пользователях, как Microchip и Atmel.
Разрабатывая микроконтроллерные устройства, автор столкнулся с проблемой программирования микроконтроллеров. Дело в том, что эта сфера бурно развивается, а программаторы зачастую имеют собствен­ные программы управления. Для радиолюбителя каждая копейка доро­га, а характеристики микроконтроллеров, предлагаемых поставщиками, далеко не всегда совпадают с информацией на страницах журналов.
Для семейства микроконтроллеров Tiny от Atmel автор нашел вы­ход, прочитав книгу [2] и собрав за 40 минут очень дешевый.програм­матор, представленный на рис. 1.1, — аналог STK200 (на сегодняшний день компания Atmel выпускает и поддерживает только программатор версии STK500, но он значительно дороже).
Для работы с STK200 существует специальная DOS-программа, ко­торая достаточно проста и надежна, хотя и имеет некоторые особенно­сти. Ее можно найти в Internet или на компакт-диске, прилагаемом к книге [2].
На основании своего опыта работы с STK200 автор немного изме­нил оригинальную схему, а так же выявил некоторые недостатки про­граммы:
 работа только в MS DOS или максимум в система Windows 98 в режиме эмуляции DOS;
 ввод функции программирования вручную, что на сегодняшний день очень несовременно;
 плохая организация перезаписи микроконтроллера. Для перезаписи лучше использовать файлы .bat, указанные в книге [2]. При нали­чии всех ключей перезапись происходит с ошибками, поэтому не­обходимо очистить микроконтроллер, затем проверить и после со­общения об ошибке записать заново. Привыкнув к специфике запи­си/перезаписи, радиолюбители обретут хороший опыт для работы с разными программаторами.
Состав программатора:
 микросхема IC1- 74НС244 (или аналог);
 R1—7кОм;
 R2 — 910 Ом;
 С1 — 47мкФх 16 В;
 С2 — 0,1 мкФ х 16 В (рекомендуется установить блокировочный конденсатор по питанию поближе к микросхеме);
 D1— КД522;
 SV1 — любой для питания бытовой аппаратуры;
 XI — IDC 10 (при желании, плоский разъем);
 Х2 —DB25.
Монтажные схемы программатора представлены на рис. 1.2. Плату можно собрать навесным монтажом и поместить в корпус разъема DB25 (рис. 1.3). Для этого плату необходимо вырезать строго по внутренним размерам разъема и поместить между выводами DB25. Монтаж выпол­няется навесным способом (рис. 1.4).
Разъем питания устанавливается на корпус программатора. Автор использовал два разъема на выходе из программатора:
 стандартный согласно оригинальной плате STK200 фирмы Atmel (разводка — табл. 1.1);
 нестандартный Е1ка22 (табл. 1.2, рис. 1.5).
От программатора с платы монтажа лучше пустить шлейф неболь­шой длины (не более 15 см) для подключения непосредственно к про­граммируемой плате. Можно создать отдельную плату для программи­рования любого микроконтроллера, используя при этом только про­грамматор STK200 (рис. 1.6). Со временем на этой отдельной плате для "прошивки" ^ микроконтроллера можно реализовать любые- варианты программирования на панельках.
После сборки и проверки программатора STK200 необходимо вы­полнить следующие действия.
1. Подключить шлейфом программатор к порту LPT компьютера.
2. Подать питание от внешнего источника.
3. Перейти в режим DOS (для этого автор, например, использовал программу Volkov Commander).
4. Найти файл .ехе программатора (автор использовал eal.exe) и запустить его с указанием названия программируемого микрокон­троллера, имени порта LPT, названия программатора, ключей опе­рации, байта в Flash-коде, имени файла "прошивки".
Если все введено правильно, то программа сразу же начинает рабо­тать и в течение нескольких секунд запишет данные в микроконтроллер. В случае возникновения ошибок их необходимо расшифровать, прове­рить правильность введенной фразы и исправить.
Внимание!
Файл . ехе и файл "прошивки" должны находится в одной папке (и на диске С).
Примеры сообщений в режиме DOS показаны на рис 1.7. Команды перевода выходов программатора в высокоимпедансное состояние:
Во время попытки перезаписать микроконтроллер с помощью клю­чей, не прошла программа:
Попытка записать микроконтроллер без питания. Нет питания на плате и на программаторе:_
і ТТміїїііТі iii I i IIIMliil I I i III ^.l l" UJ iii ii I I ii II i ii I I ..... ........... f
Программирование микроконтроллера прошло успешно:_
Для выбора типа программатора устанавливаются ключи:
 -ab — работа через Altera ByteBlaster;
 -as — работа через адаптер Atmel STK*00 (рассматриваемый про­грамматор);
 -аа — автоматический выбор ByteBlaster/STK;
 -az — пытаться переводить выходы LPT в Z-состояние для "от­ключения" программатора от схемы ("byte-blaster для ленивых", ра­ботает в режиме "FBPRG");
 -аг — инверсия полярности сброса (например, для подачи его че­рез резистор на базу присутствующего в схеме транзистора);
 -ai# — установить время неактивного сигнала Reset после стира­ния равным # мс;
 -ар — подавать питание кристалла через свободные выходы дан­ных LPT (несовместимо с -ab и -as).
Для управления программой существуют ключи, которые записы­ваются после фразы eal. exe +tinyl2 -р378 -as.
Порядок программирования "прошитой" микросхемы, предложен­ный автором:
1. -e — стереть содержимое микросхемы;
2. -v — проверить на совпадение с файлом;
3. -w+ — записать файл в микросхему.
Остальные ключи имеют следующие функции:
 — проверить микроконтроллер на наличие данных в памяти;
 — прочитать данные с кристалла в файл;
 -1 — установить уровень защиты (при разработке лучше не исполь­зовать);
 -f — список предохранителей для тех кристаллов, в которых они "прошиваются" по ISP (используется при перенастройке микрокон­троллера);
  — как байт в Flash-коде.
С остальными ключами можно ознакомится, прочитав книгу [2].
Программатор можно успешно применять для внутрисхемного про­граммирования, но при этом необходимо отслеживать выводы его под­ключения к программируемой схеме. В такой схеме не должно быть пе­ремычек или выключателей "на ноль", а так же активных элементов, подключенных к питанию или "земле". В случае накоротко программа­тор выйдет из строя.
Hosted by uCoz