Skip to main content

ST 声明:WHILE

WHILE 循环像 为了 循环以多次执行语句,直到出现中止条件。 a 的中止条件 WHILE 循环是一个布尔表达式。

句法:

WHILE <boolean expression> DO
  <instructions>
END_WHILE;

CODESYS 反复执行 <instructions> 只要声明 <Boolean expression> 返回真。如果布尔表达式已经 FALSE 在第一次评估时,然后 CODESYS 从不执行语句。如果布尔表达式从不应用该值 FALSE,然后这些语句会无休止地重复,从而导致运行时错误。

73. 例子
WHILE iCounter <> 0 DO
  Var1 := Var1*2
  iCounter := iCounter-1;
END_WHILE;


重要

您必须使用编程来确保不会导致无限循环。

从某种意义上说 WHILE重复 循环比 FOR 循环更强大,因为您不需要在执行之前知道循环的执行次数。因此,在某些情况下,只能使用这两种循环。但是,如果循环执行的次数是明确的,那么 FOR 最好使用循环以避免无限循环。

作为 IEC 61131-3 标准的扩展,您可以使用 继续 WHILE 循环中的语句。