CODESYS Development System
编译器错误 C0038 信息 : '<invalid output>' 不是'<function name>' 的输出 可能的错误原因 :局部变量在函数调用中作为输出处理。 错误修正 : 将变量声明为输出参数。 例 311 . 错误示例: PROGRAM PLC_PRG VAR i : INT; x : INT; END_VAR i := TEST(iVar => x); FUNCTION TES
CODESYS Development System
运算符:库命名空间 句法: <library namespace>.<library POU identifier> 例子: LIB_A.FB_A 库块标识符附加到库命名空间(作为由点分隔的前缀),以便对库模块进行唯一且合格的访问。命名空间通常与库名称匹配。 例 148 . 例子 库包含在项目中并包含 FB_A POU。但是,具有相同名称的功能块已在项目本地可用。将库 POU 标识为 LIB_A.
CODESYS Development System
编译器警告 C0542 信息 : 继承不适用于数据类型“UNION”<数据类型名称>。 可能的错误原因 : 结构化数据类型 ( DUT ) 是从一个 UNION 通过扩展 EXTENDS , 或 UNION 是从一个 DUT .这种派生是不允许的。但是,出于兼容性的原因,仅发出警告。 例 439 . 错误示例: TYPE U_StringExt EXTENDS U_StringBase : UNI
CODESYS Development System
数据类型:隐式枚举 隐式枚举允许一种简单的方法来声明仅在本地 POU 中有效的新枚举变量。这种类型的变量可以采用在组件列表中声明的有限数量的整数值。 隐式枚举没有数据类型名称或标识符。 宣言 : <variable name> : ( <list of component names> ) := <initialization>; <list of component names> 具有所需数量组
CODESYS Development System
使用任务局部变量 任务局部变量是循环一致的。它们只能由一个任务周期中的一个已定义任务写入,而所有其他任务只能读取它们。考虑到任务可以被其他任务打断,也可以同时运行。如果应用程序在具有多核处理器的系统上运行,则周期一致性首先也适用。 因此,当多个任务编辑相同的变量时,使用任务局部全局变量列表是一种自动获得同步(由编译器)的方法。使用普通 GVL 时情况并非如此。多个任务可以在一个周期内同时写入正常的
CODESYS Development System
静态分析代码 您还可以在代码生成期间对源代码进行静态分析(“linten”)。它确定您的源代码是否遵循您设置的编码准则 - 沿着“lint”分析工具的行。 在对话中 项目设置 在类别下 静态分析灯 启用将被检查的规则。每次生成代码时,检查本身都会自动进行,例如当您运行命令时 构建 → 生成代码 选择。如果检测到与规则的偏差,则将其分类为该类别的错误消息 翻译 显示在消息窗口中。报告的错误有一个前缀
CODESYS Development System
重构 一般来说,重构是一种在不改变其行为的情况下改进已编写软件的设计的方法。 重构 CODESYS 提供重命名对象和变量名称以及更新块 I/O 的功能。您可以显示使用重命名对象和变量的所有位置,然后将它们作为一个整体重命名或单独选择。此外,您可以 工具 → 选项 配置是否以及在哪些点 CODESYS 自动提示您重构。 重命名全局变量 要求:您已经打开了一个包含至少一个功能块的项目 脸书 和一个全局
CODESYS Development System
数据类型:隐式枚举 隐式枚举允许一种简单的方法来声明仅在本地 POU 中有效的新枚举变量。这种类型的变量可以采用在组件列表中声明的有限数量的整数值。 隐式枚举没有数据类型名称或标识符。 宣言 : <variable name> : ( <list of component names> ) := <initialization>; <list of component names> 具有所需数量组
CODESYS Development System
地址 小心 如果使用指向地址的指针,则可以在在线更改期间移动地址的内容。如果使用绝对地址,则地址的内容在在线更改期间不会更改。 句法: %<memory area prefix> ( <size prefix> )? <memory position> <memory area prefix> : I | Q | M <size prefix> : X | B | W | D <memory po
CODESYS Development System
运营商:SHL IEC 运算符用于将操作数向左按位移位。 erg := SHL (in, n) in : 左移的操作数 n : 要移位的位数 in 向左转 重要 如果 n 超过数据类型宽度,则取决于目标系统如何 BYTE , WORD , DWORD , 和 LWORD 操作数被填充。目标系统导致填充零或 n MOD <寄存器大小> . 重要 注意位数 CODESYS 用于此操作,由输入变量的数据