- •Роль микропроцессорной техники в мехатронных устройствах.
- •Способы представления двоичного кода в электронных устройствах.
- •История развития микропроцессоров.
- •Основные понятия. Микропроцессор, физическая и логическая организация, архитектура.
- •Основные типы архитектур. Неймановская и гарвардская архитектура.
- •Основные понятия. Программа, команда, объектный код, мнемокод.
- •Командный цикл. Фазы командного цикла.
- •Структурная схема микро-эвм на базе микропроцессора.
- •Регистры данных микропроцессора.
- •Регистры адреса микропроцессора.
- •Специальные регистры микропроцессора. Флаги, генерируемые микропроцессором
- •Регистры общего назначения микропроцессора.
- •Счетчик команд микропроцессора. Работа счетчика команд.
- •Понятие стека, назначение и организация.
- •Указатель стека микропроцессора. Работа указателя стека.
- •Классификация микропроцессоров по числу бис в комплекте и по разрядности.
- •Классификация микропроцессоров по назначению и виду обрабатываемых сигналов.
- •Классификация микропроцессоров по характеру временной организации работы и по количеству выполняемых программ
- •Особенности программного обеспечения микропроцессорных систем. Понятие транслятора. Виды трансляторов.
- •Языки Ассемблера. Номенклатура, характеристики
- •Элементы языка ассемблера для 8-ми разрядного микропроцессора.
- •Директивы языка ассемблера. Пример программы на языке ассемблера.
- •Преимущества применения однокристальных микропроцессоров при проектировании электронных измерительных устройств.
- •Состав регистров однокристального микропроцессора к1816ве48.
- •Банки рабочих регистров микропроцессора к1816ве48. Назначение и особенности.
- •Счетчик команд, указатель стека и регистр psw микропроцессора к1816ве48.
- •Флаги признаков микропроцессора к1816ве48
- •Организация памяти микропроцессора к1816ве48. Пространство внутренней памяти данных dseg.
- •Организация памяти микропроцессора к1816ве48. Пространство внутренней памяти программ cseg.
- •Организация памяти микропроцессора к1816ве48. Пространство внешней памяти данных xseg.
- •Система ввода-вывода микропроцессора к1816ве48. Порты ввода-вывода.
- •Службы реального времени микропроцессора к1816ве48. Таймер-счетчик: организация, возможности, программирование.
- •Службы реального времени микропроцессора к1816ве48. Система прерываний от внешнего источника запросов.
- •Службы реального времени микропроцессора к1816ве48. Система прерываний от таймера.
- •Генератор тактовых импульсов микропроцессора к1816ве48.
Состав регистров однокристального микропроцессора к1816ве48.
О МЭВМ К1816ВЕ48 имеет следующие технические характеристики: - шина данных – 8 разрядов; - шина адресов – 12 разрядов; - адресное пространство – 212 = 4 кбайта; - внутреннее ПЗУ – 1 кбайт; - расширение ПЗУ – до 3 кбайт; - внутреннее ОЗУ – 64 байта; - внешнее ОЗУ – 256 байт (4 страницы по 64 байта); - команды - 1 или 2 байта; - тактовая частота fт - 6МГц; - прерывания - 2 уровня; - ввод-вывод данных – 3 порта
В состав набора входит 8-разрядный аккумулятор А, который выполняет свои обычные функции промежуточного хранения данных. При выполнении ряда операций А является как источником операнда, так и приемником результата операции. Ориентация на аккумулятор, который подразумевает неявную адресацию в большинстве команд различного типа, позволила существенно сократить длину программ и, следовательно, более экономно использовать объем управляющей памяти МС. Среди типовых признаков результата операции – только два: CY – основной перенос из старшего разряда и АС – формируемый командами сложения и используемый командой DAA дополнительный перенос из младшей тетрады в старшую. Если CY представляет основное средство для организации многобайтовых операций, то АС поддерживает десятичную арифметику в 2/10- коде упакованного формата. Оба признака входят в состав 8-разрядного слова состояния программы PSW.
Банки рабочих регистров микропроцессора к1816ве48. Назначение и особенности.
Резидентная память данных емкостью 64 байта имеет в своем составе два банка рабочих регистров 0-7 и 24-31 по восемь регистров в каждом. Выбор одного из банков регистров выполняется по команде SEL RB. Рабочие регистры доступны по командам с прямой адресацией, а все ячейки РПД доступны по командам с косвенной адресацией. В качестве регистров косвенного адреса используются регистры R0, R1 и R0*, R1* (рисунок 5).
Ячейки РПД с адресами 8-23 адресуются указателем стека из ССП и могут быть использованы в качестве 8-уровневого стека. В случае, если уровень вложенности подпрограмм меньше восьми, незадействованные в стеке ячейки могут использоваться как ячейки РНД. При переполнении стека, регистр-указатель стека, построенный на основе 3- битного счетчика, переходит из состояния 7 в состояние 0. Малая емкость стека ограничивает число возможных внешних источников прерывания в МК-системе. МК48 не имеет команд загрузки байта в стек или его извлечения из стека, и в нем фиксируется только содержимое счетчика команд и старшая тетрада ССП (флаги). В силу этого разработчику необходимо следить за тем, чтобы вложенные подпрограммы не использовали одни и те же рабочие регистры.
Счетчик команд, указатель стека и регистр psw микропроцессора к1816ве48.
Память программ и память данных в МК48 физически и логически разделены. Память программ реализована в резидентном СППЗУ емкостью 1 Кбайт. Максимальное адресное пространство, отводимое для программ, составляет 4 Кбайта. Счетчик команд (СЧ) содержит 12 бит, но инкрементируются в процессе счета только младшие 11 бит. Поэтому счетчик команд из предельного состояния 7FFH (если только по этому адресу не расположена команда передачи управления) перейдет в состояние 000Н. Состояние старшего бита счетчика команд может быть изменено специальными командами (SEL МВ0, SEL МB1), Подобный режим работы счетчика команд позволяет создать два банка памяти емкостью по 2 Кбайта каждый. Карта адресов памяти программ показана на рисунке 4.
В резидентной памяти программ имеется три специализированных адреса:
- адрес 0, к которому передается управление сразу после окончания сигнала СБР, по этому адресу должна находиться команда безусловного перехода к началу программы;
- адрес 3, по которому расположен вектор прерывания от внешнего источника;
- адрес 7, по которому расположены вектор прерывания от таймера или начальная команда подпрограммы обслуживания прерывания по признаку переполнения таймера/счетчика.
В микроконтроллерной системе, работающей с внешней памятью программ, возникает проблема размещения подпрограмм в двух банках памяти. Проблема эта связана с тем, что микроконтроллер не имеет средств считывания и анализа флага МВ, равного содержимому старшего бита счетчика команд СК11. Поэтому в каждый текущий момент исполнения программы, состоящей из потока вызовов подпрограмм, нет возможности определения номера банка памяти, из которого осуществляется выборка. Так как переходы между банками выполняются только по командам SEL MB, необходимо следить за тем, чтобы подпрограммы, взаимно вызывающие друг друга, располагались в пределах одного банка памяти. В противном случае возникает необходимость модификации признака МВ в вызываемой подпрограмме и восстановления его при возврате в вызывавшую подпрограмму. Но если вызов такой подпрограммы носит условный характер, то проблема восстановления может оказаться неразрешимой.
Стек служит для промежуточного хранения старшей тетрады PSW и адреса возврата при обработке прерываний и вызовах подпрограмм. Набор флагов CY, AC, F0, BS вместе с 12-ю разрядами PC образуют 2-х байтовый объект, где старшие 4 разряда - флаги. Стек заполняется в сторону увеличения адресов.
Указатель стека хранится в PSW и указывает на первую свободную ячейку стека. Размер стека ограничен восемью элементами (16 байт). Стек занимает область данных с адресами 08h -17h.
+Указатель стека указывает на первую свободную ячейку в системном стеке. Указатель хранится в PSW и занимает 3 бита т.е. возможно только 8 элементов стека. При занесении в стек большего числа элементов происходит переполнение и переход через границу на начало. Обратное переполнение возможно, когда пытаются получить данные из пустого стека.