本人对stl语句表程序不太熟悉,尤其是对L跟T两个指令 下面附上一段程序,求各位解释一下这段程序,每一步的含义,谢谢了。
L P##PIW //将指针PIW装载到ACCU1中
LAR1 //将ACCU1中的PIW装入地址寄存器1
L PIW [AR1,P#8.0]
T #Status //状态字
L PIW [AR1,P#10.0]
T #_Speed //反馈
L PIW [AR1,P#12.0]
T #Protect //保护字
L PIW [AR1,P#14.0]
T #Logic_IO //逻辑IO
L PIW [AR1,P#16.0]
T #IPZD05
L PIW [AR1,P#18.0]
T #IPZD06
L PIW [AR1,P#20.0]
T #IPZD07
L PIW [AR1,P#22.0]
T #IPZD08
L PIW [AR1,P#24.0]
T #IPZD09
L PIW [AR1,P#26.0]
T #IPZD10
NOP 0
最佳答案
1、该程序十分好理解,及是一个连续读外围通道的数据,分别送入相应的地址中。
L P##PIW //将指针PIW装载到ACCU1中
LAR1 //将ACCU1中的PIW装入地址寄存器1,此时AR1中是外围通道的首地址,例如P#200.0
L PIW [AR1,P#8.0 ]
T #Status //状态字,读地址PIW 208中的数据存入 #Status 中。
L PIW [AR1,P#10.0]
T #_Speed //反馈,读地址PIW 210中的数据存入 #_Speed 中。
L PIW [AR1,P#12.0]
T #Protect //保护字,读地址PIW 212中的数据存入 ##Protect 中。
L PIW [AR1,P#14.0]
T #Logic_IO //逻辑IO,读地址PIW 214中的数据存入 #Logic_IO 中。
L PIW [AR1,P#16.0]
T #IPZD05 //读地址PIW 216中的数据存入#IPZD05 中。
L PIW [AR1,P#18.0]
T #IPZD06 //读地址PIW 218中的数据存入#IPZD06 中。
L PIW [AR1,P#20.0]
T #IPZD07 //读地址PIW 220中的数据存入#IPZD07 中。
L PIW [AR1,P#22.0]
T #IPZD08 //读地址PIW 222中的数据存入#IPZD08 中。
L PIW [AR1,P#24.0]
T #IPZD09 //读地址PIW 224中的数据存入#IPZD09中。
L PIW [AR1,P#26.0]
T #IPZD10 //读地址PIW 226中的数据存入#IPZD010 中。
NOP 0 //空操作,无意义。
2、有关指针寻址的资料:
、《关于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=
提问者对于答案的评价:
谢谢两位了 现在我知道大概对于fc块的调用以及如何编写fc块了
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc225284.html