ДонНТУ   Портал магистров

Знакомство с микроконтроллерами

Почему мне стало интересно данное направление? Да всё очень просто :)

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

Можно считать что микроконтроллер (МК) — это компьютер, разместившийся в одной микросхеме. Отсюда и его основные привлекательные качества: малые габариты; высокие производительность, надежность и способность быть адаптированным для выполнения самых различных задач.

Однокристальные микроконтроллеры (ОМК) являются наиболее массовым видом устройств современной микропроцессорной техники, годовой объем выпуска, которых составляет более 2,5 млрд. штук. Интегрируя на одном кристалле высокопроизводительный процессор, память и набор периферийных схем, ОМК позволяют с минимальными затратами реализовать высокоэффективные системы и устройства управления различными объектами (процессами). В отличие от обычных микропроцессоров, для работы которых необходимы внешние интерфейсные схемы, в корпусе ОМК наряду с основными функциональными узлами размещены такие вспомогательные узлы, как тактовый генератор, таймер, контроллер прерываний, цифро-аналоговый и аналого-цифровой преобразователи, порты ввода-вывода.

Благодаря этим качествам ОМК находят широкое применение в системах промышленной автоматики, контрольно-измерительных приборах и системах, аппаратуре связи, автомобильной электронике, медицинском оборудовании, бытовой технике и многих других областях.

Применение однокристальных микроконтроллеров позволяет перенести основные затраты, связанные с разработкой встраиваемых систем управления, из аппаратной в программную область. Это неминуемо влечет за собой увеличение сложности программного обеспечения (ПО) микроконтроллеров.

Особенностью разработки ПО для однокристальных МК является использование языка низкого уровня — языка ассемблера. Это связано с тем, что при реализации встраиваемых систем критичными являются время реакции на внешние воздействия, время выполнения заданных процедур обработки данных, размер программного кода и области данных.

Достаточно широкое распространение имеют МК фирмы ATMEL, которые располагают большими функциональными возможностями.

Мой опыт в сборке устройств и программировании МК

Дал первоначальные азы замечательный человек — старший преподаватель ДонИЖТ Александр Сацюк.

Первым делом, конечно же, был собран AVR Программатор (который будет соединять микроконтроллер с Компьютером, на котором, в свою очередь, будет установлено специальное ПО).

Для этого была заказана 2х сторонняя плата на заводе. Её вид можете увидеть на рисунке ниже.


Рисунок 1 – Плата с завода

Рисунок 1 — Плата с завода


Потом на радиорынке были приобретены необходимые детали и спаян сам программатор (рисунок 2).


Рисунок 2 – Собранный программатор

Рисунок 2 — Собранный программатор


Для эстетического внешнего вида плата была помещена в пластиковый корпус.


Рисунок 3 – Вид программатора в корпусе

Рисунок 3 — Вид программатора в корпусе


Собрали мы программатор по схеме AVRdoper — аналог фирменного программатора STK-500. Он прекрасно работает с программой AVRstudio.

Ну вот, уже пол дела сделано, можно, конечно, и припаять проводки от программатора к микроконтроллеру напрямую и прошить, но не думаю что это правильное решение.

Для того чтобы связать теперь уже наш МК с программатором нам понадобится Отладочная плата. Была изготовлена сама простая.

Для начала была разработана схема дорожек на плате. Затем методом горячего утюга нанесли нашу схему на стеклотекстолит и в хлорном железе вытравили дорожки. Залудили дорожки и припаяли нужные элементы. Отладочная плата готова. Вид её показан на рисунке ниже.


Рисунок 4 — Отладочная плата

Рисунок 4 — Отладочная плата


Далее показано полностью собранное устройство ( программатор + отладочная плата) с подключением к компьютеру.


Рисунок 5 — Вид устройства в работе

Рисунок 5 — Вид устройства в работе


И в заключении приведу простенькую программку бегущий огонёк, которая поочерёдно переключает порты МК где у нас вставлены светодиоды.


Код программы:

breq DD1
Out PortD, R16
ldi R18,200
M: dec R18
cpi R18,0
breq Ustanov_1
ldi R19,100
M1: dec R19
cpi R19,0
brne M1
rjmp M
DD1:ldi R16,0b00000001
Ustanov_11:
rol R16
cpi R16,0
breq DD
Out PortD, R16
ldi R18,200
M111:dec R18
cpi R18,0
breq Ustanov_11
ldi R19,100
M11:dec R19
cpi R19,0
brne M11
rjmp M111
Рисунок 6 — Робота программы

Рисунок 6 — Работа программы

(10 кадров, бесконечное воспроизведение, 273 кБ)


Рекомендованная литература по теме индивидуального раздела

1. Баранов, В. Н. Применение микроконтроллеров AVR: схемы, алгоритмы, программы. Применение микроконтроллеров AVR: схемы, алгоритмы, программы / В. Н. Баранов. — М.: Додэка–XXI, 2006 г. — 288 c.

2. Бродин, В. Б. Микроконтроллеры. Архитектура, программирование, интерфейс / В. Б. Бродин, М. И. Шагурин. — М.: ЭКОМ, 1999 г. — 400 c.

3. Водовозов, А. М. Микроконтроллеры для систем автоматики: учебное пособие / А. М. Водовозов. — Вологда: ВоГТУ, 2002 г. — 123 c.

4. Мазиди, М. А. Микроконтроллеры PIC и встроенные системы. Применение ассемблера и С для PIC18 / М. А. Мазиди, Р. Д. МакКинли, Д. Кусэй; Пер. с англ. В. В. Литвина. — СПб.: КОРОНА-принт, МК-Пресс, 2009 г. — 784 c.

5. Рюмик, С. М. 1000 и одна микроконтроллерная схема. Книга 1 / С. М. Рюмик. — М.: Додэка–XXI, 2012 г. — 356 c.

6. Хартов, В. Я. Микроконтроллеры AVR. Практикум для начинающих: Учебное пособие / В. Я. Хартов. — М.: МГТУ им. Баумана, 2012 г. — 280 c.

7. Шагурин, И. И. Микропроцессоры и микроконтроллеры фирмы Motorola: справочное пособие / И. И. Шагурин. — М.: Радио и связь, 1998 г. — 560 c.