技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > STL 程序

STL 程序

刘玉蓉 发布于2014-10-13 17:38 3 0 标签:

1、在程序中 L   4  和 L  L#4 有什么区别
2、 A     #iSlowFast                 
      JC    M001
      L     #in11
      JU    M002
M001: L     #in12
M002: L     5                           // norm a speed value
      *I    
      T     #_PO2_Speed

      A     #iBackwards                 // set direction
      JCN   M003
      L     -1
      *I    
      T     #_PO2_Speed
M003: NOP   0

中程序是怎么执行的 ? 运行完 M001 后怎么执行呢 或执行完M002后呢 ?
3、L DW#16#8  它怎么会是指针呢 ?
     T MD 2 
     L DBW [MD 2] 怎么会是执行 L DBW1 了呢
   A DBX [MD 2] 怎么会是  A DBX1.0 了呢
4、LAR1  P##_PO1  其中 #P01 是input  ,外部调用时管脚 输入是IW100
      L     LW [AR1,P#0.0]
    T     #oPO_1
我感觉还是有点迷糊 ,理解不透彻!
  

佳答案

要理解 指令的L  4  和 L  L#4之间的区别,有必要了解存储器的间接寻址的概念,其中L 4是将数字2#0000_0000_0000_0100装入累加器1(即16位整数常数);而后者涉及到存储器间接寻址的问题,L  L#4 是将32位的整数常数4装入累加器1(为32位整数常数)。所以上述指令的含义是不同的。
由于UC是无条件调整指令,所以运行完 M001后继续执行M002后的指令,即如果有快慢信号,跳转到M001处执行,如果无快慢信号,则将暂态变量in11的数据装载到累加器1中。如果有快慢信号,将整数常数5与暂态变量in12的数据相乘,并保存到暂态变量_PO2_Speed中(位置2的速度)。如果有向后的信号指令,将整数常数-1与(整数常数5与暂态变量in12的数据)相乘(16位)的结果相乘,并保存到暂态变量_PO2_Speed中(位置2的速度值)


L DW#16#8 //将32位的十六进制常数8装入累加器1中,即2#0000 0000 0000 1000
T MD 2 //将32位的常数传送到MD2中
L DBW [MD 2] 中的MD2称为地址指针(参考存储器间接寻址内容),其里边的数值代表地址,即DBW2(数据块字),即将数据字DBW2装入累加器1中,按照存储器间接寻址,MD2=2#0000 0000 0000 1000,其中位0到2为被寻址中位的编号,即字节位的编号为2#000=0,位3-18位为被寻址字节的字节编号2#0000 0000 0000 1=1,即字节为1
A DBX [MD 2] //DBX为数据位,按照上述分析,DBX[DM2]=DBX1.0
4、LAR1  P##_PO1  其中 #P01 是input  ,外部调用时管脚 输入是IW100,其中为指针寻址(输入过程映像寄存器字,区域标识符为IW),这里为100,将地址100写入AR1
L     LW [AR1,P#0.0]//AR1=100=2#0000 0000 0110 0100,P#0.0为偏移量=2#0000 0000 0000 0 000(后3位为位号),AR1加偏移量为100.0,所以L     LW [AR1,P#0.0]为L LW100.0

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签