电工学习网

 找回密码
 立即注册

如何处理奇偶数的程序

2016-11-11 11:02| 编辑:电工学习网| 查看: 9243| 评论: 0|原作者: 艾星落尘|来自: 西门子工业技术论坛

    程序:
     L     P##IN0
      LAR1 
      L     W [AR1,P#2.0]
      T     #LENGTH
      L     W [AR1,P#4.0]
      T     #DBS
      L     D [AR1,P#6.0]
      T     #DZS
//将数据源的ANY指针数据复制下来
      L     P##IN1
      LAR1 
      L     B#16#10                     //对应ANY_JI
      T     LB    28
      L     B [AR1,P#1.0]
      T     LB    29                    //对应ANY_JI
      L     W [AR1,P#2.0]
      T     LW    30                    //对应ANY_JI
      L     W [AR1,P#4.0]
      T     #DBJI
      T     LW    32                    //对应TANY_JI
      L     D [AR1,P#6.0]
      T     #DZJI
      T     LD    34                    //对应ANY_JI


//将存放奇数的DB块的ANY数据进行处理,并编写ANY_JI
      L     P##IN2
      LAR1 
      L     B#16#10
      T     LB    38                    //对应ANY_OU
      L     B [AR1,P#1.0]
      T     LB    39                    //对应ANY_OU
      L     W [AR1,P#2.0]
      T     LW    40                    //对应ANY_OU
      L     W [AR1,P#4.0]
      T     #DBOU
      T     LW    42                    //对应ANY_OU
      L     D [AR1,P#6.0]
      T     #DZOU
      T     LD    44                    //对应ANY_OU
////将存放偶数的DB块的ANY数据进行处理,并编写ANY_OU
      L     0
      T     #ZERO
      CALL  "FILL"
       BVAL   :=#ZERO
       RET_VAL:=#TEMP12
       BLK    :=#ANY_JI
      CALL  "FILL"
       BVAL   :=#ZERO
       RET_VAL:=#TEMP13
       BLK    :=#ANY_OU
//初始化,清零,调用SFC21
      OPN   DB [#DBS]
      OPN   DI [#DBJI]
      LAR1  #DZS
      LAR2  #DZJI
      L     #LENGTH
M002: T     #LOOP_JI
      L     DBW [AR1,P#0.0]
      SRW   1
      A     >0
      JCN   M001
      L     DBW [AR1,P#0.0]
      T     DIW [AR2,P#0.0]
      +AR2  P#2.0
M001: +AR1  P#2.0
      L     #LOOP_JI
      LOOP  M002
//奇数
      OPN   DB [#DBS]
      OPN   DI [#DBOU]
      LAR1  #DZS
      LAR2  #DZOU
      L     #LENGTH
M004: T     #LOOP_OU
      L     DBW [AR1,P#0.0]
      SRW   1
      A     >0
      JC    M003
      L     DBW [AR1,P#0.0]
      T     DIW [AR2,P#0.0]
      +AR2  P#2.0
M003: +AR1  P#2.0
      L     #LOOP_OU
      LOOP  M004
//偶数
调用:因为这里采用的是INT数据所以在调用的时候要写:P#DB7.DBX0.0 INT 10


测试效果:

看过《如何处理奇偶数的程序》的人还看了以下文章:

发表评论

最新评论

  • 电表怎么看度数
  • 插座烧毁原因_插座烧后还可以继续使用吗?
  • 注册电气工程师考试挂靠,到底富了谁?
  • 电工证可以“挂靠“吗
  • 电工证怎么考?如何自考电工证
  • 电工证种类和图片大全
热门资讯

电工学习网 ( )

GMT+8, 2023-7-25 03:45

Powered by © 2011-2022 www.shop-samurai.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

返回顶部