中国亿万电器网 >> 亿万论坛 >> 自动化系统交流 >> 【电机和传动专区】 >> [已解决]STL的解释
[已解决]STL的解释 永乐,2008-12-23 13:08:57

 那位仁兄把下面的的STL原理告诉小弟一下,谢谢
 
 L     #P_SET
      L     1
      -I    
      L     12
      *I    
      L     #P_ACT
      +I    
      L     1
      -I    
      L     2
      *I    
      ITD  
      SLD   3
      T     #TEMP0
      OPN   #DB_NO
      L     DBW [#TEMP0]
      T     DBW  290

cvlsam,2008-12-23 13:20:45

L     #P_SET      //装入符号名为#P_Set的变量到ACCU1中
      L     1   //将数值1装入ACCU1中,原ACCU1中的数据#P_Set送入ACCU2
      -I       //ACCU2-ACCU1,结果放在ACCU1中
      L     12  //和上面的意思相同
      *I      //做乘法
              //以下代码雷同
      L     #P_ACT
      +I    
      L     1
      -I    
      L     2
      *I    //做到这一步时,以上代码相当于执行了表达式:
           //[(#P_SET-1)*12+#P_ACT-1]*2
      ITD   //将结果转换为长整型数据
      SLD   3 //左移3位,成为X.X格式,也就是32位指针格式
      T     #TEMP0 //将转换后的结果送入变量#Temp0中去
      OPN   #DB_NO   //打开块号为#DB_NO的数据块
      L     DBW [#TEMP0] //装入DBW,对于间接寻址来说,地址值必须为32位指针格式~~
      T     DBW  290  //将寻到的地址中的值送入DBW290中。

如果楼主无STL编程经验,建议认真学习西门子的STL编程手册,并从论坛下载资料后要认真阅读消化~~

以上

huxang1,2008-12-24 18:34:26

二楼讲得非常好,程序方面可能得结合实际的工艺看,不然光知道他在做运算,不知道为什么要这么做!
无敌龙,2008-12-24 19:29:10

西门子好复杂,我只懂点欧姆龙的皮毛,还是学学日系的算了。
枫之舞,2008-12-26 11:42:25

[QUOTE][B]下面引用由[U]无敌龙[/U]发表的内容:[/B]

西门子好复杂,我只懂点欧姆龙的皮毛,还是学学日系的算了。[/QUOTE]
呵呵,欧姆龙也不是那么好学的,研究下它的ST就知道了

xbbcn,2008-12-26 17:34:55

[QUOTE][B]下面引用由[U]无敌龙[/U]发表的内容:[/B]

西门子好复杂,我只懂点欧姆龙的皮毛,还是学学日系的算了。[/QUOTE]
日系也博大精深,并不是想象中的那么简单

shanqibin,2008-12-28 14:16:13

二楼解释的非常到位,不愧是总板方,功底深厚,非常了解STL语句啊
SLD 3 //左移3位,成为X.X格式,也就是32位指针格式 lord82,2009-01-07 15:36:25

左移3位怎么变成32位指针格式
fyhui,2009-01-20 07:51:21

siemens的指针格式就是这样的。XXXXX。YYY,XXXXXX是字节地址,YYY是位地址,楼上做的字节地址的运算所以要左移3位。或者乘8也可以
 97 1 8: 此主题共有9帖 此页9帖 每页12帖 

[查看完整模式]

Page created in 0.0781 seconds width 2 queries.