Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учб.-мтд. псб..doc
Скачиваний:
233
Добавлен:
22.03.2016
Размер:
3.6 Mб
Скачать

7.3.4. Состав устройств ввода/вывода

Стандартные устройства ввода обеспечивают сопряжение с системной магистралью таких внешних устройств как клавиатура панели оператора, фотосчитывающее устройство, кассетный накопитель на магнитной ленте, ЭВМ высшего ранга. Стандартные устройства вывода обеспечивают сопряжение системной магистралью с такими внешними устройствами как дисплей, пишущая машинка, перфоратор, кассетный накопитель на магнитной ленте, ЭВМ высшего ранга.

К специальным устройствам ввода/вывода отнесены блок входных сигналов, блок выходных сигналов, блок связи с приводами подач и блок связи с датчиками обратной связи (рис.7.7). Связь специальных устройств ввода/вывода с системной магистралью осуществляется не напрямую, а через интерфейс станочной периферии. В интерфейсе станочной периферии на основе дешифрации разрядов 05…12 кода адреса формируется сигнал выбора соответствующего блока, который поступая через магистраль станочной периферии, инициирует дешифратор субблоков соответствующего блока. Дешифратор субблоков по разрядам 01…03 кода адреса выбирает адресуемый регистр данных, который принимает входные сигналы или передает выходные сигналы. Внешними устройствами в данном случае являются исполнительные цикловые механизмы станка, кодовые датчики револьверной головки и ориентации шпинделя, микропереключатели, цифроаналоговые преобразователи тиристорных приводов подач и аналогово-цифровые преобразователи сигналов датчиков положения рабочих органов станка.

7.3.5. Системные команды цп, используемые при реализации логической задачи управления (пример)

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

SS – поле адресации операнда источника в восьмеричном коде;

DD – поле адресации операнда приемника в восьмеричном коде;

src (source) – источник;

(src) – операнд источника;

dst (distination) – приемник;

(dst) – операнд приемника;

(ПС) – содержимое ПС.

1. Двухадресная команда пересылки: MOV 01SSDD;

алгоритм команды (dst)  (src);

описание команды: операнд источника (src) пересылается по адресу операнда приемника, прежнее содержимое ячейки dst теряется, содержимое ячейки src не изменяется.

Пример команды пересылки данных из порта ввода микроЭВМ в РОН1 (в восьмеричном коде):

/013701

/,

где 0 – признак двухбайтовой команды,

1 – код операции пересылки,

3 – метод адресации операнда источника абсолютный (адрес операнда следует за командой),

7 – адресация осуществляется через ПС, то есть процессор использует ПС для выборки операнда (пересылаемых данных) по его адресу,

0 – регистровый метод адресации операнда приемника (регистр содержит операнд),

1 – приемником операнда (пересылаемых данных) является РОН1,

 – условное обозначение адреса порта ввода, с которого считывается операнд источник;

формат этой команды в двоичном коде: 0 001 011 111 000 001 (пробелами выделены двоичные эквиваленты восьмеричных цифр).

2. Двухадресная команда сравнения: CMP 02SSDD;

алгоритм команды (src) – (dst);

описание команды: сравнивает операнды источника и приемника и изменяет признаки состояния процессора, которые затем могут быть использованы для команд условных переходов, оба операнда не изменяются;

результат выполнения операции: бит (флаг) Z регистра состояния процессора устанавливается (то есть в этот бит записывается «1»), если результат равен нулю, в противном случае – очищается.

Пример команды сравнения содержимого РОН1 с содержимым РОН2 (в восьмеричном коде):

/020102,

где 0 – признак двухбайтовой команды,

2 – код операции сравнения,

0 – регистровый метод адресации операнда источника,

1 – операнд источника находится в РОН1,

0 – регистровый метод адресации операнда приемника,

2 – операнд приемника находится в РОН2;

Формат этой команды в двоичном коде: 0 010 000 001 000 010.

3.Команда «Ветвление, если не равно нулю» (если результат операции не равен нулю): BNE 001000+,

где  - смещение, которое показывает, на сколько ячеек памяти нужно перейти относительно текущего содержимого ПС в ту или иную сторону; т. к. командные слова имеют четные адреса, то для получения истинного исполнительного адреса смещение необходимо умножить на 2 перед прибавлением к текущему содержимому ПС (который показывает на слово); старший разряд смещения (разряд 07) является знаковым разрядом: если он установлен, смещение отрицательное, т. е. смещение происходит в сторону уменьшения адреса и наоборот; описание команды: процессор проверяет состояние разряда Z РСП и вызывает ветвление, если он очищен (если Z=0);

алгоритм команды: (ПС)(ПС)+2, если Z=0.

Пример команды ветвления (в восьмеричном коде):

/001203,

где 0 – признак двухбайтовой команды,

01 – код операции ветвления,

2 – признак отрицательного смещения,

03 – значение смещения, равное трем ячейкам памяти;

формат этой команды в двоичном коде: 0 000 001 010 000 011 (в седьмом разряде кода «1», что отражает отрицательное смещение).

Ниже приводится фрагмент программы, описывающей с использованием рассмотренных команд реализацию цикла поиска инструмента револьверной головки токарно-револьверного станка с ЧПУ. Код нужного инструмента задан в управляющей программе обработки детали и предполагается, что он уже записан в РОН2 предыдущими командами. Код текущего инструмента в рабочей позиции фиксируется кодовым датчиком системы поиска инструмента, подается на вход субблока блока входных сигналов (рис. 7.7) и считывается в регистр данных субблока при его инициализации. Адрес субблока блока входных сигналов в едином адресном пространстве ЦП равен 167640.

204/013701

// Пересылки кода текущего инструмента в рабочей позиции револьверной головки из регистра данных субблока блока входных сигналов в РОН1

206/167640

// Адрес регистра данных субблока блока входных сигналов

208/020102

// Сравнение содержимых РОН1 и РОН2

210/001203

……………

// Ветвление, если флаг Z регистра состояния процессора не установлен

167640/ххх

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

Рис. 7.10

В левом поле приведены адреса и команды (в восьмеричном коде) фрагмента программы, в правом поле – комментарии к командам; символы ххх представляют условное обозначение кода текущего положения револьверной головки. На рис. 7.10 приведена блок-схема алгоритма программной реализации цикла поиска инструмента.