S7-300里有没有for/next循环指令?

好像在STEP7中没有看到for/next指令。

最佳答案

1、好像在STEP7中没有看到for/next指令?
有呀。但写法不同。你可以使用循环控制指令(LOOP),调用一个程序段多次。跳转指令或循环控制指令的地址是一个标号。
2、S7-300/400的循环语句举例:

典型的循环语句编程:
1. 将PIW128- PIW147,共20个字送入DB10中
在OB1:
OPN   DB     10      //打开DB 10
      L     P#128.0          //初始读指针(标红色处可按实际应用的地址替代,例如10.0)
      LAR1  
      L     P#0.0            //初始写指针(标红色处可按实际应用的地址替代,例如10.0)
      LAR2  
      CALL  FC   100
      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的语句,继续循环。     
3、有关循环语句指令,详见:
《用于S7-300 和S7-400 的语句表(STL)编程手册》下载:
http://www2.ad.siemens.com.cn/download/Upload/AS/manual/1008[1].pdf

提问者对于答案的评价:
非常感谢。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月2日 下午4:12
下一篇 2018年12月2日 下午4:12

相关推荐