- •Часть I. Комбинационные и последовательностные цифровые устройства
- •Раздел 1 Комбинационные цифровые устройства
- •1.Основные термины и определения.
- •3.Задание логических функций с элементами структурных формул (сднф, скнф).
- •Смысловое (вербальное) описание цу
- •2.Табличное описание (представление) мажоритарного устройства
- •Мажоритарное устройство
- •3.Математическое описание мажоритарного устройства
- •4. Схемное представление мажоритарного устройства
- •5. Физическая реализация мажоритарного устройства
- •Раздел 2 Конечные автоматы (ка) с малым объемом памяти (последовательностные устройства - пцу)
- •Принцип аналого-цифрового и цифроаналогового преобразования.
- •2. Принцип аналого-цифрового преобразования
- •3. Ацп последовательного счета
- •4. Ацп с двойным интегрированием
- •5. Ацп компенсационного типа
- •6. Ацп по принципу напряжение-частота
- •7. Ацп прямого преобразования
- •Часть II: Микропроцессорные системы
- •Амосов в.В. Схемотехника и средства проектирования цифровых устройств. – сПб: бхв-Петербург, 2007г.
- •Микушин а., Сажнев а., Сединин в. Цифровые устройства и микропроцессоры. — сПб.: бхв-Петербург, 2010 г. — 832 с.
- •Структура (архитектура) однокристального восьмиразрядного микропроцессора мп580вм80
- •Принцип работа мп
- •([Fb])←(a). Из аккумулятора пересылаются данные в порт, адрес которого (fb) во 2-м байте команды (б2).
- •(В)←7Вh. В регистр в заносится 8-ми разрядная (одно байтная) константа 7Вh 16-й системы счисления
- •Режимы адресации в мп
- •Прямая адресация – код адреса в команде является исполнительным адресом обращения к памяти или устройству ввода вывода. Примеры:
- •Регистровая адресация– это адресация, при которой операнд содержится в одном из регистров мп.
- •Непосредственная адресация – это адресация, при которой операнд находится в самой команде.
- •Регистровая косвенная адресация – это адресация, при которой адрес ячейки памяти с операндом хранится в регистровой паре h-l.
- •1. Команды пересылки данных
- •Регистровая пересылка
- •Пересылка константы
- •Загрузка константы в пару регистров
- •1.4. Косвенная регистровая пересылка данных
- •Вычитание содержимого регистра из аккумулятора
- •Декрементные команды (аналогично вычитающему двоичному счетчику)
- •Инкрементные команды (аналогично суммирующему двоичному счетчику).
- •Логические операции (and, or, not, )
- •3.1. Логическое умножение содержимого аккумулятора с константой
- •Команды ввода и вывода данных.
- •Команда обращения к подпрограмме (call).
- •Команда hlt – останов выполнения программы
- •Пустая команда
- •Особенности разработки программ двоичных счетчиков
- •Алгоритм программы
- •Построение счетчиков на двух регистрах.
- •Построение программы с управляющими сигналами
- •4. Разработка программы счетчика табличным методом.
- •Алгоритм программы (основной) формирователя сигналов сложной формы
- •Программа формирователя сигналов сложной формы
- •Организация прерывания работы микропроцессоров Классификация прерываний в микропроцессоре
- •Организация прерываний в мп кр 580вм80 (симулятор Avsim85)
- •Интерфейс мп кр58вм80
- •Структура системного микроконтроллера.
- •Перспектива развития микропроцессорной техники Современные микроконтроллеры (мк). Определение и классификация микроконтроллеров.
- •Особенности построения мк avr фирмы «Atmel»
- •Память микроконтроллера
- •Особенности разработки и отладки программ для микроконтроллеров avr
- •2.1. Ассемблер
- •2.2. Формат программ на ассемблере
- •2.3. Система команд микроконтроллеров avr
- •2.4. Директивы транслятора ассемблера
- •2.5. Средства разработки программ avr – mk
Особенности разработки программ двоичных счетчиков
Учебные вопросы:
1. Двоичные счетчики с заданной разрядностью, начальным (Qнач) и конечным (Qкон) значениями счета.
2. Построение счетчиков на двух регистрах.
3. Построение программы с управляющими сигналами.
4. Разработка программы счетчика табличным методом.
Двоичные счетчики с заданной разрядностью, начальным (Qнач) и конечным (Qкон) значениями счета.
Постановка задачи: разработать вычитающий четырехразрядный двоичный счетчик с параметрами:
Qнач.=5, Qкон=8
m – разрядность счетчика
Сmax=
Примечание: в аккумуляторе восемь разрядов. В четырехразрядном счетчике используются только четыре младших разряда, следовательно, необходимо отсечь старшие разряды. Для этого используется команда ANI 0Fh.
Алгоритм программы
Фрагмент программы:
Begin:
MVI C,Qn ; C=Qn Бл.1
M2: MOV A,C ; A=C Бл.2
OUT outport2 ; вывод Qi
DCR C ; C=C-1 Бл.3
MOV A,C
ANI 0Fh Бл.4
MOV C,A
CPI Qk ; (A-Qk) в этой
команде только меняются Бл.5
признаки S, Z, P
JZ Begin
JMPM2
END
В рассмотренной программе Cmax= ,
где m=8, следовательно, Сmax не более 255 .
На практике применяются счетчики с Сmax> 255. Тогда могут применяться счетчики на двух регистрах.
Построение счетчиков на двух регистрах.
МП обладает аппаратной возможностью формирования признака нулевого результата только для одного регистра, а не для регистровой пары. Поэтому пользователю (разработчику программ) необходимо формировать признак нулевого результата на программном уровне.
Фрагмент из программы
Delay:
LXIB, DEL ; пересылается константа
в регистровую пару В-С
M3:
NOP ; пустая команда для увеличения
времени цикла
NOP
MOVA,C
ORA B ; (A)←(A)V(B)
JNZM3
JMPMi ; метка основной программы
END
Построение программы с управляющими сигналами
Если МПС управляет устройством, то на вход МПС поступает сигнал, по результатам которого формируется управляющий сигнал. Пусть двоичный счетчик управляется двумя сигналами, а именно, сигнал Х1 – сброс счетчика в нулевое состояние (начальное) и Х2 – останов счетчика.
Примечание: Эти сигналы используются в программной реализации проектируемого устройства в курсовой и лабораторной работах.
Управляющий сигнал обеспечивает сброс счетчика в начальное состояние, если Х1=0 в разряде регистра А1 (аккумулятор), а Х2=0 в разряде регистра А3 (аккумулятор) : обеспечивает останов счета. Cигналы управления вводятся в аккумулятор МП побайтно.
Рассмотрим последовательность применения управляющих сигналов.
а) выделение сигнала Х1. Для этого применим команду логического умножения (конъюнкция) АNIX, где Х – число (соnst), позволяющее выделить любой разряд (ы) регистра (аккумулятора). В нашем примере константа 02 (ANI 02), которая позволяет выделить разряд сигнала Х1.
б)определение значенияразряда (1 или 0) управляющего сигналаХ1: применяем команды JZ или JNZ.
Аналогично для сигнала Х2:
а) выделение сигнала Х2 (сонстанта 08):
б)определение значения разряда сигнала Х2: применяем команды JZ или JNZ.
Пусть Х1 =Х2=1, то есть рассмотрим ситуацию, когда счетчик работает без воздействия управляющих сигналов: