怎样将DB指针间接传送到外形操作数.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
怎样将DB指针间接传送到外形操作数

问题: 怎样将DB指针间接传送到外形操作数? 解答: 例如,如果要预置DB5.DBW16为一个外形操作数,是无法间接完成的。一种选择是为DB数和数据单元DBW及DBX定义单独的外形操作数。这样就可以以变量(如MW)或常量的形式 传送DB数。此例中数据单元应该为指针地址。一个参数用来为操作数域定址(如DBW)而另一个参数用来指定单独的操作数(如DBX5.3)。在传送的参数基础上,函数决定了期望的地址,不同情况下从DB中载入相关值并将其传送到相应的输出参数。 编程指南: 创建带以下参数的函数: 声明 名称 类型 注释 In DB_NUMBER INT 传送DB数,如MW或常数 In ADDRESS POINTER 传送期望域地址,如DBWx.0或P#10.0 In ADDRESS_BIT POINTER 传送期望操作数地址,如DBWx.y or P#6.4. out DB_BIT WORD 定义域地址的输出值 out DB_VARIABLE BOOL 定义操作数地址的输出值 temp DB_NO_TEMP INT DB数的临时内存 接下来为DW地址赋值 L #DB_NUMBER // 载入DB数 T #DB_NO_TEMP // 临时标记 L P##ADDRESS // 载入指针起始地址 LAR1 // 在地址寄存器中保存 L D [AR1,P#2.0] //载入域指针 LAR1 AUF DB [#DB_NO_TEMP] // 打开DB L DBW [AR1,P#0.0] // 载入DBW值 T #DB_VALUE // 赋值 接下来给位地址赋值 L #DB_NUMBER // 载入DB数 T #DB_NO_TEMP // 临时标记 L P##ADDRESS_BIT // 载入指针起始地址 LAR1 // Save in address register在地址寄存器中保存 L D [AR1,P#2.0] // Load area pointer载入域指针 LAR1 AUF DB [#DB_NO_TEMP] // 打开DB U DBX [AR1,P#0.0] // 查询位状态 #DB_BIT // 分配位状态 注意事项: 在以上的编程指南中-和在示例程序中一样-传送的参数没有进行明确的检查,例如DB及其长度是否置于CPU的主内存中。为了确保,可以用系统函数SFC24来检查数据区。 在在线帮助 “Help Help Topics Index Format: BLOCK Parameter Type ANY” 下可以找到对ANY指针的配置描述。在 “Help Help Topics Index ANY, Parameter: description and use” 下可找到如何间接定义数据区的示例。 示例描述: 函数用示例调用进行了演示。函数FC18只用来调用函数FC17。通过变换参数可检查其功能。D B5可用作预设了任意测试值的数据块。 下载: 示例包含了一个带两个所述函数(FC17, FC18)、一 个功能块DB5和组织块OB1的STEP 7 V5项目。功 能块只显示可能的选项。您需要对它进行修改以适应您的需求。 DBZugVar.exe 50 KB 拷贝“DBZugVar.exe”文件到一个单独的目录下然后双击运行它。STEP 7 V5项目及其相关子目录会解压缩。接着就可以用SIMATIC管理器打开并运行解压后的项目。

文档评论(0)

tiangou + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档