Cтраница 2
В потоке сообщений, циркулирующих на магистрали ветви, по мере генерирования контроллерами ответов на командные сообщения появляются промежутки, заполненные байтами ожидания. [16]
Часть станции передачи данных, которая выполняет функции управления каналом передачи данных в соответствии с командами первичной станции, интерпретирует принятые командные сообщения и формирует передаваемые ответные сообщения. [17]
В режиме удержания RFD ( см. Вспомогательный регистр А) цикл синхронизации не заканчивается до тех пор, пока микросхеме КР580ВК91А не будет послано командное сообщение о разблокировке удержания. Так можно некоторое время считывать один и тот же байт или действующий передатчик может удерживаться до тех пор, пока не будут обработаны все подготовленные данные. [18]
Схематически работа последовательной ветви организована следующим образом. Драйвер ветви под управлением ЭВМ генерирует на своем выходе поток командных сообщений, разделенных в общем случае байтами ожидания, которые поступают на вход магистрали ветви. Командное сообщение содержит информацию об адресе крейта ( SC-байт), к которому это сообщение относится, и информацию о команде КАМАК ( SN -, SA -, SF-байты), а также байты данных ( SW-байты), если требуется выполнить команду записи. [20]
Устройство ТМ-200 разработано для телемеханизации районного диспетчерского управления трубопроводами ( газ, нефтепродукты, вода), объектов ирригационных систем, коммунального хозяйства и других подобных предприятий с рассредоточенными контролируемыми объектами. Устройство позволяет собирать информацию с 60 контролируемых пунктов и передавать на них командные сообщения. [21]
Число байтов в тексте сообщения, а также число SPACE-байтов в CMD сообщении зависит от типа команды. Структура сообщений, передаваемых по магистрали последовательной ветви, изображена на рис. 4.15. Слева в каждой паре колонок представлены в виде последовательности байтов командные сообщения, поступающие с магистрали ветви на вход адресуемого секционного контроллера, справа - ответные сообщения на выходе контроллера. В действительности информация, поступающая из контроллера на магистраль ветви, задерживается на один шаг, т.е. сдвинута на 1 байт относительно информации, поступающей на вход контроллера. Для наглядности изображения сообщений это обстоятельство на рисунке не отражено. [22]
Схематически работа последовательной ветви организована следующим образом. Драйвер ветви под управлением ЭВМ генерирует на своем выходе поток командных сообщений, разделенных в общем случае байтами ожидания, которые поступают на вход магистрали ветви. Командное сообщение содержит информацию об адресе крейта ( SC-байт), к которому это сообщение относится, и информацию о команде КАМАК ( SN -, SA -, SF-байты), а также байты данных ( SW-байты), если требуется выполнить команду записи. [24]
![]() |
Длина сообщений последовательной метай. [25] |
Секционные контроллеры ретранслируют, т.е. передают со входа на выход, все сообщения, поступающие по магистрали. Адресуемый контроллер принимает командное сообщение, исключает его из потока на магистрали и вместо него выставляет на магистраль укороченное сообщение. С помощью этого сообщения драйвер ветви информируется о том, что секционный контроллер принял адресованную ему команду. Затем контроллер организует выполнение команды КАМАК, запуская цикл магистрали крейта. После выполнения команды контроллер выставляет на магистрали ответное сообщение, в котором передается адрес крейта ( SC-байт), байт состояния ( STATUS-байт), содержащий, в частности, информацию о состоянии сигналов X и Q магистрали крейта, и байты данных ( SR-байты), если выполнялась команда чтения. С помощью SR-бай-тов информация о состоянии линий R магистрали крейта передается драйверу ветви. [26]
Рассмотрим подробнее структуру различных сообщений. Каждое сообщение начинается с заглавного байта, которым является SC-байт адреса крейта, затем следуют байты текста. Кроме того, командное сообщение содержит пустые байты ( SPACE-байт), расположенные перед конечным байтом. С помощью SPACE-байтов вводится временная задержка, необходимая для выполнения в адресуемом контроллере передаваемой команды, а также резервируется место в потоке сообщений на магистрали для размещения ответного сообщения. [27]
Последующие байты текста ( SA, SF, SN) и SUM-байт контроллер запоминает в своих внутренних регистрах. При этом он исключает их из потока сообщений на магистрали ветви, выставляя вместо них WAIT-байты. Первый пустой SPACE-байт, передаваемый драйвером в составе командного сообщения, играет роль временной задержки, необходимой контроллеру для выполнения командной операции на магистрали крейта и подготовки ответа. Вместо него контроллер также генерирует на магистрали WAIT-байт. Ответное сообщение, состоящее из заглавного SC-байта и STATUS-байта, генерируется контроллером вместо последних двух SPACE-байтов, которые также исключаются из потока на магистрали. Таким образом, введение пустых байтов в командное сообщение и генерирование контроллером байтов ожидания позволяет сделать время реакции контроллера равным длительности командного сообщения. [28]
MFC обеспечивает специальную обработку сообщений, генерируемых объектами пользовательского интерфейса, стандартными элементами, поддерживаемыми библиотекой MFC: меню, комбинации клавиш, кнопки панелей инструментов, строки состояния, элементы управления диалоговых окон. Меню рассматриваются в этой и следующей главах, остальные объекты пользовательского интерфейса - в гл. Сообщения, генерируемые объектами пользовательского интерфейса, называют командными сообщениями. Каждый раз, когда пользователь выбирает объект интерфейса или когда один из этих объектов необходимо обновить, объект передает командное сообщение главному окну. Однако библиотека MFC сразу направляет сообщение объекту окна представления. Если он не имеет нужного обработчика, библиотека MFC направляет сообщение объекту документа. Если же объект документа не содержит обработчик, библиотека MFC направляет сообщение объекту главного окна программы. Если главное окно также не располагает обработчиком, сообщение направляется объекту приложения. Наконец, если объект приложения не обеспечивает обработку, то сообщение обрабатывается стандартным образом. [29]
В основу принципа обмена информацией здесь положена адресная передача кодированной информации. Все сообщения, циркулирующие между ПУ и КП, делятся по функциям на синхронизирующие адресные командные и информационные. Синхронизирующие сообщения ( старт) обеспечивают цикловую синхронизацию аппаратов и выполняют роль стартовых сигналов, начинающих любую передачу. Защита адресных сообщений производится с помощью информационной обратной связи, командных сообщений - с помощью повторений, а известительных - с помощью корреляционного кода, который позволяет получить высокую достоверность и малые затраты на аппаратуру. Устройство обеспечивает работу аналоговыми преобразователями, имеющими выходной ток 0 - 5 мА на сопротивление 2 кОм, или 0 - 20 мА на сопротивление 500 Ом и с кодовыми преобразователями типа ПКД. Общий объем информации, который обеспечивается устройством для передачи с внешним комплексом, составляет до 128 параметров ТИТ, до 128 сигналов ТС и до 80 команд ТУ. Сообщения ТС на ПУ запоминаются на поляризованных реле. Во внешние комплексы они снимаются с контактов реле, причем каждому двухпозиционному объекту соответствует свое реле. С вычислительным комплексом типа М-6000 устройство обменивается сообщениями ТИ и ТУ через интерфейсные блоки, один из которых предназначен для передачи известительной информации в М-6000, а другой - для передачи командной информации в процессор. [30]