结构化文本主要语法

结构化文本 (Structured Text, ST) 程序是 ST 语句的列表。
下列规则适用于 ST 编程语句:
  • 每个语句以分号(“;”)分隔符结束。
  • 变量、标识符、常量或语言关键字等源代码中使用的名称使用以下字符进行分隔:
    • 不活动分隔符,如空格
    • 活动分隔符,如表示“大于”比较的“>”
  • 注释为非执行信息,可放在 ST 编程中的任何位置。使用以下语法在行首或代码后插入注释:
    • 以 // 开头并在行结束处结尾的单行注释。
    • 多行注释以“(*”开头,以“*)”结尾。
    • 多行注释以“/*”开头,以“*/”结尾。
小贴士: 当 DINT 变量或已定义的字用于指定位编号时,间接位寻址受支持。

ST 语句类型

赋值语句
variable := expression;
功能调用
  • (*Non-formal syntax with all inputs separated by commas in set order and output as a separate statement.*) Output1 := FUNCTION_NAME(Input1, Input2);
  • (*Formal syntax with inputs and outputs separated by comma optionally listed and in any order.*) Output1 := FUNCTION_NAME(InputParameter1 := Input1, InputParameter2 := Input2);
功能块调用
  • (*Non-formal syntax with all inputs separated by commas in set order and output as a separate statement.*) FUNCTION_BLOCK_INSTANCE(Input1, Input2, ...); Output1 := FUNCTION_BLOCK_INSTANCE.OutputParameter1; Output2 := FUNCTION_BLOCK_INSTANCE.OutputParameter2;
  • (*Formal syntax with inputs and outputs separated by comma optionally listed and in any order.*) FUNCTION_BLOCK_INSTANCE(InputParameter1 := Input1, InputParameter2 := Input2, OutputParameter1 => Output1, OutputParameter2 => Output2);
选择语句
IF,THEN,ELSE,CASE...
迭代语句
FOR,WHILE,REPEAT...
控制语句
RETURN,EXIT...
特殊语句
使用特殊语句与其他语言链接。
  • 在 ST 语言编辑器中,项以不同的颜色显示:
    • 黑色:基本代码、数字和文本字符串
    • 蓝色:关键字和函数
    • 绿色:注释
    • 红色:变量和功能块实例
  • 在活动分隔符、文本和标识符之间使用不活动分隔符可增加 ST 程序的可读性。ST 不活动分隔符包括:
    • 空格 - 空白
    • 选项卡
    • 行结束符 - 可以放在程序中的任何位置
  • 使用不活动分隔符时的准则:
    • 每行编写的语句不能多于一条。
    • 使用 Tab 来缩进复杂语句。
    • 插入注释以提高行或段落的可读性。
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal