Что такое микроконтролер?

Микроконтроллер представляет собой сложное электронно-вычислительное устройство. Конструктивно выполнен, чаще всего, в виде микросхемы. Некоторые путают понятия «микроконтроллер» и «процессор». Процессор менее сложен, так как в нем отсутствуют модули для работы с внешними устройствами – только командно-вычислительный блок.

Микроконтроллер представляет собой сложное электронно-вычислительное устройство. Конструктивно выполнен, чаще всего, в виде микросхемы. Некоторые путают понятия «микроконтроллер» и «процессор».
Процессор менее сложен, так как в нем отсутствуют модули для работы с внешними устройствами – только командно-вычислительный блок.
Строение микроконтроллера намного сложнее из-за того, что кроме самого вычислительного узла, в нем есть как оперативная память (ОЗУ), так и постоянное запоминающее устройство (ПЗУ), а так же таймер, цифро-аналоговый преобразователь ЦАП и порты ввода-вывода.
Вообще говоря, микроконтроллер – это компьютер в миниатюре, запрограммировав который определенным образом, можно добиться выполнения конкретной задачи.
В мире существует всего шесть компаний, выпускающих микроконтроллеры – Atmel Corporation, Microchip Technology Inc, STMicroelectronics, Texas Instruments, NXP и Freescale. И только две из них – Microchip Technology и Atmel, выпускают свою продукцию на свободный рынок.
Microchip Technology Inc (США) – компания создана в 1987 году, выпускает микроконтроллеры семейства PIC. Маркировка продукции компании Microchip Technology- PIC12C508, PIC14000, PIC16C432, PIC17C42 и тому подобные.
Корпорация Atmel (США) – работает с 1984 года, и выпускает микроконтроллеры типа ARM, построенные по архитектуре RISC. В 1993 году были выпущены первые 8-битные модели  на базе Intel 8081 – ATtiny11, ATtiny2313, AT90S2313, ATmega8, ATmega16, ATmega32, ATmega48 и другие.
Эти и другие, им подобные, микроконтроллеры сейчас используются радиолюбителями для построения различного рода автоматизированных устройств. Для создания своего первого устройства необходимы, кроме самого микроконтроллера, определенные знания в схемотехнике, электронике и программировании. Из области схемотехники необходимы основные навыки – отличать резистор от конденсатора, читать несложные принципиальные схемы, правильно держать в руках паяльник. В области программирования особых навыков, для первого раза, потребуется немного – готовые необходимые программы можно скачать в сети Интернет.
Итак, для начала нам необходимо собрать программатор. Программатор выполняет две задачи – согласование микроконтроллера с компьютером и программирование микроконтроллера. Сам по себе микроконтроллер, без записанной в него программы, работать, естественно, не будет. Еще необходима программа на ПК, которая и будет «прошивать» наш микроконтроллер, т.е. записывать в него программу. Программаторы могут различаться как по исполнению, так и по типу своего подключения к компьютеру – подключаться к ПК можно параллельно, используя LPT порт, или последовательно, через  COM порт или USB. Самый распространенный и безопасный – параллельный тип подключения.
Для такого подключения можно или собрать программатор на базе буферной микросхемы или спаять простейшую схему из четырех резисторов. Последний способ более прост, но и более опасен. Дело в том, что данный программатор подключается, как уже говорилось ранее, на параллельный порт компьютера, в котором уровень сигнала при передаче данных выше, чем на аналогичном порту микроконтроллера. Поэтому, подключение без буферной микросхемы вообще, возможно только для однократного, разового применения.
Поэтому, в качестве буфера между параллельным портом компьютера и интерфейсом микроконтроллера используется микросхема-буфер 74HC244N от фирмы Philips или аналогичная ей 74LS244N, производства TEXAS INSTRUMENTS. Сама микросхема является шинным преобразователем, который сопрягает каналы обмена данными микроконтроллера и персонального компьютера. Интерфейс передачи данных микроконтроллера (ISP) представляет собой пять проводников, выведенных на контактные ножки микроконтроллера. Каждый из контактов выполняет свою конкретную функцию. MISO (Master Input Slave Input) – ввод данных, MOSI (Master Output Slave Output) – вывод данных, SCK – синхроимпульс скорости обмена данными, Reset – сброс, GND – общий провод.
Кроме подключения через параллельный порт, возможно программирование микроконтроллера через последовательный порт (COM) либо порт USB. Но для этого  необходимы программаторы со сложной электрической схемой для согласования последовательного порта ПК и интерфейса микроконтроллера. Поэтому, свой первый программатор лучше собирать для работы именно с параллельным портом компьютера.
Далее, нам необходимо программное обеспечение на ПК для работы с микроконтроллером. Таких программ много, вот некоторые из них – AVReal, Pony Prog, Visual avr и Ic prog. Все они позволяют выполнять различные действия с микроконтроллером – считывать или записывать программу с микроконтроллера, редактировать программу микроконтроллера, возможны и другие функции. Не лишней будет и программа-эмулятор, например Proteus. На ней можно заранее, виртуально, просмотреть результаты выполненной работы и увидеть возможные ошибки до реализации проекта на физическом устройстве.
Сам процесс программирования происходит путем установки микроконтроллера в программатор, подключения его к персональному компьютеру и записи в микроконтроллер прошивки, с помощью программ, которые назывались ранее. Вообще, возможно программирование контроллера и, не вынимая его из устройства – так называемое, внутрисхемное программирование.
Последние, но не менее важные моменты. При сборке программатора необходимо внимательно отнестись к монтажу деталей, распайке компонентов – иначе, возможен результат получения неработающего устройства. Во время «прошивки» нужно уделить должное внимание фьюзам (FUSE ) – внутренним программным предохранителям. В разных микроконтроллерах количество этих предохранителей и их функции различаются. Нужно помнить, что неправильно настроенный фьюз может вывести микроконтроллер из строя.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *