求这段代码详细讲解

使用UC调用FB

 L PIW 290

 T "tDIPd".PV_PER //"tDIPd"是"TCONT_CP"的背景数据块,我们在这里使用共享数据块方式对数据块写入数据

 L MD 4

 T DBD 34

 A M 8.0

 A DBX 42.0

 A M 8.1

 = DBX 42.1

 //以上的是参数输入部分

 LAR2 P#0.0 //该语句指名了FB和背景数据块的对应关系,就是FB的第一个参数对应背景数据的地址

 CDB //交换共享数据块和背景数据块,将当前的共享数据块变为背景数据块

 UC "TCONT_CP" //使用UC调用FB,FB的背景数据块就是上面打开的数据块即"tDIPd"

 CDB //交换共享数据块和背景数据块,将当前的背景数据块变为共享数据块

 //以下是参数输出部分

 A DBX 42.0

 = M 8.0

 A DBX 42.1

 = M 8.1

 L DBW 22

 T PQW 306

 L DBD 34

 T MD 4


特别 A DBX 42.0  这个是不是有问题啊 ,它没有指定db块么,程序怎么知道是哪个db块  我感觉是不是这样db1.dbx42.0   求高手指点

最佳答案

UC FBx 这个指令,是不需要输入背景数据块的
例如:
UC FB2

////////////
 L PIW 290

 T "tDIPd".PV_PER //"    这里,打开了一个DB块,并将PIW290 传送至该DB“tDIPd”的DBWx,
      比如说DB2.DBW4,余下的操作都是针对这个DB2进行的操作
L MD 4

 T DBD 34///  把 MD4的数值传送至DB2.DBD34

 CDB //交换共享数据块和背景数据块,将当前的共享数据块变为背景数据块

 UC "TCONT_CP" //使用UC调用FB,FB的背景数据块就是上面打开的数据块即"tDIPd"/////比如说DB2

 CDB //交换共享数据块和背景数据块,将当前的背景数据块变为共享数据块


 A DBX 42.0  ///其实这个DBX42.0 是"tDIPd"里的,也就是我举例的DB2

 = M 8.0

这么说应该明白了吧

提问者对于答案的评价:
xx

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc191679.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年8月3日
下一篇 2017年8月3日

相关推荐