Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МПТ методичка исправл длин прилож.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
981.5 Кб
Скачать

3.1.3 Ожидание импульсного сигнала.

На рис.4 (а, б) приведены схемы подключения к контролеру датчика, вырабатывающего импульсный сигнал, и алгоритм обнаружения этого сигнала. Программа, опрашивающая состояние подобного датчика, должна обнаружить не только факт появления, но и факт сброса сигнала. Схема алгоритма (рис.4) состоит из двух процедур: ожидание появление фронта сигнала и его спада.

Фрагмент программы, реализующей этот алгоритм, выглядит следующим образом (табл.5).

Таблица 5

Адрес

Код

Метка

Мнемокод

Комментарий

WAIT1:

IN PORT4

ввод из порта 4

ANI 80H

анализ D7

JNZ WAIT1

если D7 = 1, то ждать

WAIT0

IN PORT4

иначе ввод из порта 4

ANI 80H

анализ D7

JZ WAIT0

если D7 = 0, то ждать

RET

иначе выход из

подпрограммы

Рисунок 4 - Схема (а) и схема (б) алгоритма обнаружения импульсного сигнала

Для обнаружения кратковременных импульсов используется два способа: буферирование импульса на триггер флага и система прерывания.

На рис.5 представлена схема отслеживания кратковременного импульса с помощью флага.

Рисунок 5 -Схема включения триггера флага для фиксации кратковременных импульсов

На вход порта поступает не кратковременный импульсный сигнал, а флаг, формируемый D-триггером с динамическим входом. Триггер устанавливается по ходу С фронтом импульса, а сбрасывается программным путем - выдачей управляющего воздействия в порт 7. Тем самым флаг инициируется на новый цикл слежения за импульсом.

В случае использования системы прерывания для отслеживания кратковременных импульсов выход из источника подключается к входу запроса прерывания INT микропроцессора.

Пример:

Данная программа (табл.6) после запуска высвечивает на 1-ом индикаторе знак готовности ("-"). Если пользователь нажмет клавишу "6" на клавиатуре УМК, индикатор высветит число "1". Она будет высвечиваться до тех пор, пока пользователь не отпустит вышеназванную клавишу. После этого на индикаторе высветится цифра "0", свидетельствующая о том, что клавиша разомкнута и программа закончит свою работу.

Таблица 6

Адрес

Код

Метка

Мнемокод

Комментарий

1

2

3

4

5

083B

2E 40

MVI L, 40H

высветить знак "-"

на индикаторе

083D

CD 90 08

CALL LIGHT

свидетельствующий

об ожидании

0840

DF FA

WAIT1

IN FAH

чтение порта клавиатуры

0842

E6 40

ANI 40H

анализ D6

(0100000B - 40H)

0844

C2 40 08

JNZ WAIT1

если D6 = 1, то ждать

0847

2E 06

MVI L, 06Н

иначе код цифры "1" поместить в регистр L

0849

CD 90 08

CALL LIGHT

высветить на

индикаторе "1"

084C

DF FA

WAIT0

IN FAH

опрос порта клавиатуры

084E

E6 40

ANI 40H

анализ D6

(0100000B - 40H)

0850

CA 4C 08

JZ WAIT0

если D6 = 1, то ждать

0853

2E 3F

MVI L, 3FH

иначе высветить

число "0"

0855

CD A9 08

CALL L&P

на индикаторе

0858

FF

RST

возврат в "монитор"