Sektion: Parameters
In dieser Sektion werden die Parameter definiert, die später in den Parametern der Modulinstanz parametriert werden können.
SEC Parameters                               //optional: yes, modifier: [UPDATE]
    SEC Param : <parameter identifier>         //optional: yes, modifier [HIDE,UPDATE]
            Variable := <variable name>;         //optional: yes, type: InstancePath
            VariableType := <data type>          //optional: yes, type: @JG???IEC-Typ
            Name := <parameter name>;            //optional: no, type: text
            Desc := <parameter description>;     //optional: no, type: text
            Group := <parameter group name>      //optional: yes, type: text
            MustBeSet := TRUE/FALSE              //optional: yes, type: BoolFlag
            Default := <default value>;          //optional: yes, type: LiteralOrConstant
            Max := <max value>;                  //Optional: yes, type: LiteralOrConstant
            Min := <min value>;                  //Optional: yes, type: LiteralOrConstant
    END_SEC
END_SECDetails über die Syntax der Definitionstypen sind im Kapitel Syntax der Moduldeklaration beschrieben.
- Das Target des Abschnitts - Parammuss den Parameter eindeutig identifizieren.
- Die Definition - Variableist ein Eingangs-Instanzpfad relativ zum Modul-Funktionsbaustein. In dieser Variable wird der Parameterwert gespeichert, ihr Typ gibt den Parametertyp vor. Wenn- Variabledeklariert ist, muss der Parameter- VariableTypenicht definiert sein und wird ignoriert.
- Der Parameter - VariableTypebeschreibt den IEC-Typ der Variablen. Wenn- VariableTypedeklariert ist, über die Definition- Variableaber keine tatsächlich existierende FB-Variable angegeben wurde, muss die Definition- Defaultvorhanden sein. Dieser Wert muss zum Typ- VariableTypepassen.
- Die Parameter - Nameund- Descsind Strings und werden in einer Textliste definiert.
- Modulparameter können Basistypen oder Enumerationen sein, keine Strukturinstanzen oder Arrays. 
- Parametervariablen müssen Initialisierungswerte haben, die im Deklarationsteil des Funktionsbausteins definiert sind. 
- Der optionale Parameter - Defaultermöglicht das Überschreiben des Initialisierungswerts. Für den Initialisierungsausdruck und für den Standardwert sind Literale und Konstanten des korrekten Typs zulässig. Dazu zählen auch Bibliotheksparameter.
- Der optionale Parameter - Grouperlaubt die Parameter in Gruppen zu gliedern. Jede Gruppe wird dann als eigene Registerkarte im Moduleditor unter Parameter angezeigt.
- Mit dem optionalen Parameter - MustBeSetkann der Anwender gezwungen werden, einen Parameter im Moduleditor zu setzen. Wird der Parameter nicht gesetzt, erscheint eine Fehlermeldung.
- Die Definitionen Min und Max legen die minimalen und maximalen Werte fest, innerhalb der sich ein Parameterwert bewegen muss. Die Überprüfung dieser Grenzwerte kann nur stattfinden, wenn die Variable des Parameters ein numerischer Typ oder ein Zeitpunkt ist. In den anderen Fällen können diese Definition nicht verwendet werden und führen bereits beim Scannen zu Fehlern. 
SEC Parameters
        SEC Param : InParam1
                Variable := xIn1;
                VariableTyp := BOOL;
                Name := TL.Input1_Name;
                Desc := TL.Input1_Desc;
        END_SEC
END_SECDie Variable xIn1 muss im Deklarationsteil des Funktionbausteins definiert werden:xIn1 : BOOL := FALSE ;
Initialisierungswerte
Als Initialisierungsausdruck gilt der Ausdruck, der den Wert der Variablen bei der Initialisierung der Daten bestimmt. Bei einfachen Variablen des FB ist das immer der Ausdruck rechts von der Variablendeklaration:
iVar : INT := 17 ; // Initialisierungswert: 17
Bei Variablen in Strukturen kann auch die Initialisierung der Struktur ausschlaggebend sein:
TYPE s : STRUCT
        i1 : INT := 7 ;
        r1 : REAL := 5 ;
END_STRUCT END_TYPEDeklaration im Modul-FB:
structVar : s := (i1 := 2, r1 := 0.0) ;
In diesem Fall ist der Initialisierungsausdruck, der den Wert von structVar.i1 bestimmt 2 (und nicht 7).
Bei verschachtelten Strukturen müssen alle Initialisierungen auf dem Pfad vom Modul-FB bis zur Variable berücksichtigt werden. Es gewinnt die äußerste Initialisierung, die der Variable einen Wert zuweist.