Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
68
Добавлен:
15.04.2015
Размер:
1.15 Mб
Скачать

Управление четырехфазным ШД

Изменение данных в регистре В

Использование регистров ЦП

регистр В - для хранения настоящего состояния фазных обмоток;

регистры С и Е – для подсчета числа шагов (соотв. заданного и остающегося до окончания движения);

регистр D для хранения кода направления и конца движения;

двойной Рг HL – для определения памяти, содержащей значения имп.

START

RESET B

HL<--Y

LOOP1

D<--M

YES

D=2? STOP

NO

HL<--HL+1

 

E<--M

 

CLEAR C

 

PUSH HL

 

ROTATE

 

C<-- C+1

 

E<-- E-1

 

E=0?

PAUSE

DETERMINE

 

WAIT

 

LOOP2

HL<-- HL+1

POP HL

Команды RRC и RLC: циклический сдвиг аккумулятора вправо и влево

В циклических сдвигах выдвигаемый разряд переносится в освобождаемый и одновременно фиксируется в виде флага переноса

Процедура COUNTER

 

 

COUNT: INR C

 

HL<-- HL+1

 

 

 

 

 

 

 

 

C<-- C+1

 

 

DCR E

 

 

 

 

 

E<-- E-1

 

 

JZ PAUSE

 

POP HL

 

 

 

 

 

YES

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PAUSE

 

 

E=0?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PAUSE: MVI A, 0FFH

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PUSH B

 

 

 

 

 

 

 

 

 

 

LOOP6: MVI B, 0FFH

 

 

 

 

 

 

 

 

 

 

LOOP5: DCR B

 

 

A<--FF

 

 

 

 

 

JNZ LOOP5

 

 

 

 

 

 

 

 

 

 

 

DCR A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

JNZ LOOP6

 

 

PUSH BC

 

 

 

 

 

 

 

 

POP B

 

 

 

 

 

 

 

 

 

 

 

 

LOOP6

B<--FF

 

B<--B-1

LOOP5

 

B=0?

NO

 

YES

 

A<--A-1

 

A=0?

NO

 

YES

 

POP BC

Процедура WAIT

4.6. Система прерываний

Прерывание (Interrupt) – режим, в котором процессор должен приостановить выполнение текущей последовательности команд и начать выполнение другой последовательности команд, соответствующей данному прерыванию

Прерывания могут обусловливаться:

•обменом с периферийными у-вами;

•попыткой осуществления неизвестного/запрещ. действия;

•сбоями и неисправностями в системе;

•действиями оператора.

Прерывания по запросам от медленно действующих ВУ позволяют занимать время ЦП только при их готовности к обмену, что увеличивает производительность МПС

Радиальная и векторная схемы организации прерываний

При радиальном прерывании последовательно – в порядке убывания приоритета - опрашиваются все источники прерываний.

При векторном прерывании перебирать все ВУ не нужно.

Радиальные прерывания

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

Радиальные прерывания

Каждый радиальный вход связан с определенным адресом памяти, по которому размещается указатель на программу обслуживания прерывания

При поступлении на радиальный вход нескольких запросов включается процедура поиска ПУ, пославшего сигнал прерывания

(Interrupt). Поиск – опрос всех источников в порядке убывания их приоритета.