Научная статья на тему 'Программатор для микроконтроллеров'

Программатор для микроконтроллеров Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
328
51
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОГРАММАТОР / МИКРОКОНТРОЛЛЕР / КРОСС-ПРОГРАММА / МИКРОСХЕМА / КОМПЬЮТЕР / ПЛАТА / РАЗЪЕМ / PROGRAMMER / PIC MICROCONTROLLER / CROSS-PROGRAMS / MICROCIRCUIT / COMPUTER / PLATE / SOCKET

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Гаязов Рустам Илдарович, Андреев Николай Кузьмич

В статье рассмотрены вопросы проектирования и работы программаторов для микроконтроллеров серий PIC и AT. Представлено одно из схемных решений по созданию программатора с использованием микросхем инвертора и цифро-аналогового преобразователя. Описаны требования к программатору и особенности работы кросс-программ и аппаратной части.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

PIC RS-232 PROGRAMMER

The article considers the problems of design and function of the programmer for PIC and AT microcontrollers. The scheme is based on the usage of a digital-analog converter. There has been formulated the requirements to the features of the programmer, cross-programs and to the hardware.

Текст научной работы на тему «Программатор для микроконтроллеров»

УДК 004.4.2

Гаязов Р.И., Андреев Н.К.

ПРОГРАММАТОР ДЛЯ МИКРОКОНТРОЛЛЕРОВ

В статье рассмотрены вопросы проектирования и работы программаторов для микроконтроллеров серий PIC и AT. Представлено одно из схемных решений по созданию программатора с использованием микросхем инвертора и цифро-аналогового преобразователя. Описаны требования к программатору и особенности работы кросс-программ и аппаратной части. Ключевые слова: программатор, микроконтроллер, кросс-программа, микросхема, компьютер, плата, разъем.

В настоящее время на Российских рынках радиодеталей имеется огромный выбор импортных программируемых микросхем. Сюда относятся микросхемы с параллельным или последовательным доступом к информации (EEPROM, EPROM, FLASH); микроконтроллеры с внутренней памятью команд и данных и так далее. Постоянно появляются новые виды микросхем более сложной конструкции. Возможности их растут. Поэтому при создании программатора для микроконтроллера перед инженером встает вопрос выбора типа микросхемы, ее конструкции и способов программирования. Данная статья посвящена конструированию программаторов для одного из типов микроконтроллеров, а именно, микроконтроллеров серий PIC и AT.

Прежде чем переходить к конкретной конструкции программатора необходимо очертить круг требований и ограничений, которые инженер должен сформулировать в процессе разработки технического задания на проектируемую установку:

1. По сложности и функциональности программатор должен быть достаточно универсальным и предназначен для широкого набора микроконтроллеров, причем сам программатор не должен быть построен на микроконтроллере.

2. Должно быть согласование с входным интерфейсом по разъему. Этому требованию удовлетворяет программатор, выполненный по модульному принципу: базовый блок с основными элементами и дополнительные блоки, на которых будут размещены разъемы.

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

как IcProg или PonyProg. Обмен данными должен осуществляться от компьютера с операционной системой Windows.

4. Программатор должен подключаться к компьютеру через порт USB-COM,, что упростит схемотехнику программатора. Это подключение обеспечит работу программатора с компьютерами многих типов. Однако недостатком служит невысокая пропускная способность канала. Тем не менее, даже такой скорости будет достаточно для прошивки микроконтроллеров за несколько минут.

Аппаратная часть.

Программатор должен преобразовывать сигналы последовательного порта RS-232 в сигналы, пригодные для работы с микроконтроллерами. Сигналы, поступающие от компьютера к программатору, можно преобразовать с помощью микросхемы MAX-232, которая преобразовывает сигналы порта RS-232 в сигналы, используемые в ТТЛ-логике.

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

Обозначения сигналов и их назначение в интерфейсе RS-232 приведены в следующей таблице.

Таблица. Обозначения и назначение сигналов последовательного порта RS-232 [1]

Обозначение Назначение

SG (Signal Ground) Сигнальная земля

TD (Transmitted Data) Данные, передаваемые в оконченное устройство

RD (Received Data) Данные, принимаемые от оконченного устройства

DTR (Data Terminal Ready) Готовность контроллера к обмену данными

DSR (Data Set Ready) Готовность оконченного устройства к обмену данными

RTS (Request To Send) Запрос передачи данных

CTS (Clear To Send) Готовность регистра оконечного устройства

Примеры расположения выводов корпусов микроконтроллеров серии PIC, необходимых для программирования, приведены на рис.1.

VCCI : :

VPPt

