Исследование системных и интерфейсных модулей МПС

Страницы работы

Фрагмент текста работы

Лабораторная работа №6

Исследование системных и интерфейсных модулей МПС.

Цель работы: изучить назначение и принцип организации систем с использованием программируемых интервальных таймеров (ПИТ),программируемых контроллеров прерываний (ПКП) и программируемых контроллеров клавиатуры и дисплея (ПККД).

Выполнение работы:

ПИТ: программируемые интервальные таймеры выполняют операции, связаные с временами, частотами и интервалами, освобождают центральный процессор от формирования сигналов с различными временными параметрами, генерируют точные временные интервалы под программным контролем. Может работать в 6 режимах:

1.  Режим 0 – режим программной задержки;

2.  Режим 1 – одновибраторный;

3.  Режим 2 – режим генератора частоты;

4.  Режим 3 – генератор прямоугольных импульсов;

5.  Режим 4 – режим программного строба;

6.  Режим 5 – режим аппаратного строба.

ПКП: при работе микропроцессорной системы в ней или внешней среде происходят события, требующие немедленной реакции, что обеспечивается прерыванием выполняемых программ и переходом к обслуживанию запросов прерывания. Аппаратно прерывания обслуживаются специализированными ИС, простейшими из которых являются блоки приоритетного прерывания. Эти блоки решают несложные задачи обработки нескольких векторных прерываний при фиксированных приоритетах запросов. Более сложные задачи решаются программируемыми контроллерами прерываний (ПКП), в частности ИС Intel 8259А, К1810ВН59. Эти контроллеры непосредственно реализуют прерывания с обработкой 8 запросов. С помощью нескольких ПКП легко организуются устройства обработки до 64 запросов. Контроллеры обеспечивают различные виды прерываний. Система прерываний должна выдать команду перехода к той подпрограмме обслуживания, которая соответствует признанному запросу. Контроллер ВН59 обеспечивает различные виды прерываний.

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

Описание используемых режимов работы ПИТ КР580ВИ53, ПКП КР580ВН59 и ПККД КР580ВВ79.

ПИТ: работает в режиме 0 -  режим программной задержки.

После загрузки константы на линии OUT устанавливается логический 0. По каждому срезу CLK счетчик декрементируется. Когда на линии GATE 0 – cчет останавливается. Когда на линии GATE 1 – счет продолжается до нуля. Когда CE достигнет нуля, на линии OUT устанавливается единица.

ПКП: работает в режиме строгой вложенности. Имеются 8 входов запроса прерывания IR7…IR0. Высший приоритет имеет вход IR0, низший – у входа IR7. Вложенность – возможность прерывания подпрограммы обслуживания запроса другой программой с более высоким приоритетом, которая, в свою очередь, также может быть прервана более приоритетной программой и т.д. Возможность вложенных прерываний обеспечивается введением команды EI в подпрограммы обслуживания прерываний. Прерывания с фиксированными приоритетами реализуются просто, но запросы неравноправные и при интенсивном поступлении запросов с высокими приоритетами запросы с низкими приоритетами могут вообще не получить обслуживания, т.е возможно их оттеснение более приоритетными запросами.

ПККД: Режимы работы дисплея:

1)  8- разрядный 8 символьный дисплей и ввод слева;

2)  8- разрядный 8 символьный дисплей и ввод справа со сдвигом.

Клавиатура работает в следующем режиме: кодированное сканирование клавиатуры с обнаружением 2-клавишных сцеплений.

Рисунок 1 – Функциональная сема включения ПИТ, ПКП и ПККД в КПУ «Электроника МС- 2721»

Листинг программы.

0000

PIC

EQU

FCh

0000

PKKD

EQU

E4h

0000

PIT

EQU

E3h

0000

PIT0

EQU

E0h

Адрес

Машинный код

Метка

Мнемокод

Комментарий

1900

ORG

1900h

Обработчик прерывания от ПККД

1900

F3

INT_K:

DI

Запрет прерывания

1901

C3 10 19

JMP KLAVA

Переход к обслуживающей части

1904

ORG

1904h

Обработчик прерывания от таймера

1904

F3

INT_T:

DI

Запрет прерываниий

1905

0E F5

MVI C,F5h

Заносим в С- признак окончания прерывания F5h

1907

3E 21

MVI A,21h

Снимаем запрос на прерывание

1909

D3 FC

OUT PIC

190B

C9

RET

возврат

1910

ORG

1910h

1910

DB E4

KLAVA:

IN PKKD

Читаем слово состояния ПККД

1912

5F

MOV E,A

Сохранякм его

1913

E6 01

ANI 01h

Проверяем: первый ли столбец клавиш?

1915

FE 01

CPI 01h

1917

C2 1D 19

