函数(FUN)是程序组织单元(POU),在执行时传递数据元素作为结果以及类别VAR_OUTPUT和VAR_IN_OUT的任意数量的输出值。通过指定结果类型VOID,函数没有结果。
还可通过VAR_EXTERNAL、VAR_EXTERNAL_RETAIN或VAR_EXTERNAL_CONSTANT访问全局变量。
函数不包含任何内部信息,即对类别VAR_INPUT、VAR_IN_OUT和VAR_EXTERNAL调用具有相同输入值的函数,将始终对类别VAR_OUTPUT、VAR_IN_OUT和VAR_EXTERNAL得出相同结果和相同输出值。
Control FPWIN Pro7提供两种类型函数:
系统库的系统指令
[IEC standard library]
[FP library]
[FP tool library]
[FP pulsed library]
用户自定义函数
还可以编程您自己的函数并将其存储在用户库中。然后,新函数将可用于安装了用户库的所有项目。
函数可被写入以下程序语言:
[梯形图(LD)]或[功能块图(FBD)]
[结构化文本(ST)]
[指令列表(IL)]
因为函数只能由程序、函数或功能块加载,因此无法将其分配给任务。
函数无法递归调用。
不得超出最多5个嵌套函数调用,例如Fun1 (Fun2 (Fun3 (Fun4 (Fun5 (x)))))
。
除了不带正式参数的ST或IL函数外,函数结果和函数输出可以保持不连接。
当在ST编辑器中调用带正式参数的函数时,以下条件适用: