[西门子] 西门子 SCL :使用区间 (Region)

[复制链接]
查看606 | 回复0 | 2024-6-9 20:44:52 | 显示全部楼层 |阅读模式
>功能
在 SCL 中,可在区间内构建程序代码。由于集成了相关程序段而且可根据需要对区间进行灵活展开和折叠,因而程序代码更为清晰直观。在区间总览窗口中,可快速查看各个区间。区间总览窗口位于编程窗口旁边,可根据需要打开或关闭。
下图显示了区间总览窗口和编程窗口:

区间总览图中,还将显示存在语法错误的区间。这样,即可快速确定故障代码所在位置并进行相应修正。
要在区间中编写程序段,可将程序段包含在关键字“REGION”和“END_REGION”中。根据突出显示关键字中的设置,相应的关键字可以为“region”和“end_region”,也可以是“Region”和“End_Region”。这些关键字可根据当前的设置进行自动转换。要查找关键字“REGION”和“END_REGION”的配对部分,可单击“REGION”或“END_REGION”。系统将高亮突出显示这两个关键字。
可为每个区间指定一个名称,具有以下诸多优势:


  • 区间折叠时也会显示该名称。这样,可确保程序代码的清晰显示。
  • 在区间的总览窗口中,可轻松识别各个区间并快速导航到指定区间处。

  • 如果将该名称插入为多语言注释,则可将该名称翻译为其它项目语言。为此,需使用字符串“(/*”和“*/)”包围该名称。但只能将该名称作为插入为不可翻译的名称或多语言注释。请注意以下事项:

    另请参见:“使用多语言项目”

    • 不允许混用普通名称和多语言注释。
    • 多语言注释名称不能扩展为多行。
    • 如果区间名称为多语言注释,也可以复制区间。如果该名称已存在翻译,则也会应用于区间副本。如果之后更改了区间的名称,则将使用当前编辑语言进行更改。
    指定块名称为可选操作。语法
    可通过以下语法,可在区间内构建程序段:





    REGION <名称> 或 (/*<多语言注释的名称>*/)
    <指令>
    END_REGION


    使用区间时,请注意以下信息:

    • 关键字 "REGION" 和 "END_REGION" 必须在一行的起始位置。这些关键字之前,仅允许插入空格。
    • 关键字“END_REGION”的所有字符将认作为注释信息,因而不影响程序的执行。
    • 所有指令的执行都必须在一个区间内完成。
    • 在 CASE 语句内,该指令可用区间进行包围。用于比较 CASE 语句的常量需位于区间之外。这些区间不得包含多个分支。
      以下示例显示了 CASE 语句中允许的区间用法:
      CASE <Expression> OF
      <Constant1> : REGION <Instructions1> END_REGION
      <Constant2> : REGION <Instructions2> END_REGION
      ELSE REGION <Instructions0> END_REGION
      END_CASE
      以下示例显示了 CASE 语句中不允许的区间用法:
      CASE <Expression> OF
      REGION <Constant1> : <Instructions1> END_REGION
      <Constant2> : REGION <Instructions2> END_REGION
      ELSE <Instructions0>
      END_CASE
      CASE <Expression> OF
      <Constant1> : <Instructions1> REGION
      <Constant2> : END_REGION <Instructions2>
      ELSE <Instructions0>
      END_CASE
      在这些情况下,区间内的常量将解释为可通过 GOTO 命令到达的跳转标签,但 CASE 本身不会执行这些跳转标记。
    也可以对这些区间进行嵌套。但需确保其它区间中包含的区间可成功执行:





    REGION <名称>
    <指令>
    REGION <名称>
    <指令>
    END_REGION
    <指令>
    REGION <名称>
    REGION
    <指令>
    END_REGION
    REGION <名称>
    <指令>
    END_REGION
    END_REGION



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则