КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
ПериферияСтр 1 из 17Следующая ⇒ Архитектура МК ATmega16
Периферия
Рис. 2.5. Архитектура МК ATmega16 ПЗУ включает в себя две раздельные области - память программ и память данных. Программа МК хранится в памяти программ; в
памяти данных могут храниться пользовательские данные (которые временно могут также храниться в ОЗУ). Распределение адресного пространства памяти программ МК ATmega16 показано на рис. 2.6.
Память программ пользователя 8К ? 16
Загрузочная область $0000
$1FFF
Рис. 2.6. Распределение адресного пространства памяти программ
реализацией функций самопрограммирования МК. Большинство команд AVR-МК имеют формат одного 16- разрядного слова, в связи с чем по каждому из адресов памяти программ размещается одна команда. Размещение команд начинается с нулевого адреса ($0000). Выполнение программы после сброса МК начинается с команды, которая размещается по нулевому адресу в памяти программ. При работе с памятью программ используется так называемый одноуровневый конвейер – в то время как одна команда выполняется, следующая команда выбирается из памяти программ. Такой прием позволяет выполнять команду в каждом тактовом цикле. При этом адрес команды, которая должна выбираться из памяти программ, находится в счетчике команд (таким образом, счетчик команд задает адрес следующей команды). Счетчик команд в штатном режиме работы автоматически увеличивает свое значение на единицу с каждым импульсом тактового генератора, но возможны ситуации, когда пользовательская программа или узлы МК воздействуют на содержимое счетчика команд. После выборки команда попадает в регистр команд.
|