Beispiel

(*! @summary a program with a simple counter
<description>This is a sample program in which i will increase a counter variable. Of course the description of this program could be longer than one line </description> *)
//! @param iCount2 variable to increase the counter
PROGRAM MAIN
VAR
    btest AT%Q* :BOOL; //! A sample variable not needed for this POU
    iCount2: INT; // This is my internal comment which will not be visible in the docu
    myPOU : POU     //! This is a sample of a FB instanciated within this program
END_VAR

(*! <example> This sample shows how to increase the variable <c>iCount2</c>.
The following code can be used to increase $iCount:
<code>iCount2:=iCount2+1; </code></example>*)
//! @summary sample function block for the PS meeting

FUNCTION_BLOCK FB_Cylinder IMPLEMENTS ICylinder
VAR_INPUT
    bTest :BOOL;
END_VAR
VAR

//! @param tTimerValue internal TIME variable that is being accessed via property "P_Timervalue" (Get/Set)
    tTimerValue       : TIME := T#500MS; //internal comment
    iState                 : INT; //! state of the state machine
    bAtLeftPosFbk   : BOOL; //internal comment
    bAtRightPosFbk : BOOL; //! software watchdog to reach the end position
    TimerReach       : TON; //! software watchdog to reach the end position
    TimerStart          : TON; //! Start timer
END_VAR

//! <description> regular FB that additionally implements an interface "ICylinder" </description>