回复:关于在1512SP 的CPU中多次使用loop指令问题

Lyn.lee

  • 帖子

    118
  • 精华

    0
  • 被关注

    5

论坛等级:侠客

注册时间:2011-02-24

普通 普通 如何晋级?

发布于 2015-11-20 11:46:52

4楼

 目前我已经实现一个数组的排序功能,程序是引用论坛里面冒泡法排序,功能也实现了,但是现在遇到的问题当我调用第二个数组同时进行排序时就出现上述的报错了,现在的问题是1组可以执行,但是当遇到两组以上同时执行排序功能就报错,我怀疑是不是在一个扫描周期内使用多次LOOP指令时导致,总的循环时间溢出,我也不想用LOOP指令,请问不用LOOP指令如何实现排序功能,仅仅使用跳转这个工作量太大了,对于10个数据以上的就无法操作了,而且STL语言指令非常的少,您有什么好的编程方法解决这个问题吗?

程序如下

// Start
      A     "DB_SortFunction".Control.Sort_Begin
      JCN   n500

      L     8                    //Total Floor
NEXT01 : T  #t_Counter2

      L     0
      T     #t_Test01

      L     7
NEXT02 : T  #t_Counter3
      L     #t_Test01
      L     74
      +I
      SLW   3
      T     #t_Counter_test01

      L     #t_Test01
      L     75
      +I
      SLW   3
      T     #t_Counter_test02

      L     #t_Test01
      L     106
      +I
      SLW   3
      T     #t_Level_test01

      L     #t_Test01
      L     107
      +I
      SLW   3
      T     #t_Level_test02


      OPN   #i_DB_No
      L DBB [ #t_Counter_test01]
      L DBB [ #t_Counter_test02]
      <I
      JCN   n501

//Exchange sort number

      OPN   #i_DB_No
      L DBB [ #t_Counter_test01]
      T     #t_temp1

      L DBB [ #t_Counter_test02]
      T DBB [ #t_Counter_test01]

      L     #t_temp1
      T DBB [ #t_Counter_test02]

//Exchange level number

      OPN   #i_DB_No
      L DBB [ #t_Level_test01]
      T     #t_temp2

      L DBB [ #t_Level_test02]
      T DBB [ #t_Level_test01]

      L     #t_temp2
      T DBB [ #t_Level_test02]

n501: NOP 0
      L     #t_Test01
      L     1
      +I
      T     #t_Test01

      L     #t_Counter3
      LOOP  NEXT02

      L     #t_Counter2
      LOOP  NEXT01

      SET
      R     "DB_SortFunction".Control.Sort_Begin
      S     "DB_SortFunction".Control.Sort_Begin_02
n500: NOP 0

change
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有10590条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。