Управление модулями МУЛЬТИПРОМ из программы ЭКВМ |
Главная / ЭКВМ / Программы / Примеры |
Настройка портаОбмен данными с модулями МУЛЬТИПРОМ проводится в режиме двунаправленного обмена (см. Д1 п.10.3.4) параллельного порта ИПР. Для его установки необходимо записать число 3 в регистр функции R9090. Время ожидания ответа, кратное 1,25 мс, записывается в регистр R9095. Рекомендуемое значение времени ожидания для большинства модулей составляет 3-5 мс, что соответствует записи числа 3 в R9095. Для обмена данными используются все сигналы интерфейса ИПР. Установка адреса модуляДля обмена данными через ИПР каждому модулю присваивается один или несколько последовательных адресов в пределах от 0 до 255. Установка адреса (или начала диапазона адресов) выполняется микропереключателями DIP-переключателя на плате модуля. Для выбора модуля ЭКВМ формирует цикл записи адреса. Для этого в регистр типа операции R9093 записывается число 0, в регистр данных R9091 - адрес модуля. Обмен данными в дальнейшем проводится с выбранным модулем (или с одной из функциональных частей модуля в его адресном пространстве). Обмен даннымиОбмен данными выполняется с модулем, адрес которого предварительно был установлен в цикле записи адреса. Для обмена данными в регистр типа операции R9093 записывается число 1. Данные для обмена записываются в регистр R9091 или считываются из него. ЭКВМ при этом формирует цикл чтения или передачи данных в ИПР. Примеры программПростейшая программа, включающая все реле модуля дискретного вывода МУЛЬТИПРОМ 2201, имеющего адрес 1, может быть записана следующим образом (24 байта): Программа, считывающая состояние каналов с модуля дискретного ввода МУЛЬТИПРОМ 2101, имеющего адрес 2, может быть записана следующим образом (23 байта): Программа, случайным образом устанавливающая состояние реле двух модулей 2201 и считывающая его же с подключенных модулей 2101: .CHARSET 1251 .ORG 0 CX 3 PP M 9090 ; Режим двунаправленного обмена (значение 3) 3 PP M 9095 ; Время ожидания ответа 3*1,25=3,75 мс A0: 1 MB ; адрес модуля ввода I 2 MC ; адрес модуля вывода I P GSB OBMEN 3 MB ; адрес модуля ввода II 4 MC ; адрес модуля вывода II P GSB OBMEN P GOTO A0 OBMEN: 0 ; цикл передачи адреса PP M 9093 RMC ; адрес модуля вывода PP M 9091 1 ; цикл передачи данных PP M 9093 P GSB RAND ; случайное число от 0 до 63 PP M 9091 ; передать в ИПР M A ; сохранить для сравнения 0 ; цикл передачи адреса PP M 9093 ; RMB ; адрес модуля ввода PP M 9091 ; 1 ; цикл передачи данных PP M 9093 ; P GSB ZADERGKA ; задержка для наглядности RM A PP RM 9091 ; считывание данных из порта ИПР K SCR ; обновить экран - P X=0 ZVUK ; при несовпадении - звуковой сигнал RTN RAND: ; случайное число от 0 до 63 K RAN 64 * K INT RTN ZVUK: ; звуковой сигнал 400 ENT 20 PP M 9052 RTN ZADERGKA: 25 ; Задержка 25 мс. PP M 9050 ; Формирование интервалов (таймер 0) Z1: PP RM 9050 ; считать содержимоле таймера P X=0 Z1 ; повторять, пока значение не равно 0 RTN .ENDP |
НПП "СЕМИКО" (383) 271-01-25 (многоканальный) |