很少用多重背景...今天去网上搜了下,部分说明如下(摘自知名工控前辈博客): ... 先建立一个FB10。完成内容X*Y=Z 定义形式参数 IN:X,Y OUT:Z 保存 然后再建立FB20,形式参数STAT 里定义 NAME:MUL Data Type:FB10 程序中写以反复的写 call MUL。保存 OB1 中写 CALL FB20,DB10 DB10 为多重背景数据块 注意一点,多重背景调用等同于FC 的调用,call MUL 下的参数填写一定不能空着,必须有实际地址,否则用 DB10 的数据程序会混乱。 ... 最后一句,也就是“注意一点”后面:是不是说在FB20中调用FB10,FB10的接口必须写入实参? 认为管脚已经有相应的全局变量地址了,不用再填写实参,同时验证了下: 1、FB1:很简单的起保停控制; 2、FB100:STAT定义FB1数据类型; 3、OB1中调用FB100,相应实例块DB201; 4、在有限的测试过程中,没有发现问题,每组数据独立,想停就停想启就启; 5、是我理解错了吗?
记得视频学习中心里关于step7的使用教程视频里也说过fb块的in_out接口不能为空,如果in_out接口为空编译时不会报错,但在程序执行时会报错。和楼主的这个问题是一样的,结果没有报错,不知道究竟是怎么回事?
补充
仅从单个FB块调用来说,简单数据类型的接口可以为空的吧?