JNZ STLB2

Если нет- возможно второй

191A

C3 6D 19

STLB1:

JMP RIGHT

Если да- смена напрявления отображения

191D

7B

STLB2:

MOV A,E

Восстанавливаем слово состояния

191E

E6 02

ANI 02h

Проверяем: второй ли это столбец

1920

FE 02

CPI 02h

1922

C2 28 19

JNZ STLB3

Если нет- третий

1925

C3 4D 19

JMP LEFT

Если да- смена направления отображения

1928

CD 9D 19

STLB3:

CALL DISP

Если третий столбец

192B

CD 91 19

CALL SEC15

Задержка на 15 с

192E

0E FE

MVI C,FFh

Отображение слова состояния

1930

79

M3

MOV A,C

Ожидание конца прерывания

1931

FE F5

CPI F5h

1933

C2 30 19

JNZ M3

1936

C3 4D 19

JMP LEFT

Переход на смену направления

1940

ORG

1940h

1940

F3

DI

Запрет прерываний

1941

3E 16

MVI A,16h

Установка ПКП в режим строгой вложенности.

1943

D3 FC

OUT PIC

ПКП –один . таблица прерываний с адреса 1900h

1945

3E 00

MVI A,00h

1947

D3 FD

OUT PIC+1

1949

3E FD

MVI A,FDh

Маска прерывания 2-7

194B

D3 FD

OUT PIC+1

194D

3E 20

LEFT:

MVI A,20h

Снимаем запрос на прерывание

194F

D3 FC

OUT PIC

1951

3E 00

MVI A,00h

Переводим ПККД в режим 8 знаков, вывод слева

1953

D3 E5

OUT PKKD+1

1955

FB

PRE:

EI

Разрешение прерывания

1956

1E 09

COUNT:

MVI E,09h

Счетчик отображаемых цифр

1958

0E FF

M2:

MVI C,FFh

С- признак отработавшего прерывания, FF- не отработало

195A

CD 9D 19

CALL DISP

Отображаем регистр Е

195D

CD 85 19

CALL SEC

Задержка 1с

1960

79

M1:

MOV A,C

Проверка признака отраб. Прерывания. F5- отработало

1961

FE F5

CPI F5h

1963

C2 60 19

JNZ M1

ожидание

1966

1D

DCR E

Уменьшаем счетчик отбражаемых цифр

1967

C2 58 19

JNZ M2

Повторяем вывод

196A

C3 56 19

JMP COUNT

зацикливаем

196D

3E 20

RIGHT:

MVI A,20h

Снимаем запрос на прерывание

196F

D3 FC

OUT PIC

1971

3E 10

MVI A,10h

Переводим ПККД в режим 8 знаков, вывод справа

1973

D3 E5

OUT PKKD+1

1975

C3 55 19

JMP PRE

Переход к отображению.

1978

F5

PUSH PSW

Сохраняем состояние системы

1979

3E 30

MVI A,30h

Канал 0 режим 0 константа FFFFh, режим шестнадцатеричный

197B

D3 30

OUT PIT

197D

3E FF

MVI A,FFh

197F

D3 E0

OUT PIT0

Около 0,03 с

1981

D3 E0

OUT PIT0

1983

F1

POP PSW

Восстанавливаем состояние

1984

C9

RET

Возврат

1985

F5

PUSH PSW

Сохраняем состояние системы

1986

3E 64

MVI A,64h

Повтор около 100 раз для увеличения задержки

1988

CD 78 19

CALL TIME

198B

3D

DCR A

Около 1 с

198C

C2 88 19

JNZ T1

198F

F1

POP PSW

Восстанавливаем состояние

1990

C9

RET

Возврат

1991

F5

PUSH PSW

Сохраняем состояние

1992

3E 0F

MVI A,0Fh

15 раз повторяем 1с задержку

1994

CD 94 19

CALL TIME

1997

3D

DCR A

Около 15 с

1998

C2 94 19

JNZ T2

199B

F1

POP PSW

Восстанавливаем состояние

199C

C9

RET

Возврат

199D

21 79 0E

LXI H,0E79

Получение кода цифры из таблицы

19A0

16 00

MVI D,00h

перекодировки и выдача на дисплей

19A2

19

DAD D

19A3

7E

MOV A,M

19A4

E6 0F

ANI OFH

19A6

D3 E4

OUT PKKD

19A8

C9

RET

Выводы: в данной лабораторной работе были изучены взаимодействие модулей УПК. Передача функций управления периферийным устройством его периферийному адаптеру или контроллеру освобождает ЦП от трудоемких обязанностей управления устройствами. Функции ЦП сводятся к общему управлению контроллеров периферийных устройств с помощью высокоуровневых команд и слов

Похожие материалы

Информация о работе