北京自动化产品STEP 7销售 张军
检查块的一致性和作为块属性的时间标签 如果用这种方法寻址,STEP 7将自动打开正确的DB。如果用AR1寄存器进行间接寻址,必须经常在AR1中调用正确的地址。
修改寄存器的条件 只有使用STL才能使用地址寄存器进行间接寻址。其它编程语言不支持间接寻址功能。 在所有的编程语言中,通过编译器修改DB寄存器也必须计算在内,以确保块调用时参数传递的正确性。 地址寄存器AR1和所调用块的DB寄存器的内容在下述情况可能被覆盖: 条 件 说 明 DB块作为实际参数 ? 一旦使用DB块分配实际参数(例如DB20.DBX0.2),STEP 7则打开相应的DB(DB20)并将DB块号写入DB寄存器的。在块调用后仍然生效。 在调用块时使用复杂数据类型 ? 当在一个FC内调用一个块后,将向所调用的块传送一个复杂数据类型的形参元素(字符串、数组、结构或UDT),AR1和所调用块的DB寄存器的内容被修改。 ? 如果参数在VAR_IN_OUT区中,则在FB内调用的情况是相同的。 访问复杂数据类型的元素 ? 当FB访问VAR_IN_OUT区中复杂数据类型的形参元素时(字符串、数组、结构或UDT),STEP 7内部使用地址寄存器AR1和DB寄存器,它将修改两个寄存器中的内容。 ? 当FC访问VAR_IN_OUT区中复杂数据类型的形参元素时(字符串、数组、结构或UDT),STEP 7内部使用地址寄存器AR1和DB寄存器,它将修改两个寄存器中的内容。 注意: ? 当从版本1的块内调用一个FB时,如果调用前的命令没有限制RLO,则个布尔参数IN或IN_OUT的实际参数不能正确传送。在这种情况下,它是与现有的RLO组合的逻辑状态。 ? 当调用一个FB(单个背景或多重背景)时,地址寄存器AR2被该写。 ? 如果在一个FB中修改了地址寄存器AR2,则不能保证正确地执行FB。 ? 如果没有将完全寻址的DB地址传送给一个ANY参数,则ANY指针不会得到DB块号,而其得到的DB块号为0。
免责声明:本商铺所展示的信息由企业自行提供,内容的真实性、准确性和合法性由发布企业负责,一比多公司对此不承担任何保证责任。
友情提醒:为保障您的利益,降低您的风险,建议优先选择商机宝付费会员的产品和服务。