您现在的位置是:首页 > PLC技术 > PLC技术
如何在多例兼容功能块中找到变量地址
来源:艾特贸易2017-06-05
简介在多例兼容功能块中,为块参数和静态本地数据加载与地址寄存器 AR2 有关的绝对地址。如果要在情景数据块中找到变量的绝对地址,则必须把域内指针(只是 AR2 的地址)加载到变量地
在多例兼容功能块中,为块参数和静态本地数据加载与地址寄存器AR2有关的绝对地址。如果要在情景数据块中找到变量的绝对地址,则必须把域内指针(只是AR2的地址)加载到变量地址。
示例:
TAR2 //将地址寄存器加载到累加器AC1(偏移量)
UD DW#16#00FF FFFF //关闭区域ID
LP##variable //加载变量地址
+D //增加偏移量和变量地址
LAR1 //保存地址寄存器AR1中的结果
这样可在AR1中获得绝对地址以进行进一步处理。
当功能块作为本地实例调用时,总要使用该方法。例如,在一个功能块中创建可作为类型“FB”的静态变量的功能块,这样所调用的情景数据块的数据偏移量就存储到情景数据块中。单个实例的偏移量在AR2中。如果不调用作为本地实例的功能块,则可以结束计算,值“0”就在地址寄存器中。
注意:如果改变程序中的地址寄存器AR2,则也改变了变量的偏移量地址,因此就不能保证再对变量进行正确访问。在这种情况下,必须预先保存AR2,并在对程序完成改变之后将其复位为初始状态。
点击排行