VPP [ [

: t с : с

GND

Ü [

[ [

С [

1 Ы

2 7

3 6

4 5

DIP28

1 28

2 27

3 26

4 25

5 24

6 23

7 22

8 21

9 20

10 19

11 18

12 17

13 16

14 15

Рис.1. Расположение выводов корпусов микроконтроллеров серии PIC, необходимых для программирования

Очередной шаг - изготовление плат под микроконтроллеры. Варианты исполнения плат могут быть самыми разными. Конструкция программатора завязана под конструкцию основного блока - MAX-232. Для простоты и надежности эксплуатации эти микросхемы можно разместить в монтажные гнезда (кое-где в литературе их называют адаптерами). В результате для сборки основного блока понадобятся следующие детали: цифровой - аналоговые преобразователь MAX-232, инвертор К561ЛН2, два светодиода (желательно разных цветов), наборы сопротивлений, диодов серии KD, емкостей, четырех транзисторов серии BC, стабилитрона. Принципиальная схема базового блока изображена на рис.2.

Принцип работы схемы. При подаче напряжения на вход открывается транзистор Q2. После чего сигнал попадает на микросхему MAX232, преобразующую сигналы последовательного порта RS232 в сигналы ТТЛ. Преобразованные сигналы идут на микросхему К561ЛН2, которая содержит в себе 6 буферных инверторов. Инвертируемые сигналы проходят через порт на дополнительную плату непосредственно на программируемый микроконтроллер. Транзистор Q4 будет открыт только в режиме записи, о чем будет свидетельствовать индикация светодиода VD4.

Перед подключением микросхем необходимо проверить напряжения на входе для исключения выхода их из строя. Убедившись, что

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

Рис.2. Принципиальная схема основного блока.

Один из вариантов исполнения блока для микроконтроллеров изображен на рис.3. На плате размещены разъемы для микроконтроллеров серии AT. Сигналы, поступающие от базового блока, проходят через порт J4 к микроконтроллеру. Для работы кросс-программы с соответствующим разъемом необходимо привести перемычку JP3 в соответствующее положение. Разъемы для микроконтроллеров необходимо выбрать наиболее качественные, так как при частой коммутации они могут быстро выходить из строя и, как следствие, вывести из строя сам микроконтроллер.

Программная часть.

После написания текста и отладки программы с помощью интегрированной среды разработки проводится компиляция исходного текста в машинный коды с помощью кросс- программы. Выбор кросс-программы влияет на программную и аппаратную части программато-

ра. Перед началом работы с программатором необходимо провести настройку и калибровку оборудования. Данные операции имеются в любой кросс-программе, так как являются необходимыми проверками работы аппаратной части. Если в отчете о калибровке вышло сообщение об ошибке, то необходимо проверить наличие сигналов, поступающих в компьютер. В основном данная ошибка возникает при неправильном монтаже схемы. При отсутствии ошибок можно начать работу с программатором. Каждая кросс-программа имеет необходимый набор функций: чтение, запись и стирание информации, сравнение.

Рис.3. Принципиальная схема дополнительно блока под микроконтроллеры серии AT

Проверка программатора осуществляется с помощью универсального асинхронного приемопередатчика. Данная микросхема предназначена для проверки четности или нечетности количества нулей или единиц в бите и используется для сопряжения с цифровыми устройствами и представляет собой логическую схему, с одной стороны подключенную к шине вычислительного устройства, а с другой - имеющую два или более выводов для внешнего соединения. Принцип действия основан на контроле битовой четности. При использовании этой функции последний бит данных содержит информацию о четности количества единичных бит в массиве данных [2].

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

На полноценную работу оказывает влияние скорость обмена данными. Чем выше скорость, тем выше вероятность ошибки при работе с программатором: последовательный порт, микросхема MAX232 и инвертор имеют ограниченную скорость обмена данными. Кроме того, влияние оказывает правильность настройки и наличие дополнительных драйверов. К примеру, при подключении через порт USB-COM необходима установка драйвера для работы, если же драйвер отсутствует, то компьютер может не обнаружить программатор при подключении или присвоить статус неизвестного устройства.

Пробный запуск.

После отладки аппаратной части и проверки монтажа было произведено пробное включение. Ни один из элементов схемы не испытывал перенапряжений и не нагревался. При подключении программатора к компьютеру операционная система обозначила программатор неизвестным устройством. Установка драйвера интерфейса RS-232 устранила данную ошибку. После проведения калибровки и проверки программатора кросс-программа вывела отчет, в котором указывалось об отсутствии ошибок.

В результате тестирования при скорости 9600 кб/с, программатор показал следующие результаты: скорость чтения 2 мин.36 с; скорость стирания 9 с; скорость записи 4 мин 18 с. Выводы.

В ходе работы был сконструирован простой и недорогой программатор, универсальный в работе, поддерживаемый операционной системой Windows и доступными кросс- программами. Аппаратная часть способна поддерживать широкий набор микроконтроллеров серии PIC и AT. Поставленные технические требования были выполнены.

Затраты на изготовлении не превысили 500 рублей, а монтаж осуществляется за короткое время. Описанное конструктивное исполнение не является единственно возможным. Можно смоделировать программатор, полностью отличающийся от данного решения схемы. Отличие может выражаться в принципе работы, способе подключения, функциональности и универсальности в зависимости от программируемых микроконтроллеров.

Источники

1. http://masterelectronic.ru/node/143 Справочник импортных и отечественных микросхем.

2. Пей Ан. Сопряжение ПК с внешними устройствами. М.: Издательство «ДМК Пресс». 2001.

References

1. http://masterelectronic.ru/node/143 Spravochnik importny'h i otechestvenny'h mikroshem.

2. Pey An. Sopryajenie PK s vneshnimi ustroystvami. M.: Izdatel'stvo «DMK Press». 2001.

Зарегистрирована 06.11.2012.

i Надоели баннеры? Вы всегда можете отключить рекламу.