西门子300间接寻址

本人以前做西门子200较多   通讯  模拟量  间接寻址  for循环都用过   ,最近有项目需要用到西门子300,看间接寻址的手册看得有点迷糊了  ,请大师们'给指点指点,有例子的话就感激不尽了  谢谢

最佳答案

1、建议系统看看:
、《关于S7-300和S7-400指针寻址的说明与例程(更新版)(2008.03.04)     》下载:
http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=F0215
、《step7编程之地址概念详解》连接:
http://ishare.iask.sina.com.cn/f/22746895.html
http://www.gongkong365.com/bbs/job.php?action=download&aid=96
、《西门子STL间接寻址常问问题集》
http://www.ad.siemens.com.cn/download/docMessage.aspx?
ID=6175&loginID=&srno=&sendtime=
2、实例:
典型的循环语句编程:
1. 将PIW128- PIW147,共20个字送入DB10中
在OB1:
OPN   DB     10      //打开DB 10
      L     P#128.0          //初始读指针
      LAR1  
      L     P#0.0            //初始写指针
      LAR2  
      CALL  FC   100

2. 将PIW256- PIW275,共20个字送入DB20中
  OPN   DB     20      //打开DB 20
      L     P#256.0          //初始读指针
      LAR1  
      L     P#0.0            //初始写指针
      LAR2  
      CALL  FC   100
建立一FC块:
在FC100:
L     20               // 20个字的循环计数为初值
M001: T     MB    10        //计数值 送入MB 10
      L     PIW [AR1,P#0.0]   //按读指针指示的地址读数据
      T     DBW [AR2,P#0.0]  //按写指针指示的地址写数据
      +AR1  P#2.0            //读指针指向下一数据地址
      +AR2  P#2.0            //写指针指向下一数据地址
      L     MB    10        //取循环计数值
      LOOP  M001           //循环计数值如为0则结束循环;如不为0减1后则转向标号为M001的语句,继续循环。

提问者对于答案的评价:
谢谢   还希望以后多多指教

专家置评

已阅,最佳答案正确。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月1日 下午3:54
下一篇 2018年12月1日 下午3:55

相关推荐