ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 08.11.2023
Просмотров: 24
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
1 Структура и назначение основных устройств микроконтроллера
Микроконтроллер ATmega8-16PC – это 8-битный микроконтроллер с
RISC-архитектурой. Структурная схема микроконтроллера представлена на рисунке 1. В его состав входят следующие элементы:
– электрически стираемую память программ (FLASH): 8 Кбайт внутрисистемно программируемой Flash памяти;
– электрически стираемую память данных (EEPROM); – 1 кбайт статического ОЗУ;
– 12-разрядный программный счетчик РС (способный адресовать 212=4096 команд), поэтому позволяет адресоваться к 4 кбайт памяти программ;
– 3 порта ввода/вывода (порты B, D - 8-битные, порт С 7-битный);
– вход аппаратного сброса и выводы для подключения резонатора совмещены с выводами ввода/вывода;
– два 8-битных (Т0, Т2) и один 16-битный (Т1) таймер/счётчик; – по одному интерфейсному модулю USART, SPI и TWI;
– 6- или 8-канальный (в зависимости от корпуса) 10-битный АЦП; – 32 8-разрядных рабочих регистра общего назначения;
– АЛУ: работает в непосредственной связи со всеми 32 универсальными рабочими регистрами. АЛУ позволяет выполнить за один машинный цикл операцию между двумя регистрами или между регистром и константой
Лист
Изм.Лист №докум. ПодписьДата
Рисунок 1 - Структурная схема микроконтроллера ATmega8-16PC
Лист
Изм.Лист №докум. ПодписьДата
Рисунок 2 - Структурная схема ЦПУ микроконтроллера ATmega8-16PC
Лист
Изм.Лист №докум. ПодписьДата
2 Организация памяти микроконтроллера
В микроконтроллере ATmega8-16PC разделены адресные пространства памяти программ и памяти данных. Такая структура позволяет центральному процессору работать одновременно как с памятью программ, так и с памятью данных, что существенно увеличивает производительность. Каждая из областей памяти данных (ОЗУ и EEPROM) также расположена в своём адресном пространстве.
Обобщённая карта памяти микроконтроллера ATmega8-16PC представлена на рисунке 2.1:
Рисунок 2.1 – Обобщённая структура памяти микроконтроллера
Память программ предназначена для хранения кома
нд, управляющих работой микроконтроллера, и имеет объём 4 Кбайта. Память программ также часто используется для хранения таблиц констант, не меняющихся во время работы программы.
Память программ представляет собой электрически стираемое ППЗУ (FLASH-ПЗУ). Она имеет 16-битную организацию и логически разделена на две неравные части: область прикладной программы и область загрузчика. В последней может располагаться специальная программа (загрузчик), позволяющая микроконтроллеру самостоятельно управлять загрузкой и выгрузкой прикладных программ.
Лист
Изм.Лист №докум. ПодписьДата
Память программ может использоваться не только для хранения кода
программы, но также и для хранения различных констант. Для пересылки байта из памяти программ в память данных существуют две специальных коман
ды -LPM и ELPM. При использовании команды LPM адрес, по которому производится чтение, определяется содержимым индексного регистра Z. При этом старшие 15 битов содержимого регистра будут определять адрес слова (0...32К), младший бит будет определять, какой из байтов будет прочитан: 0-младший байт, 1-старший байт.
Рисунок 2.2 – Использование команды LPM
Память данных микроконтроллера ATmega8-16PC разделена на три части:
- регистровая память;
- оперативная память (внутренне статическое ОЗУ); - энергонезависимая память (EEPROM).
Регистровая память включает 32 регистра общего назначения (РОН), объединённых в файл. Структура регистрового файла представлена на рисунке 2.3. Каждый регистр файла имеет свой собственный адрес в пространстве памяти данных. Поэтому к ним можно обращаться двумя способам
и - как к регистрам и как к памяти, несмотря на то, что физически эти регистры не являются ячейками ОЗУ.
Лист
Изм.Лист №докум. ПодписьДата
Рисунок 2.3 – Структура регистрового файла
Регистры файла R26-R31 могут также объединяться в три 16-битных регистра X, Y и Z, используемых в качестве указателей при косвенной адресации памяти данных.
Рисунок 2.4 – Регистры X, Y,Z
Так же для хранения переменных помимо регистров общего назначения
также используется статическое ОЗУ объёмом 1 Кбайт. В адресном
Лист
Изм.Лист №докум. ПодписьДата
пространстве ОЗУ также расположены все регистры микроконтроллера, под
них отведены младшие адреса. Остальные адреса отведены под ячейки статического ОЗУ.
Вышеописанная организация памяти данных п