ANY指针赋值问题!

已锁定

威师爷

  • 帖子

    5108
  • 精华

    47
  • 被关注

    255

论坛等级:至圣

注册时间:2013-09-18

普通 普通 如何晋级?

ANY指针赋值问题!

3050

7

2017-02-19 17:19:14


大家好!

          如下程序的FC1分别调用了两次,FC1的功能是把staty_any输入的数据库的值复制到DBNO指定的数据库里面,例如程序段1就是把DB1的10个BYTE复制到DB2里面,这个程序执行的结果是正确的

到了第二段程序同样也是调用了FC1 目的同样是把DB1的10个BYTE复制到DB3里面这里要说明一下,DB1里面一共只有10个BYTE再没有其他数据了所以使用了符号寻址的方式直接调用DB1了

但是第二段程序的执行是不正确的,大家知道为什么吗?


 

 

这个图片的IN是FC1的输入

 

这个图片的TEMP是FC1的L区或者说TEMP临时数据区

 



下面是FC1里面编写的程序

 L     P##srart_any
      LAR1 
      L     W [AR1,P#0.0]
      T     #ttq
      L     D [AR1,P#2.0]
      T     #tttq
      L     D [AR1,P#6.0]

      LAR1  P##any_sfc
      T     D [AR1,P#6.0]
      L     #tttq
      T     D [AR1,P#2.0]
      L     #ttq
      T     W [AR1,P#0.0]

以上程序的目的是把start_any的输入指针赋值给  TEMP 区的#any_sfc指针


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

      LAR1  P##arte_sfc
      L     B#16#10
      T     B [AR1,P#0.0]
      L     B#16#2
      T     B [AR1,P#1.0]
      L     10
      T     W [AR1,P#2.0]
      L     #DBNO
      T     W [AR1,P#4.0]
      L     DW#16#84000000
      T     D [AR1,P#6.0]

红色///////到这里的程序是定义一个ANY指针#arte_sfc  要把数据拷贝到这个ANY指针指向的DB数据库里面

调用SFC20


      CALL  "BLKMOV"
       SRCBLK :=#any_sfc  //要拷贝的数据ANY指针
       RET_VAL:=#ret_val1
       DSTBLK :=#arte_sfc//数据目的地的ANY指针


      SET  
      SAVE 

ANY指针赋值问题! 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54711条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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