ISaGRAF. Version 3.4


“C” функции преобразований - часть 3


      uint16 direction;                            /* направление преобразование          */

      T_REAL *before;                         /* значение до преобразования       */

      T_REAL *after;                             /* значение после преобразования        */

   } str_cnv;

 

#define ARG_BEFORE (*(arg->before))

#define ARG_AFTER  (*(arg->after))

#define DIRECTION  (arg->direction)

 

/* eof */

Структура “str_cnv” полностью описывает интерфейс. Единственный параметр “C” функции преобразования - указатель на эту структуру. Поле “number” - это логический номер функции преобразования (положение в библиотеке ISaGRAF), оно не должно использоваться в программе.

Поле “direction” определяет тип переменной, к которой применяется функция преобразования (входная или выходная). Она содержит значение DIR_INPUT для преобразования входов и DIR_OUTPUT для преобразования выходов.

Поле “before” указывает на значение до преобразования. Это поле имеет различные значения для преобразований входов и преобразований выходов. Оно представляет электрическое значение (считанное с устройства ввода) для преобразования входа, когда поле direction принимает значение DIR_INPUT. Оно представляет физическое  значение (использующееся в программе) для преобразования выхода, когда поле direction принимает значение DIR_OUTPUT.

Поле “after” указывает на значение после преобразования. Это поле имеет различные значения для преобразований входов и преобразований выходов. Оно представляет физическое значение (считанное с устройства ввода) для преобразования входа, когда поле direction принимает значение DIR_INPUT. Оно представляет электрическое  значение (использующееся в программе) для преобразования выхода, когда поле direction принимает значение DIR_OUTPUT.

Программист может использовать определения “ARG_BEFORE” и “ARG_AFTER” для прямого доступа к полям before и after структуры переданной в функцию преобразования. Обрабатываемые значения - плавающие с одиночной точностью.


- Начало -  - Назад -  - Вперед -