语句表编程的程序

我这里有一段语句表编的程序,大致如下:

      AR1  P##c300

      L     W#16#1002
      T     W [AR1,P#0.0]
      L     DW#16#4005B
      T     D [AR1,P#2.0]
      L     P#4.0
      T     D [AR1,P#6.0]
      L     B#16#89
      T     B [AR1,P#6.0]

      LAR1  P##c400

      L     W#16#1002
      T     W [AR1,P#0.0]
      L     DW#16#40000
      L     P##c100
      T     D [AR1,P#6.0]
      L     B#16#87
      T     B [AR1,P#6.0]
也可以看图片1
请高手给我分析一下,这些程序是什么意思,主要实现什么功能。望指点

图片说明:

语句表编程的程序   

最佳答案

1、这些程序是什么意思?
这是一段指针寻址的程序,从图片中看:程序中
#c300为实际地址0.0;#c400为实际地址10.0;#c100为实际地址20.0;#c700为实际地址22.0。
上述地址开始的区域均为TEMP(临时)区L:
     AR1  P##c300//初始地址指针为#c300,即0.0
      L     W#16#1002
      T     W [AR1,P#0.0]//将16进制常数1002存入LW0中
      L     DW#16#4005B
      T     D [AR1,P#2.0] //将双字长16进制常数4005B 存入LDW2中
      L     P#4.0
      T     D [AR1,P#6.0] //将地址常数P#4.0存入LDW6中
      L     B#16#89
      T     B [AR1,P#6.0] //单字节长16进制常数89存入LB6中
      LAR1  P##c400//初始地址指针为#c400,即10.0
      L     W#16#1002
      T     W [AR1,P#0.0] //将16进制常数1002存入LW10中
      L     DW#16#40000//将双字长16进制常数40000装入累加器1中
      L     P##c100//将地址常数#c100(20.0)存入装入累加器1中,原累加器1中内容存入累加器2中.
      T     D [AR1,P#6.0] //将地址常数#c100(20.0)存入LD20.0中
      L     B#16#87
      T     B [AR1,P#6.0] //单字节长16进制常数87存入LB26中
2、主要实现什么功能?
具体的实际功能需要你自己根据完整的程序去分析,单从上述程序只能给出指令表面的意义。有关指针文档,见:
见《关于S7-300和S7-400指针寻址的说明与例程(更新版)》下载:
http://www2.ad.siemens.com.cn/Download/Upload/AS/faq/F0215.pdf
详见《step7编程之地址概念详解》连接:
http://www.plc365.com/jishu/57.html

提问者对于答案的评价:
回答的很详细

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

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

相关推荐