Skip to main content

Sección: IO

La definición de entrada y salida se puede realizar en esta sección. Todas las entradas y salidas definidas están disponibles en el Mapa de E/S.

SEC IO                                         //optional: yes, modifier: [UPDATE]
    SEC Input : <input identifier>             //optional: yes, modifier [HIDE,UPDATE]
            Variable :=  <variable name>;          //optional: no, type: InstancePath
            Name := <name>;                        //optional: no, type: text
            Desc := <description>;                 //optional: no, type: text
            UpdateInTask := <task name>;           //optional: yes, type: TaskRef
    END_SEC
    SEC Output : <output identifier>           //optional: yes, modifier [HIDE,UPDATE]
            Variable := <variable name>;           //optional: no, type: InstancePath
            Name := <name>;                        //optional: no, type: text
            Desc := <description>;                 //optional: no, type: text
            UpdateInTask := <task name>;           //optional: yes, type: TaskRef
    END_SEC
END_SEC

Para obtener detalles sobre la sintaxis de los tipos de definición, consulte: descripción en Sintaxis de la declaración del módulo..

. Especificación:
  • El parámetro Variable define la ruta de instancia de una variable de entrada o de salida.

  • Todos los componentes de la ruta de entrada deben ser variables de entrada (o variables locales en estructuras). Todos los componentes de la ruta de salida también deben ser variables de salida (o variables locales en estructuras). La variable debe ser un tipo de datos primitivo o un tipo de datos de enumeración.

  • Una variable puede ser parámetro y entrada/salida al mismo tiempo. Una variable no debe ser utilizada por dos E/S diferentes.

  • El objetivo de un input o output La sección debe identificar de forma única la entrada o salida. No se distingue entre mayúsculas y minúsculas.

  • El parámetro UpdateInTask determina la tarea de actualizar las E/S. Si a este parámetro le falta la tarea con la bandera UPDATE_IOS se utilizará. Para los módulos de nivel superior, se creará un error si la tarea especificada en UpdateInTask no está definido para el módulo.

ejemplo 19. Ejemplo
SEC Io
        SEC Input : uiTemperature
                Variable := uiTemperature ;
                Name := TL_WeatherStation.NAME_iTemperature ;
                Desc := TL_WeatherStation.DESC_iTemperature ;
                UpdateInTask := Standard_Task : Medium;
        END_SEC
        SEC Output : uiLigh
                Variable := uiLightnessSouth ;
                Name := TL_WeatherStation.NAME_uiLightnessSouth ;
                Desc := TL_WeatherStation.DESC_uiLightnessSouth ;
                UpdateInTask := Standard_Task : Medium;
        END_SEC
END_S