LAB599.RU — интернет-магазин средств связи
EN FR DE CN JP
QRZ.RU > Каталог схем и документации > Схемы наших читателей > Программатор для микроконтроллера

Программатор для микроконтроллера

В.И. Авраменко, г.Никополь, Днепропетровская обл.

Применение однокристальных микроконтроллеров (МК) в различных приборах является характерной особенностью нынешнего развития электроники. Наряду с несомненными преимуществами МК, существуют и сложности при их практическом применении. Для работы необходимо иметь, кроме собственно самого чипа, программное обеспечение для написания и отладки программы, какой-либо тип эмулятора для пробных запусков, программатор и программное обеспечение к нему. Причем стоимость эмулятора и программатора несоизмеримо выше стоимости применяемого микроконтроллера. Все это, естественно, ограничивает круг потенциальных разработок, построенных с применением МК. Для улучшения потребительских свойств микроконтроллеров некоторые фирмы (ATMEL, MICROCHIP, SCENIX) ввели в состав изделий возможность программирования последних в готовом устройстве. Другими словами, МК можно установить на плату проектируемого или изготавливаемого устройства и содержимое внутренней перепрограммируемой памяти "зашить" с помощью несложного программатора с последовательным доступом. Минимальное количество циклов перезаписи равно 1000.

Предлагаемое устройство совместно с прилагаемой управляющей программой предназначено для работы с микроконтроллером фирмы ATMEL AT89S8252. МК AT89S8252 полностью совместим с микроконтроллерами MCS-51 фирмы INTEL. Имеет в своем составе 8 кбайт перепрограммируемой памяти команд (количество циклов перезаписи равно 1000), 2 кбайт перепрограммируемой памяти данных (количество циклов перезаписи равно 100000), 256 байт ОЗУ, 32 линии ввода-вывода, три 16-разрядных счетчика, последовательный асинхронный порт, последовательный периферийный интерфейс, 9 уровней прерывания, низкое энергопотребление. Данный программатор подключают к параллельному порту, и он обеспечивает полную гальваническую развязку изготавливаемого устройства и компьютера. По окончании сеанса программирования все выводы программатора переводятся в высо-коимпендансное состояние, что позволяет полноценно использовать в разрабатываемом устройстве последовательный периферийный интерфейс, задействованный при программировании. Схема программатора показана на рис.1, схема обвязки микроконтроллера для программирования и проверки - на рис.2, чертежи двусторонней печатной платы - на рис.3.

Для проверки работоспособности программатора и микроконтроллера можно записать в память команд простейшую программу генератора импульсов и убедиться по мигающему светодиоду HL1 о правильности работы.

Текст программы написан c использованием Turbo C++. Программа позволяет записывать, считывать и сравнивать содержимое двоичного файла и памяти данных и программ.

Синтаксис командной строки: pgm8252.exe имя_файла -MNP, где

имя_файла - название двоичного файла для считывания или записи.

M - режим:

W - запись из двоичного файла в память микроконтроллера;

R - чтение из памяти микроконтроллера в двоичный файл;

V - сравнение памяти микроконтроллера и содержимого файла;

E - полная очистка памяти микроконтроллера.

N - номер порта, к которому подлючен программатор:

1 - LPT1;

2 - LPT2.

P - тип памяти:

C - память команд;

D - память данных.

Пример. Если необходимо загрузить память команд из двоичного файла code.bin через программатор, подключенный к LPT1, синтаксис командной строки следующий: pgm8252.exe code.bin -W1C.

Из-за ограниченного объема публикации программа не обладает достаточно развитым интерфейсом пользователя, но может служить пособием для самостоятельной разработки более совершенной программы. Авторы разрабатывают полноценное 32-разрядное приложение для Windows 95, 98.

Партнеры