此段程序请老师帮忙分析一下

L     #IN0       如果#IN0=0则立即跳转到m001,#out2=0然后结束
      L     0
      ==I
      JC    M001
      L     #IN0        如果#IN0不等于0按顺序执行以下运算
      L     1
      -I
      L     2
      *I                      
      L     110                         
      +I                                    (#IN0-1)*2+110
      SRW   1                          右移1位即除以2
      SLW   4                                左移4位即乘以16,如果#IN0分别等于1,2,3,4,时
      T    #TEMP           如果#IN0分别等于1,2,3,4,时我计算出的数值分别是880, 896, 912, 928仿真的数据不是这样的,为什么呢?                                
      OPN   #IN1
      L DBW [ #TEMP3]
      T     %LD10
      L     %LB12
      T     #OUT2
      JU    M002
M001: L     0
      T     #OUT2
M002: NOP 0
对这段程序实在是看不太明白,请老师门帮忙分析一下,谢谢

最佳答案

这是间接寻址的用法。你需要知道 #TEMP3存储数据的格式,在寻址时表示的地址是什么。
#IN0分别等于1,2,3,4时,读取的地址是DBW110、DBW112、DBW114、DBW116。
参见:S7-300和S7-400寻址
http://www.ad.siemens.com.cn/download/OnlineReading.aspx?DocId=1597

提问者对于答案的评价:
谢谢老师,有点明白了

专家置评

已阅,最佳答案正确。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年12月9日 下午11:19
下一篇 2017年12月9日 下午11:19

相关推荐