Учебный стенд НТЦ-31.100
"Изучение программного обеспечения лабораторного стенда и системы команд микроконтроллера семейства AVR"
Цель работы. Изучить состав и особенности выполнения команд микроконтроллера, программное обеспечение лабораторного стенда, освоить технику программной симуляции работы микроконтроллера семейства AVR на примере построения элементарных конструкций.
1.1 В ходе выполнения работы необходимо:
– составить фрагменты программ для выполнения заданных операций;
– набрать тексты программ в редакторе программы «IAR Embedded Workbench for Atmel AVR kickstart», откомпилировать и загрузить в отладчик;
– исследовать выполнение команд, входящих в состав программ;
– составить отчет о выполнении работы.
1.2 После выполнения работы необходимо ответить на контрольные вопросы.
Система команд микроконтроллеров AVR семейства Mega весьма развита и насчитывает в различных моделях от 130 до 135 различных команд , которые по функциональному признаку могут быть разделены на пять групп:
– арифметические команды и команды сдвига;
– логические команды;
– команды передачи управления;
– команды пересылки данных;
– команды битовых операций
– команды управления системой.
Большинство команд имеют формат в одно 16-разрядное слово. Исключение составляют команды у которых одним из операндов является 16-битный адрес. Длительность выполнения команд составляет от одного до четырех тактов задающего генератора (зависит от типа команды).
В таблицах 1 - 6 приведены основные сведения о командах, такие как мнемоническое обозначение команды, ее описание, число тактов, необходимых для ее выполнения, а также флаги регистра состояния, на которые воздействует эта команда. Обозначения используемые при описании команд приведены в таблице 7.
Таблица 1 – Группа команд логических операций
Таблица 2 – Группа команд арифметических операций и операций сдвига
Таблица 3 – Группа команд битовых операций
Таблица 4 – Группа команд пересылки данных
Таблица 5 – Группа команд передачи управления
Продолжение таблицы 5
Таблица 6 – Группа команд управления системой
Таблица 7 Обозначения использованные при описании команд
Обозначение, символ |
Описание |
SREG |
Регистр состояния микроконтроллера |
С |
Флаг переноса (0-й бит регистра SREG) |
Z |
Флаг нуля (1-й бит регистра SREG) |
N |
Флаг отрицательного значения (2-й бит регистра SREG) |
V |
Флаг переполнения дополнительного кода (3-й бит регистра SREG) |
S |
Флаг знака (4-й бит регистра SREG); S = N V |
H |
Флаг половинного переноса (5-й бит регистра SREG) |
T |
Пользовательский флаг (6-й бит регистра SREG) |
I |
Флаг общего разрешения прерываний (7-й бит регистра SREG) |
Регистры и операнды |
|
Rd |
Регистр-приемник (иногда также регистр-источник) в регистровом файле |
Rr |
Регистр-источник в регистровом файле |
К |
Константа (данные) |
к |
Адрес — константа |
b |
Номер бита POH или РВВ @...7) |
s |
Номер бита регистра состояния SREG @...7) |
Продолжение таблицы 7
Обозначение, символ |
Описание |
|
X, Y, Z |
Индексные регистры (X = R27:R26, Y = R29:R28, Z = R31:R30) |
|
I/O |
Регистр ввода/вывода |
|
А |
Адрес в пространстве ввода/вывода |
|
q |
Смещение при относительной косвенной адресации F-битное значение) |
|
. |
Разделитель между названием (адресом) регистра и номером бита |
|
[XX] |
Содержимое ячейки памяти данных по адресу XX |
|
{XX} |
Содержимое ячейки памяти программ по адресу XX |
|
Операции |
||
¯ |
Инверсия |
|
• |
Логическое И |
|
|
Логическое ИЛИ |
|
Исключающее ИЛИ |
||
Система |
||
PC |
Счетчик команд |
|
STACK |
Текущий уровень стека |
|
SP |
Указатель стека |
|
Флаги |
||
Команда воздействует на флаг |
||
0 |
Флаг сбрасывается командой в 0 |
|
1 |
Флаг устанавливается командой в 1 |
|
- |
Команда не влияет на состояние флага |
|
3 Интегрированная среда «IAR Embedded Workbench for Atmel AVR kickstart»
Программа «IAR Embedded Workbench for Atmel AVR kickstart»
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.