Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Черноморское Высшее Военно-Морское
училище имени П.С. Нахимова
Дисциплина «Информационно-управляющие технологии»
Лекция № 25
ТЕМА: СИСТЕМА КОМАНД МИКРОКОНТРОЛЛЕРОВ
СЕМЕЙСТВА AVR.
ТЕМА: СИСТЕМА КОМАНД
МИКРОКОНТРОЛЛЕРОВ СЕМЕЙСТВА AVR.
Цель : получить знания по особенностям системы команд и
программному обеспечению микроконтроллеров семейства AVR.
Вопросы
1. Понятие о системе команд микропроцессоров. Форматы команд и
методы адресации микроконтроллеров.
2.Классификация команд микроконтроллера и особенности их
применения.
Литература
1.Курс лекций по дисциплине «Информационно-упрвляющие
технологии », Севастополь, ЧВВМУ, 2015 г,
лекция № 25
(электронный вариант).
2. Шпак Ю.А. Программирование на языке С для AVR и PIC
микроконтроллеров. –СПб.:»КОРОНА-ВЕК», 2011. -544 с.,ил.
2
1. Понятие о системе команд микропроцессоров.
Форматы команд и методы адресации микроконтроллеров.
Каждая команда, выбираемая (читаемая) из памяти
процессором, определяет алгоритм поведения процессора на
ближайшие несколько тактов. Код команды говорит о том,
какую операцию предстоит выполнить процессору и с какими
операндами (то есть кодами данных), где взять исходную
информацию для выполнения команды и куда поместить
результат (если необходимо). Код команды может занимать от
одного до нескольких байт (слов), причем процессор узнает о
том, сколько байт команды ему надо читать, из первого
прочитанного им байта или слова. В процессоре код команды
расшифровывается и преобразуется в набор микроопераций,
выполняемых
отдельными
узлами
процессора.
Но
разработчику микропроцессорных систем это знание не
слишком важно, ему важен только результат выполнения той
или иной команды.
3
Форматы команд микропроцессоров (на примере К580ВМ80)
Основной формат команды МП (МК) состоит из двух
основных полей:
поля кода операции OPCODE (КОП) и поля ADDR
для представления
адреса операнда, над которым производится операция или сам операнд.
Форматы команд
микропроцессора
КР580ВМ80
4
Форматы команд микроконтроллеров.
Форматы команд
микроконтроллеров семейства AVR
5
Методы адресации микроконтроллеров.
Каждая команда, выбираемая (читаемая) из памяти
процессором, определяет алгоритм поведения процессора на
ближайшие несколько тактов. Код команды говорит о том,
какую операцию предстоит выполнить процессору и с какими
операндами (то есть кодами данных), где взять исходную
информацию для выполнения команды и куда поместить
результат (если необходимо). Код команды может занимать от
одного до нескольких байт (слов), причем процессор узнает о
том, сколько байт команды ему надо читать, из первого
прочитанного им байта или слова. В процессоре код команды
расшифровывается и преобразуется в набор микроопераций,
выполняемых
отдельными
узлами
процессора.
Но
разработчику микропроцессорных систем это знание не
слишком важно, ему важен только результат выполнения той
или иной команды.
6
Методы адресации микроконтроллеров.
Неявная форма обеспечивает передачу адресной информации
в поле кода операции, т.е. сама операция несет информацию о
месте нахождения одного или всех операндов, используемых в
ней. Неявная форма, связывая часть адресной информации с
операцией, сужает ее действие, но длина машинной команды
при этом уменьшается, вследствие того, что отсутствует
адресное поле.
Явная форма представления более гибкая, вследствие того,
что одна и та же команда может использоваться для адресации
различных объектов, но требует увеличения поля команды, что
снижает эффективность объектного кода.
7
Методы адресации микроконтроллеров AVR.
(разрядность команды 16 бит)
8
Методы адресации микроконтроллеров.
9
Методы адресации микроконтроллеров.
10
Методы адресации микроконтроллеров.
11
Методы адресации микроконтроллеров.
12
Методы адресации микроконтроллеров.
13
2. КЛАССИФИКАЦИЯ КОМАНД МИКРОКОНТРОЛЛЕРА И
ОСОБЕННОСТИ
ИХ ПРИМЕНЕНИЯ.
Система команд микроконтроллеров ATMEL семейства AVR
имеет определенные отличия, свойственные всем
микроконтроллера. Одной из отличительных особенностей
микроконтроллеров AVR является то, что почти все команды
выполняются за 1 тактовый цикл. Исключение составляют
команды перехода. Это существенно увеличивает
производительность микроконтроллера даже при относительно
невысокой тактовой частоте.
Все команды можно классифицировать на 5 типов:
1. Арифметические команды.
2. Логические команды.
3. Команды перехода.
4. Команды пересылки (передачи) данных.
5. Побитовые команды и команды тестирования битов.
14
2. КЛАССИФИКАЦИЯ КОМАНД МИКРОКОНТРОЛЛЕРА И
ОСОБЕННОСТИ
ИХ ПРИМЕНЕНИЯ.
Команды пересылки данных не требуют выполнения никаких
операций над операндами. Операнды просто пересылаются
(точнее, копируются) из источника (Source) в приемник
(Destination). Источником и приемником могут быть
внутренние регистры процессора, ячейки памяти или
устройства ввода/вывода. АЛУ в данном случае не
используется.
Арифметические команды выполняют операции сложения,
вычитания, умножения, деления, увеличения на единицу
(инкрементирования),
уменьшения
на
единицу
(декрементирования) и т.д. Этим командам требуется один или
два входных операнда. Формируют команды один выходной
операнд.
15
2. КЛАССИФИКАЦИЯ КОМАНД МИКРОКОНТРОЛЛЕРА И
ОСОБЕННОСТИ
ИХ ПРИМЕНЕНИЯ.
Логические команды производят над операндами логические
операции, например, логическое И, логическое ИЛИ, исключающее
ИЛИ, очистку, инверсию, разнообразные сдвиги (вправо, влево,
арифметический сдвиг, циклический сдвиг). Этим командам, как и
арифметическим, требуется один или два входных операнда, и
формируют они один выходной операнд.
Команды переходов предназначены для изменения обычного порядка
последовательного выполнения команд. С их помощью организуются
переходы на подпрограммы и возвраты из них, всевозможные циклы,
ветвления программ, пропуски фрагментов программ и т.д. Команды
переходов всегда меняют содержимое счетчика команд. Переходы
могут быть условными и безусловными. Именно эти команды
позволяют строить сложные алгоритмы обработки информации.
16
2. КЛАССИФИКАЦИЯ КОМАНД МИКРОКОНТРОЛЛЕРА И
ОСОБЕННОСТИ
ИХ ПРИМЕНЕНИЯ.
Команды работы с битами
Особую группу команды микроконтроллеров составляют
команды для работы с битами. Эта группа команд позволяет
обращаться (читать состояние, сбрасывать в 0, устанавливать в
1, инвертировать и т.д.) отдельные биты регистров
микроконтроллера. Наличие таких команд связано с
относительной ограниченностью аппаратных ресурсов МК и
необходимостью
точечного
управления
имеемыми
аппаратными средствами при минимальном количестве команд
обращения к аппаратным средствам.
Системные команды осуществляют разрешение (EI) или
запрещение (DI) внешних прерываний, формируют пустую
операцию NOP (например для временной задержки),
останавливают процессор ( операция HLT).
17