机构:注册 登录| 学员:注册 登录 | 讲师:注册 登录
| 网站导航 | 加入收藏
010-63866300
18999183549
开课地点:
当前位置:主页 > 教学答疑 > PLC教学答疑 >

S7-300/400PLC怎样实现64位循环?

 西门子S7-300/400PLC只有32位的循环移位指令,和32位加CC1的循环移位指令。下面是我编的程序,MD10和MD14组成64位数据,MD10在高32位。
    在I0.0的上升沿,分别将MD10和MD14循环左移1位,然后交换它们的最低位M13.0和M17.0的值,就能实现64位数据的循环左移1位。
      A     I      0.0
      FN    M      1.0
      JCN   _001                      //不是I0.0的上升沿则跳转
      L     MD    10
      RLD   1                            //双字左移一位
      T     MD    10
      L     MD    14
      RLD   1                            //双字左移一位
      T     MD    14
      A     M     13.0
      =     M      1.1                   //暂存M13.0
      A     M     17.0
      S     M     13.0                 //以下程序交换M13.0和M17.0的值
      AN    M     17.0
      R     M     13.0
      A     M      1.1
      S     M     17.0
      AN    M      1.1
      R     M     17.0
_001: NOP   0
    此程序已用仿真验证,下图中的修改数值是移位之前MD10和MD14的值,状态值是循环左移4位后的值。

 


联系方式: 
   联系人:王老师                     邮箱:gkpx365@hotmail.com
  联系电话:18999183549、0991-8822426、010-63866300
  中国工业自动化培训网址:www.gkpx365.com

 

相关问答