October 19 2017 19:09:23
Навигация
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации .

Забыли пароль?
Запросите новый здесь.
процесс формирования триггером импульса
ОСНОВЫ ПОСТРОЕНИЯ МИКРОПРОЦЕССОРНЫХ СИСТЕМ

Временная диаграмма, отображающая процесс формирования триггером импульса Н-уровня приведена на рис. 2.21. Согласно диаграмме, в момент времени t0 ЦП выдает на ША адресный код УЗС — в данном случае 00h. В соответствии с этим кодом ДА устанавливает сигнал img230 L-уровня, после чего на линию D0 помещается логическая 1. Далее, в момент времени t1 ЦП вырабатывает низкоуровневый сигнал записи img231, поступающий после img232 на вход DD3. В результате операции ИЛИ-НЕ между img233 и img234 (img235) микросхема DD3 на отрезке времени [t1, t2] выдаст импульс WR Н-уровня, передний фронт которого осуществит защелкивание в триггере DD2 логической 1, ранее

img236

Рис. 2.20


img237

Рис. 2.21

установленной на линии D0. В этом случае в момент t1 выход триггера Q переключится из 0 в 1. Обратное переключение выхода произойдет в момент t3 при записи 0 — таким образом будет сформирован импульс длительностью [t1, t3].

Для того, чтобы D-триггер вырабатывал импульсы со звуковой частотой, существенно меньшей той, с которой работает микропроцессор, необходима пауза между моментами времени защелкивания единиц и нулей. Длительность паузы задается программно, путем циклического выполнения микропроцессором одной или нескольких команд.

Приведенная ниже программа реализует запись в триггер 65535 импульсов с частотой, определяемой временем выполнения подпрограммы временной задержки DELAY.

Программа 2.2

МЕТКА МНЕМОКОД КОММЕНТАРИЙ

LXI SP 0900
Начало программы
Запись в регистр SP адреса вершины стека.


LXI B, FFFF Запись в регистровую пару ВС числа повторений цикла START (65535 повторений).
START: XRA А
Начало цикла START.
Поразрядное логическое исключающее ИЛИ аккумулятора с самим собой, в результате чего его разряды устанавливаются в 0 (очистка).

OUT 00 Вывод содержимого аккумулятора (нули) в УВВ (D-триггер) с адресом 00h.

CALL DELAY Вызов подпрограммы, формирования временной паузы.

CMA Инвертирование содержимого аккумулятора, в результате чего все его разряды установятся в 1. После этой операции аккумулятор будет содержать код FFh.

OUT 00 Вывод содержимого аккумулятора (FFh) в УВВ.

CALL DELAY Вызов подпрограммы, формирования временной паузы.

DCX B Уменьшение содержимого регистровой пары ВС на 1.

JNZ START
Если результат не равен 0, то переход к метке START.
Конец цикла START.

HLT Конец программы.

RST7

Подпрограмма 2.2

МЕТКА МНЕМОКОД КОММЕНТАРИЙ
DELAY: LXI D, FFFF
Начало подпрограммы DELAY.
Запись в регистровую пару DE числа повторений цикла CYCLE.
CYCLE: DCX D
Начало цикла CYCLE.
Уменьшение регистровой пары DE на 1.

JNZ CYCLE
Если результат не равен 0, то переход на метку CYCLE.
Конец цикла CYCLE.

RET
Возврат в основную программу.
Конец подпрограммы DELAY.

Выполнение основной программы начинается с записи в регистр SP адреса вершины стека, в котором всякий раз будет сохраняться содержимое IP при вызове подпрограммы командами CALL DELAY. При завершении этой подпрограммы командой RET сохраненное в стеке значение IP будет восстановлено. Необходимость сохранения и восстановления IP была рассмотрена в п. 2.2.4.

Программа содержит цикл, начинающийся с метки START. Внутри цикла кроме остальных находятся две команды OUT 00, осуществляющие запись в триггер логических единиц и нулей. Первая команда OUT 00 выводит на ШД код 00h, а вторая — FFh. Если на ШД установлено значение 00h, то разряд D0 равен 0, если же FFh — то 1. Перед началом цикла в регистр В записывается код FFFFh. Счетчиком цикла является команда DCX B, уменьшающая регистр В на 1 до тех пор, пока не произойдет обнуления всех его разрядов, завершающего цикл. Таким образом, в результате циклического выполнения команд OUT 00 на линию D0 будет выдано 65535 единиц и нулей, частота формирования которых определит длительность звучания.

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, авторизуйтесьили зарегистрируйтесь для голосования.

Нет данных для оценки.

Время загрузки: 0.04 секунд 2,256,244 уникальных посетителей