- •Введение
- •Список сокращений
- •1. Архитектура современных микропроцессоров
- •1.1. Термины и определения
- •1.2. Микропроцессорные системы управления
- •1.3. Архитектурные особенности микропроцессоров
- •1.3.1. Гарвардская и принстонская архитектура
- •1.3.2. Архитектура системы команд (cisc и risc)
- •1.4. Корпус микропроцессоров
- •1.5. Технология изготовления кристаллов
- •1.6. Общие положения об обозначении импортных цифровых микросхем
- •1.6.1. Система обозначений микросхем производства Atmel
- •2. Структура микропроцессорной системы
- •2.1. Модуль питания
- •2.2. Модуль сброса и синхронизации
- •2.2.1. Сторожевой таймер
- •2.2.2. Тактирование системы
- •2.3. Модуль памяти
- •2.3.1. Супервизор напряжения
- •2.3.2. Память микропроцессорного устройства
- •2.4. Контроллер прерываний
- •2.5. Терминал
- •2.6. Центральный процессор
- •2.7. Суперскалярный конвейер
- •3. Программирование микропроцессорных устройств
- •3.1. Основные этапы проектирования и отладки программного обеспечения
- •3.2. Языки высокого уровня
- •3.3. Язык Ассемблера
- •3.3.1. Способы адресации на языке ассемблера
- •3.4. Алгоритм выполнения команды
- •3.5. Типы данных микропроцессора
- •4. Микропроцессоры с архитектурой х86
- •4.1. Микропроцессор Pentium
- •4.2. Микропроцессор Pentium 4
- •4.3. Микропроцессоры компании amd
- •4.4. Микропроцессор к7
- •5. Микропроцессоры с архитектурой x64
- •5.1.Микропроцессор Itanium ia-64
- •Отличия архитектур процессоров х86 и ia-64
- •5.2. Микропроцессоры семейства Hammer
- •Микропроцессоры c архитектурой power pc и arm
- •6.1. Микропроцессоры с архитектурой power
- •Процессоры arm
- •6.2. Микропроцессоры с архитектурой arm
- •4. Микроконтроллеры семейства mcs-51
- •4.1. Структура микроконтроллеров семейства mcs-51
- •4.2 Способы адресации и система команд микроконтроллеров семейства mcs-51
- •4.3. Функции выводов
- •5. Микроконтроллеры семейства Motorola
- •5.1. Общая структура микроконтроллеров семейства 68нс05/705/08
- •4.2.2. Регистровая модель микроконтроллеров семейства 68нс05/705/08
- •4.2.3. Способы адресации и система команд микроконтроллеров семейства 68нс05/705/08
- •6. Микроконтроллеры avr компании Atmel
- •5.1. Архитектура микроконтроллеров avr
- •5.2. Процессор микроконтроллера avr
- •5.3. Запоминающее устройство FlashRom
- •5.4. Периферийные устройства
- •Микроконтроллеры семейства piCmicro
- •12.1. Младшие подсемейства picMicro
- •Основные характеристики микроконтроллеров младшего подсемейства
- •12.2. Архитектура микроконтроллеров младшего подсемейства
- •Стандартный набор операций алу микроконтроллеров PlCmicro
- •12.3. Среднее подсемейство picMicro
- •12.5. Старшее подсемейство picMicro
- •12.6 Архитектура микроконтроллеров старшего подсемейства
- •Ввод-вывод данных микропроцессорной системы
- •6.1 Аналоговый ввод/вывод микропроцессорной системы
- •6.2. Таймеры микропроцессорной системы
- •6.3. Параллельный ввод-вывод данных
- •6.2.2. Асинхронный последовательный обмен
- •6.2.3 Синхронный последовательный обмен
- •6.3. Микроконтроллерная сеть
- •6.3.1 Протокол i2c
- •6.3.2. Протокол can
- •Характеристика протокола can
- •Выбор скорости передачи данных исходя из расстояния
- •6.3.3. Протокол rs-485 и rs-422
- •Стандартные параметры интерфейсов rs-422 и rs-485
- •Лекция 7 Микропроцессорные системы управления
- •7.1. Подключение светодиодов
- •7.2. Подключение 7-сегментных светодиодных индикаторов
- •7.3. Ввод с матричной клавиатуры
- •7.4. Управление жидкокристаллическим индикатором
- •7.5. Управление соленоидом и реле
- •7.6. Управление электродвигателем
- •6.5.1. Управление шаговым двигателем
- •7.6. Управление мощной нагрузкой
- •Лекция 8 Цифровая обработка сигналов
- •8.1. Типовые задачи решаемые цос
- •8.2. Способы реализации алгоритмов цос
- •8.3. Структура процессора цифровой обработки сигналов
- •8.4. Пцос с фиксированной и плавающей точкой
- •8.5. Гибридные процессоры
- •Библиографический список
- •Фирмы-производители 8-, 16- и 32-разрядных микроконтроллеров
- •Высокопроизводительные 8-разрядные risc микроконтроллеры семейства avr
- •1.6.2. Система обозначений микросхем производства
- •1.6.3. Система обозначений микросхем производства Motorola
- •1.6.4. Система обозначений микросхем производства
4.2 Способы адресации и система команд микроконтроллеров семейства mcs-51
Система команд семейства MCS-51 ориентирована на организацию гибкого ввода-вывода данных через универсальные порты Р0…Р3 и первичную обработку информации.
Разработчик изделия работает с системой команд при создании программы на языке ассемблера.
Каждая команда сообщает процессору выполняемую операцию и методы доступа к операндам. Командная строка языка ассемблер содержит метку (символический адрес), мнемонику (символическое имя) команды, операнды, комментарий. Имя команды однозначно связано с выполняемой ею операцией (действием). Число операндов в разных командах МК MCS-51 находится в диапазоне от нуля до трех, операнды разделяются запятыми. При двух операндах первым указывается приемник, вторым источник.
Методы адресации представляют собой набор механизмов доступа к операндам.
Регистровая адресация. Операнд находится в одном из регистров общего назначения R0..R7 банка, номер которого определяется разрядами RS0, RS1 регистра PSW. Регистровая адресация позволяет в одном байте указать код операции и адрес операнда. Поскольку операнд находится во внутренней ячейке, не требуется циклов обращения к внешней памяти данных, например, команда пересылки, имеет следующий вид: MOV A, Rn.
Прямая адресация. Операнд находится во внутренней памяти данных, адрес ячейки определяет отдельный байт команды. Таким образом, команды с использованием прямой адресации имеют минимум два байта, доступны только 256 ячеек, обращения за операндом к внешней памяти не требуется.
Косвенно-регистровая адресация. Этот метод адресации использует регистры R0 и R1 в качестве указателей. Регистры берутся из банка, определяемого разрядами RS0, RS1 регистра PSW. Содержимое этих регистров используется как адрес для обращения к ячейке внутренней памяти данных, хранящей операнд. Команда получается однобайтной, номер регистра указывает младший бит. Длина команды при этом соответствует длине команды с использованием регистровой адресации, но косвенная адресация дает доступ ко всему пространству внутренней памяти данных. Формат команды пересылки с использованием косвенно-регистровой адресации: MOV A, @R1.
Непосредственная адресация. Операнд находится в отдельном байте команды, это константа. Таким образом, команды с использованием непосредственной адресации имеют минимум два байта, обращения за операндом к внешней памяти не требуется. Формат команды пересылки имеет следующий вид MOV A, #data.
Всего в системе команд семейства MCS-51 можно выделить 5 групп операций.
Арифметические операции, такие как ADD, ADDC, SUBB, MUL, DIV, INC, DEC обеспечивают выполнение операций сложения и вычитания (в том числе с учетом переноса) над целочисленными 8-разрядными операндами, умножение, деление, инкремент и декремент регистров и ячеек внутренней памяти данных соответственно. Получающийся 16-разрядный результат хранится в регистрах А и В. Результатом выполнения арифметических команд является, кроме нового содержимого аккумулятора, измененное значение регистра PSW.
Логические операции конъюнкции (И), дизъюнкции (ИЛИ), Исключающее ИЛИ реализуются с помощью команд ANL, ORL, XRL, использующих различные способы адресации операндов. Логические операции выполняются побитно над соответствующими парами битов операндов, которые располагаются в регистрах или внутренней памяти. Результат операции размещается в аккумуляторе или прямо - адресуемой ячейке внутренней памяти.
Операция инверсии реализуется только над содержимым аккумулятора и выполняется с помощью команды CPL A. Команда CLR A устанавливает нулевое значение содержимого аккумулятора. Выполнение некоторых логических команд влияет на значение флага С (перенос) регистра PSW.
Операции пересылки данных осуществляют передачу данных между ячейками внутренней памяти данных (команды MOV), внешней памяти данных (команды MOVX) и аккумулятором. Существуют две команды MOVC, позволяющие читать в аккумулятор содержимое памяти программ. К этой группе относятся парные команды PUSH и POP, осуществляющие загрузку и выгрузку содержимого прямо адресуемой ячейки в стек (из стека). Имеются четыре команды взаимного обмена информацией между ячейками внутренней памяти данных (ХСН и XCHD). Команды пересылки данных значения флагов в регистре PSW не изменяют.
Операции работы с битами – эти команды устанавливают в «1» (SETB) или «0» (CLR) прямо адресуемый бит внутренней памяти данных, изменяют его значение на противоположное (CPL), выполняют операции AND и OR над флагом переноса С и прямо адресуемым битом (ANL и ORL), осуществляют пересылку значения между флагом С и прямо адресуемым битом (MOV), осуществляют передачу управления по состоянию флага С или прямо адресуемого бита (JC, JNC, JB, JNB, JBC). Команды этой группы, выполняющие логические операции и осуществляющие пересылку значения бита, изменяют значение флага С регистра PSW. Остальные команды на флаги не действуют.
Передача управления может осуществляться безусловно или по условию, без возврата или с возвратом. В последнем случае для возврата необходимо хранить состояние процессора. Система команд MCS-51 кроме обычных «длинных» переходов с использованием 16-разрядного адреса унаследовала от семейства MCS-48 команды передачи управления с «коротким» 11-разрядным адресом. Группа команд передачи управления включает четыре команды безусловного перехода без возврата («ультракороткая» SJMP, «короткая» AJMP, «длинная» LJMP и переход по значению A+DPTR в команде JMP), две команды безусловного перехода с возвратом («короткая» ACALL и «длинная» LCALL), восемь команд условного перехода без возврата. Имеются две команды возврата: из обычной подпрограммы команда RET и из подпрограммы обработки прерывания команда RETI. Завершает эту группу и всю систему команд NOP - «нет операции». Команды передачи управления значения флагов в регистре PSW не изменяют, кроме команд условного перехода CJNE, влияющих на значение флага С.
