с их областью видимости. Только
Макросы различаются в соответствии с их областью видимости. Только макросы одного типа и области действия могут быть вставлены в одинаковую сетку редактирования. Вот основные виды области действия макросов :
ОБЩАЯ.................... может быть использована любой программой любого проекта
ГЛОБАЛЬНАЯ......... может быть использована любой программой текущего проекта
ЛОКАЛЬНАЯ........... может быть использована только одной программой
Макросы идентифицируются именем, блоком описания на ST и комментарием.
Экземпляры функциональных блоков
Функциональные блоки, используемые в языках ST и IL, должны быть объявлены в словаре. Так как функциональный блок содержит внутренние спрятанные данные, то каждая копия блока должна быть идентифицирована. Следующий пример показывает функциональный блок «R_TRIG» ( определение поднятой грани ), определённый в библиотеке, который используется для определения фронта различных переменных. Каждая копия блока должна быть идентифицирована уникальным именем. Определение типа блока и его параметров производится при помощи менеджера библиотек :
Имя блока: R_TRIG
Параметры: Input=CLK
Output=Q
При помощи редактора словаря образуется имя :
Имя экземпляра: TRIG_B1 Имя блока: R_TRIG
Имя экземпляра: TRIG_B2 Имя блока: R_TRIG
Объявленные блоки могут быть использованы в ST программе :
TRIG_B1 (b1);
edge_b1 := TRIG_B1.Q; (* b1 определение фронта переменной *)
TRIG_B2 (b2);
edge_b2 := TRIG_B2.Q; (* b2 определение фронта переменной *)
Объявленные экземпляры функциональных блоков могут быть
ГЛОБАЛЬНЫМИ ( доступные в любой программе проекта ) или
ЛОКАЛЬНЫМИ, для одной программы. Функциональные блоки, используемые в языках FBD и LD, объявлять не нужно, так как это делает редактор FBD.
(* функциональные блоки всегда имеют то же имя, что и блок, объявленный в библиотеке.Редактор FBD автоматически объявляет реализацию каждый раз при вставке блока из библиотеки *)
Экземпляры функциональных блоков, автоматически объявленные редакторами FBD и LD, всегда локальны для редактируемой программы.
Сетевые адреса
Сетевой адрес является
необязательным. Переменная с ненулевым сетевым адресом может быть
прослежена
внешней системой ( например, процессом визуализации системы ) в процессе выполнения. В более общем случае, сетевой адрес обеспечивает механизм идентификации для каждой работающей коммуникационной системы, которая не поддерживает символьное имя. Сетевой адрес может быть определён для каждой переменной, в том числе при её создании или изменении.
Содержание Назад Вперед