Технология цифровой связи

Проектирование цифровой линии

Взаимодействие МК с объектом управления

Временная задержка подбирается экспериментальное (1–10 мс) в зависимости от типа датчика.

Пример 44. Формирование импульсных сигналов делается по принципу включен / выключен с необходимой временной задержкой:

PULLS:ON: ANL P1,#11110111B; выдача импульса в линию 3 порта 1

CALL DELAY ; временная задержка

OFF: ORL Р1,#00001000В; сброс

Пример 45. Считывание данных из таймера. Для устранения возможных сбоев при считывании сначала читается старший байт, потом – младший, после чего подтверждается, что старший байт за это время не изменился.

RDTIME: MOV A, TH0

MOV R0, TL0

CJNE A, TH0, RDTIME

MOV R1, А

RET

Пример 46. Подсчет числа импульсов, например, радиодеталей, которые движутся по конвейеру, зафиксированных фотоэлементом (рис. 9).

MOV TMOD,#01000000B; настройка счетчика 1

MOV TH1,#00H ; сброс счетчика

WAIT0: JB P3.4, WAIT0; ожидание включения транспортера

SETB TCON.6 ; запуск счетчика 1

WAITC: JNB P3.4, WAITC; ожидание отключения транспортера

CLR TCON.6 ; остановка счетчика 1

MOV A.TH1 ; A ¬ число деталей

EXIT: ; выход

Максимальное число радиодеталей – 255.

Пример 4 Реализация функций времени на основе таймеров.

В MCS-51 при частоте генератора тактовых импульсов 12 МГц таймер / счетчик изменяет свое значение с частотой 1 Мгц (в режиме таймера), или при поступлении сигнала от внешнего источника через счетный вход T0, T1 (в режиме счетчика).

Если использовать таймер / счетчик в режиме 1 полного формата (16 бит), то получим задержки в границах (1 – 65536 мкс).

Программа задержки на 50 мс в MCS-51, прерывание разрешено. Организация перехода к метке NEXT при переполнении Т/С0:

ORG 0ВН ; адреса вектора прерываний от Т/С0

CLR TCON.4 ; остановка Т/С0

RETI ; выход из подпрограммы обработки прерываний

ORG 100H ; начальный адрес программы

MOV TMOD, #01Н; настройка Т/С0

MOV TL0, #LOW (NOT(50000) – 1); загрузка таймера

MOV TH0, #HIGH (NOT(50000) – 1)

SETB TCON.4 ; старт Т/С0

SETB IE.1 ; разрешение прерываний от Т/С0

SETB PCON.0 ; перевод в режим холостого хода

NEXT: ; продолжение программы.

Пример 48. Организация задержки программным путем:

DELAY: MOV R2, Х ; (R2)¬(Х)

COUNT: DJNZ R2, COUNT; декремент R2 и цикл, если не нуль

RET ; возвращение из подпрограммы

Пример 49. Подпрограмма задержки на 50 мс, используя Т/С0, погрешность не превышает 2 мкс.

DELAY: MOV TMOD,#00000001B; настройка Т/С0

MOV TH0,#HIGH (NOT(50000–16))

MOV TL0,#LOW (NOT(50000–16))

SETB TCON.4 ; запуск Т/С0

JNB TCON.5,$ ; ожидание

ANL TCON,#NOT(30H); остановка Т/С0, сброс TF0

RET ; возвращение из подпрограммы

Пример 50. Подпрограмма задержки на 1 секунду. Погрешность не больше, чем 123 мкс.

OS: MOV R3,#20D ; счетчик циклов

S1: ACALL DELAY ; задержка на 50 мс

DJNZ R3, S1 ; организация цикла

RET ; возвращение из подпрограммы

Пример 51. Измерение временных интервалов. При применении таймера используется вход разрешения счетчика (). Тогда измеренный сигнал подается на вход , а измерение продолжительности выполняется в Т/С0.

«Положительный» импульс:

MOV TMOD,#00001001В; настраивание Т/С0 Перейти на страницу: 1 2 3 4


Другое по теме:

Исследование работы технологии IP-телефонии при передаче голоса и видеоизображения Цель работы -реализация сценария IP-телефонии " компьютер-компьютер "; -получение навыков при исследовании работы технологии IP-телефонии при передаче голоса; -получение навыков исследования работы технологии I ...