FIFO_16 (OSCAT)

<< Click to Display Table of Contents >>

Navigation:  Приложения > Библиотека OSCAT > OSCAT.Функциональные блоки > OSCAT.ФБ.Модули памяти >

FIFO_16 (OSCAT)

FIFO_16 – это стек, содержащий 16 позиций для данных DWORD.

Вид ФБ в редакторе программ языка FBD:

FIFO_16_OSCAT

Входы и выходы ФБ:

Название

Тип

Описание

Входы

DIN

DWORD

Вход.

E

BOOL

Разрешение выполнения команд RD и WD.

RD

BOOL

RD=TRUE – команда извлечения из стека.

WD

BOOL

WD=TRUE – команда помещения в стек.

RST

BOOL

Сброс.

Выходы

DOUT

DWORD

Значение, извлеченное из стека.

EMPTY

BOOL

EMPTY=TRUE индицирует, что стек пуст (все позиции свободны, и невозможно извлечение значений из стека).

FULL

BOOL

Флаг переполнения стека. Если данные помещены во все свободные позиции стека, FULL=TRUE, и помещение новых значений в стек невозможно.

Значение DIN помещается в стек в каждом цикле, в котором WD=E=TRUE. Значение из стека извлекается в каждом цикле, в котором RD=E=TRUE.

При RST=TRUE освобождаются все позиции стека (EMPTY=TRUE). Позиция также освобождается при извлечении ее значения (после извлечения значений из всех доступных позиций EMPTY=TRUE). Например, если поместить в пустой стек n значений (n<=16), а затем извлечь k значений (k<=n), то для дальнейшего извлечения доступны оставшиеся (n-k) позиций, а свободны (16-n+k) позиций. Учитывая данное обстоятельство, при необходимости можно конфигурировать одновременное помещение и извлечение (выполняется в одном и том же цикле).

Используемые функции: INC1 (OSCAT).