BGX Begin move
AMX Wait for motion complete
WT 100 Wait 100 msec
COUNT=COUNT-1 Decrement loop counter
JP #LOOP,COUNT>0 Test for 10 times thru loop
EN End Program
Using If, Else, and Endif Commands
The DMC-40x0 provides a structured approach to conditional statements using IF, ELSE and ENDIF commands.
Using the IF and ENDIF Commands
An IF conditional statement is formed by the combination of an IF and ENDIF command. The IF command has as
it’s arguments one or more conditional statements. If the conditional statement(s) evaluates true, the command
interpreter will continue executing commands which follow the IF command. If the conditional statement evaluates
false, the controller will ignore commands until the associated ENDIF command is executed OR an ELSE command
occurs in the program (see discussion of ELSE command below).
Note: An ENDIF command must always be executed for every IF command that has been executed. It is
recommended that the user not include jump commands inside IF conditional statements since this causes re-
direction of command execution. In this case, the command interpreter may not execute an ENDIF command.
Using the ELSE Command
The ELSE command is an optional part of an IF conditional statement and allows for the execution of command
only when the argument of the IF command evaluates False. The ELSE command must occur after an IF command
and has no arguments. If the argument of the IF command evaluates false, the controller will skip commands until
the ELSE command. If the argument for the IF command evaluates true, the controller will execute the commands
between the IF and ELSE command.
Nesting IF Conditional Statements
The DMC-40x0 allows for IF conditional statements to be included within other IF conditional statements. This
technique is known as ‘nesting’ and the DMC-40x0 allows up to 255 IF conditional statements to be nested. This is
a very powerful technique allowing the user to specify a variety of different cases for branching.
Command Format - IF, ELSE and ENDIF
Format: Description
IF conditional statement(s) Execute commands proceeding IF command (up to ELSE command) if
conditional statement(s) is true, otherwise continue executing at ENDIF
command or optional ELSE command.
ELSE Optional command. Allows for commands to be executed when argument of
IF command evaluates not true. Can only be used with IF command.
ENDIF Command to end IF conditional statement. Program must have an ENDIF
command for every IF command.
Example using IF, ELSE and ENDIF:
#TEST Begin Main Program “TEST”
II,,3 Enable input interrupts on input 1 and input 2
MG “WAITING FOR INPUT 1, INPUT 2”
Output message
#LOOP Label to be used for endless loop
JP #LOOP Endless loop
EN End of main program
Chapter 7 Application Programming • 141 DMC-40x0 User Manual