Sezione: IO
La definizione di input e output può essere eseguita in questa sezione. Tutti gli input e output definiti sono disponibili nel file Mappa I/O.
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
Per dettagli sulla sintassi dei tipi di definizione vedere: descrizione in Sintassi della dichiarazione del modulo.
Il parametro
Variable
definisce il percorso dell'istanza di una variabile di input o di output.Tutti i componenti del percorso per gli input devono essere variabili di input (o variabili locali nelle strutture). Anche tutti i componenti del percorso per gli output devono essere variabili di output (o variabili locali nelle strutture). La variabile deve essere di tipo dati primitivo o di tipo enum.
Una variabile può essere parametro e input/output allo stesso tempo. Una variabile non deve essere utilizzata da due I/O diversi.
L'obiettivo di un
input
Ooutput
La sezione deve identificare in modo univoco l'input o l'output. Non esiste distinzione tra maiuscole e minuscole.Il parametro
UpdateInTask
determina l'attività per l'aggiornamento degli I/O. Se manca questo parametro, l'attività con il flagUPDATE_IOS
sarà usato. Per i moduli di primo livello verrà creato un errore se l'attività specificata inUpdateInTask
non è definito per il modulo.
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