Rubrique : IO
La définition des entrées et des sorties peut être effectuée dans cette section. Toutes les entrées et sorties définies sont disponibles dans le Mapper les 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
Pour plus de détails sur la syntaxe des types de définition, voir : description dans Syntaxe de la déclaration du module.
Le paramètre
Variable
définit le chemin d'instance d'une variable d'entrée ou d'une variable de sortie.Tous les composants du chemin des entrées doivent être des variables d'entrée (ou des variables locales dans les structures). Tous les composants du chemin des sorties doivent également être des variables de sortie (ou des variables locales dans les structures). La variable doit être un type de données primitif ou un type de données enum.
Une variable peut être à la fois paramètre et entrée/sortie. Une variable ne doit pas être utilisée par deux E/S différentes.
La cible d'un
input
ououtput
La section doit identifier de manière unique l’entrée ou la sortie. Il n'y a pas de sensibilité à la casse.Le paramètre
UpdateInTask
détermine la tâche de mise à jour des E/S. Si ce paramètre manque la tâche avec le drapeauUPDATE_IOS
sera utilisé. Pour les modules de niveau supérieur, une erreur sera créée si la tâche spécifiée dansUpdateInTask
n'est pas défini pour le module.
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