Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Eom_part1.doc
Скачиваний:
0
Добавлен:
28.08.2019
Размер:
411.65 Кб
Скачать

3.5.Група команд операцій з таймером

Помимо розглянутих раніше команд обміну між таймером та аккумулятором (MOV A,T i MOV T,A), по яких вміст таймера може бути прочитано або зміне-но (перезавантажено) під час зупинки підрахунку, або під час підрахунку (на льоту), в ОЕОМ виконуються спеціаьні команди керування рожимом роботи таймера. Таймер може бути (в залежноті від команди) використаний як лічиль-ник тактів або подій від внутрішнього або зовнішнього джерела сигналів. Вико-нуєма команда визначає джерело тактування таймера. Система команд ОЕОМ має можливості розширення або заборони преривання від таймера.

STRT T

Запуск таймера

Код: [55].

Команда розширює роботу таймера від сигналів синхронізації. Вміст таймeра інкрементується через кожні 32 цикли тактування.

STRT CNT

Запуск лічильника подій.

Код:[45].

Таймер працює в якості лічильника подій від сигналів на вході Т1. Інкремент лічильника подій виконується по спаду сигналу на вході Т1.

STOP TCNT

Зупинка таймера/лічильника подій.

Код:[65].

Приклад: Заборонити преривання від таймера, але дозволити преривання після восьми сигналів переповнення таймера. При переході до процедури обробки преривання зупинити таймер. Сигнали переповнення підраховувати в регістрі 5.

START: DIS TCNTI ; заборона преривання від таймера

CLR A ; очистка аккумулятора

MOV T,A ; очистка таймера

MOV R5,A ; очистка регістра 5

STRT T ; запуск таймера

M1: JTF COUNT ; якщо TF=1, то перехід до COUNT і установка TF в 0

JMP M1 ; цикл

COUNT INC R5 ; інкремент регістра R5

MOV A,R5 ; переслати R5 в аккумулятор

JB3 INT ; перехід до підпрограми обслуговування преривання

INT якщо біт 3 аккумулятора має значення 1.

JMP M1 ; перехід, якщо В3=/1.

.

.

INT STOP TCNT ; останов таймера

JMP 07H ; перейти до елемента памяті 7 (вектор преривання

від лічильника подій)

EN TCNTI

Дозвіл преривання від таймера

Код:[25]

Cигнал переповнення таймера /лічильника подій визиває підпрограму обслуговування преривання.

DIS TCNTI

Заборона преривання від таймера

Код:[35].

Запит преривання по сигналу переповнення таймера не обслуговується. Таймер/лічильник подій продовжує свою роботу.

3.6.Група команд керування режимом роботи оеом

Команди керування режимом роботи ОЕОМ дозволяють або забороняють об-слуговування преривань і визначають робочі банки регістрів і блок пам’яті. На-явність двох банків регістрів дозволяє при визові підпрограм і обробці прери-вань еффективно використовувати другий банк регістрів в якості робочого, збе-рігаючи параметри обчислювального процесу не в стеку, а в вихідному банку регістрів. При програмуванні процедур обробки преривань можна переключати або не переключати банки регістрів. В тому випадку , якщо банки регістрів пе-реключаються, повернення до вихідного банку регістрів буде виконаний авто-матично , але підпрограма обробки преривань закінчується командою поверне-ння з відновленням ССП (RETR).

Спеціальною командою ENT0 на вивід T0 дозволяється передача синхроні-зуючого сигналу з частотою опорного синхросигналу, поділеної на 3. Видача цього сигналу може бути відключена тільки сигналом загального збросу. Синхросигнал на виході T0 використовується або для активізації системи або для загальної синхронизації зовнішніх пристроїв, узгоджених з ОЕОМ по частоті роботи.

ENI

Дозвіл преривання

Код:[05]

Поява сигналу 0 на вході ЗПР активізує процедуру обробки запросу преривання.

DISI

Заборона преривання.

Код:[15]

Поява сигналу 0 на вході ЗПР ігнорується.

SEL RBO

Вибір банку регістрів 0

Код:[C5]

Алгоритм (BS)0

Признак селектора банка регістрів в ССП встановлюється в стан 0. Доступні регістри з адресами 0-7.

SEL RBI

Вибір банку регістрів 1

Код:[D5]

Алгоритм: (BS) 1

При цьому звернення в програмі до регістрів 24-31.

SEL MBO

Вибір блока памяті 0

Код:[E5]

Алгоритм: (DBF) 0

Триггер вибору блока пам’яті встановлюється в нуль. Розряд 11 лічильника команд буде установлений в нуль по першій команді передачі керування. Всі адреси находяться в діапазоні 0-2047.

SEL MBI

Вибір блоку памяті 1

Код:[F5]

Алгоритм: (DBF) 1.

Тригер вибору блоку памяті встановлюється в 1. Розряд 11 лічильника команд буде встановлений в 1 першою командою передачі керування. Всі адреси нахо-дяться в діапазоні 2048-4095.

ENTO CLK

Видача дозволу сигналу синхронізації.

Код:[75]

На вивод Т0 передається синхронізуючий сигнал , частота якого в 3 рази меншою опорного.

NOP

Немає операції.

Код:[00]

Команда використовується для точного налагодження часових затримок. Виконується за один машинний цикл.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]