Архитектура микроконтроллеров семейства Atmega. Учебное пособие
.pdfМИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Воронежский государственный технический университет»
Г. В. Петрухнова
Архитектура микроконтроллеров семейства Atmega
Учебное пособие
Воронеж 2024
2
УДК 681.32(075.8) ББК 32.97я7
П312
Рецензенты:
кафедра математического обеспечения ЭВМ Воронежского государственного университета (зав. кафедрой д-р техн. наук, проф. Г. В. Абрамов); Т. Н. Недикова, канд. техн. наук, руководитель проектов
ООО «Ангелы АйТи»
Петрухнова, Г. В.
Архитектура микроконтроллеров семейства Atmega: учебное П312 пособие [Электронный ресурс]. – Электрон. текстовые и граф.
данные (1,1 Мб) / Г. В. Петрухнова. – Воронеж: ФГБОУ ВО «Воронежский государственный технический университет», 2024. 1 электрон. опт. диск (DVD-ROM). – Систем. требования: ПК 500
и выше; 256 Мб ОЗУ; Windows 10; SVGA с разрешением 1024x768; Adobe Acrobat; CD-ROMдисковод; мышь. – Загл. сэкрана.
ISBN 978-5-7731-1160-3
Изложены основы архитектуры микроконтроллеров. Рассматриваются основные понятия из области микропроцессорных систем, архитектура микроконтроллеров семейства Atmega, их функциональные возможности, особенности функционирования, область применения.
Предназначено для студентов направления 09.03.01 «Информатика и вычислительная техника» (профиль «Вычислительные машины, комплексы, системы и сети») при изучении дисциплин «Микропроцессорные системы», «Микроконтроллеры».
Ил. 9. Табл. 2. Библиогр.: 9 назв.
УДК 681.32(075.8) ББК 32.97я7
Издается по решению редакционно-издательского совета Воронежского государственного технического университета
ISBN 978-5-7731-1160-3 |
© Петрухнова Г. В., 2024 |
|
© ФГБОУ ВО «Воронежский |
|
государственный технический |
|
университет», 2024 |
2
ОГЛАВЛЕНИЕ
Введение…………………………………………………….... 4
1.Основные понятия……………………………………….... 5
2.Особенности микроконтроллеров серии AVR………….. 8
3. Архитектура микроконтроллеров линейки Atmega…. |
10 |
4.Программистская модель МК семейства AVR…………. 13
5.Подсистема ввода/вывода МК…………………………... 22
6.Подсистема прерываний…………………………………. 24
7.Таймеры/счетчики………………………………………... 27
7.1.Основные понятия………………………………….... 27
7.2.Режимы работы таймеров/счетчиков………………. 28
7.3.Предделители таймеров/счетчиков………………… 32
8.Модули последовательной передачи данных………... 35
9.Аналого-цифровые преобразователи……………………. 37
10.Цифро-аналоговые преобразователи…………………... 39
11.Аналоговый компаратор………………………………… 40
12.Основные режимы энергопотребления………………… 41
13.Аппаратные средства обеспечения надежной работы МК…………………………………………………………….. 43
13.1.Состав средств обеспечения надежной работы МК 43
13.2.Схема формирования сигнала сброса…………….. 43
13.3.Блок детектирования пониженного напряжения питания……………………………………………………….. 44
13.4.Сторожевой таймер………………………………… 44
Заключение…………………………………………………… 46
Приложение 1. Семейства и версии микроконтроллеров фирмы Atmel………………………………………………….. 47
Приложение 2. Требования к коду программ на языке ассемблера микроконтроллеров Atmega фирмы Atmel…… 51 Приложение 3. Инструкции ассемблера микроконтроллеров
Atmega фирмы Atmel……………………………………........ 52
Принятые сокращения и обозначения……………………… 80 Библиографический список…………………………………. 84
3
ВВЕДЕНИЕ
Внастоящее время технологии, связанные с разработкой микроконтроллерных систем, являются быстроразвивающейся и динамично изменяющейся областью знаний и производства средств автоматизации. В последнее время объем исследований и разработок, связанных со встраиваемыми системами на базе микроконтроллеров (МК), значительно вырос. Многие молодые специалисты решительно настроены связать свое будущее с этой производственной сферой.
Микроконтроллерные системы встречаются в различных областях жизни, имеются в каждом доме, в каждой организации, на каждом предприятии. Поэтому любой профессионал в области информатики и вычислительной техники для успешной работы должен владеть знаниями о МК, глубоко разбираться в синергетическом сочетании аппаратного и программного обеспечения. В рамках существующей системы высшего профессионального образования задача подготовки высокопрофессиональных кадров, владеющих знаниями в области МК, является актуальной.
Учебное пособие написано по материалам лекций, читаемых студентам направления подготовки «Информатика и вычислительная техника» (профиль «Вычислительные машины, комплексы, системы и сети»), и рекомендуется использовать в рамках дисциплин «Микропроцессорные системы», «Микроконтроллеры».
Впособии рассмотрены МК, с которыми студенты в дальнейшем могут встретиться в ходе практики и профессиональной деятельности. Автор пособия старалась не только ознакомить читателя с данными справочного характера, но и пояснить основные понятия, используемые в предметной области, показать место и значение МК в различных областях жизнедеятельности человека. При работе с МК желательно иметь под рукой документацию от производителя.
4
1. ОСНОВНЫЕ ПОНЯТИЯ
Любой достаточно сложный прибор требует управления. В большинстве случаев для этих целей в настоящее время используют микроконтроллеры – микросхемы, которые совмещают в себе микропроцессорное ядро, память и периферийные модули. Управлять МК можно через программу, записанную в его память. Введем базовые понятия.
Микропроцессор (МП) – это конструктивно и функционально завершённое, программно-управляемое устройство, выполненное на одной или нескольких БИС и предназначенное для обработки цифровой информации и управления процессами этой обработки.
Микропроцессорная система (МПС)– это специали-
зированная информационная или управляющая система, построенная на основе микропроцессорных средств.
Однокристальная микроЭВМ – это устройство обра-
ботки информации, состоящее из одного или несколько МП, БИС ОЗУ и ПЗУ, БИС управления вводом/выводом и некоторых других схем.
Микроконтроллер – это микроЭВМ с малыми вычислительными возможностями, упрощенной системой команд, ориентированной не на производство вычислений, а на функции логического управления оборудованием.
МК является, по сути дела, упрощенной МПС, в которой все или большинство узлов системы реализованы в рамках одной БИС. Схема на рис. 1 иллюстрирует обобщенную структуру МК.
В корпусе БИС содержится системная шина МК. Возможности подключения внешних периферийных устройств (ПУ) к такой БИС ограничены. Устройства на базе МК могут решать только одну задачу. Небольшие размеры, высокая производительность, надежность и возможности к адаптации для выполнения различных задач – основные характеристики
5
такой БИС. МК используются там, где не требуется большой вычислительной мощности.
структура однокристального МК гарвардской |
архитектуры |
Рис. 1. Обобщенная |
|
Любой модуль МК (рис. 1) имеет выводы для подключения к шинам процессорного ядра (ПЯ). Одна модель от другой в рамках семейства МК отличается лишь разнообразием и режимами работы внутренних ПУ. ПЯ для всех МК
6
одного семейства является неизменяемой структурной единицей. Система команд центрального процессора (ЦП) может претерпевать небольшие изменения в ряде моделей МК. Поскольку модели МК одного семейства отличаются друг от друга наличием внутренних ПУ, то в систему команд могут входить операции, необходимые для обслуживания того или иного внутреннего модуля, или отсутствовать, если нет необходимости в их использовании. Нет ПУ – значить отсутствуют и соответствующие операции.
Возможный состав структурных единиц изменяемого блока МК:
параллельные порты ввода/вывода;
таймеры/счетчики, таймеры периодических прерываний, процессоры событий;
контроллеры последовательного интерфейса связи нескольких типов (UART, SCI, SPI, I2C, CAN, USB);
аналого-цифровой преобразователь (АЦП);
цифро-аналоговый преобразователь (ЦАП);
контроллеры жидкокристаллических индикаторов (ЖКИ) и светодиодной матрицы.
Состав изменяемого блока может содержать и другие типы структурных единиц, и информацию об этом можно уточнить по справочной литературе.
7
2. ОСОБЕННОСТИ МИКРОКОНТРОЛЛЕРОВ СЕРИИ
AVR
МК этой серии отличаются популярностью и широкой распространенностью во всем мире. Их любят, в основном, за относительно простое строение, несложность программирования, существование бесплатного инструментария для технического творчества. МК AVR изготавливаются по КМОПтехнологии, и поэтому обладают высоким быстродействием и низким током потребления.
Они имеют гарвардскую архитектуру, отличительными чертами которой являются физическое и логическое разделение памяти программ и памяти данных, т.е. память инструкций и память данных представляют собой разные физические устройства. При этом инструкции и данные передаются по физически разным каналам.
По реализации системы команд МК этой серии относятся к RISC архитектуре, отличающейся относительно небольшим и тщательно подобранным набором команд, большинство из которых, выполняются за один машинный такт. Для рассматриваемых МК набор содержит около 130 команд.
Анализ состава семейства AVR позволяет выделить 4 линейки МК:
1.Classic AVR;
2.Tiny AVR;
3.MegaAVR (Atmega);
4.Xmega AVR.
Каждая из групп характеризуется прежде всего аппаратными возможностями. Первая из них является устаревшей (снята с производства) и уже не используется в новых проектах. Вторая и третья группы составляют основу семейства. Tiny включает 8-разрядные МК с ограниченным набором функций. МК семейства Mega тоже являются 8-разрядными, имеют более развитую архитектуру по сравнению с предста-
8
вителями предыдущего семейства и предназначены для разработки более мощных МПС. Четвертое семейство состоит из наиболее развитыхМК, разрядность которых– либо 8, либо 16.
К стандартным семействам МК серии AVR относятся последние три семейства. Характеристики каждой группы МК приведены в прил. 1, материал которого составлен на основе литературного источника [2].
Дешевые МК минимальной конфигурации семейства Tiny используются для разработки достаточно простых электронных устройств, но эти устройства могут иметь большое практическое значение. Одна из самых миниатюрных БИС – Attiny12L – имеет всего несколько выводов, и совсем маленькие габариты (5.29х5.24х1.7 мм), но используются, например, в радиоуправляемых вертолетах. Некоторые области применения МК семейства Tiny:
электронные игрушки;
различные датчики (дыма, температуры и др.);
недорогие зарядные устройства;
пульты управления различной бытовой и промышленной техникой.
Представители линеек Mega, Xmega широко исполь-
зуются для разработки электронных систем различного назначения. Приведем лишь некоторые примеры:
системы управления электроприводами;
спутниковые навигационные системы;
аудиосистемы;
сложные системы дистанционного управления;
роботы;
системы сбора, передачи и обработки данных;
сложная техника бытового назначения;
устройства ввода и отображения информации с тачскринами;
коммуникационная аппаратура.
9
3. АРХИТЕКТУРА МИКРОКОНТРОЛЛЕРОВ ЛИНЕЙКИ ATMEGA
На рис. 2 представлена обобщенная архитектура микроконтроллера линейки Atmega. Рисунок взят из литературного источника [2].
Рис. 2. Архитектура микроконтроллеров линейки Atmega
МК линейки Atmega являются 8-разрядными. Процессорное ядро выделено на рис. 2 штриховой линией. Его состав:
10
