Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Учебный стенд НТЦ-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»
Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.