结构化文本主要语法
结构化文本 (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 来缩进复杂语句。
- 插入注释以提高行或段落的可读性。
提供反馈