欢迎来到西门子工业支持中心网站!
欢迎来到西门子工业支持中心网站!
悬赏:10分 | 解决时间:2012-12-11 23:23
产品版区:
SIMATIC S7-300(F)/S7-400(F/H/FH)
雏狼
我想将一个DB5里面的数据大概是300个dword移动到DB6里面去。里面的数据类型地址的长度都一样,就是数据不能移动。这个是为什么啊?大侠教教我要怎么用 注意什么?
问题补充:
那个手册我看了,可是我用一个内存点触发就是不能复制。数据一直不能复制过去
小程序:
最佳答案
回答者:
阿鸣
回答时间:2012-06-08 19:37
提问者对于答案的评价:
谢谢
ANY 指针定义的存储区如果不在过程映像区,则不能使用 SFC20 进行复制,首先,必须将位于过程映像之外的输入数据按照连续顺序复制到全局数据块中,然后再使用 SFC20 将数据从全局数据块 (数据源) 复制到目标数据区 (输出、标记、数据块),不能使用ANY 指针直接访问外设地址区如“P#PE300.0 BYTE 16”。
你好!
使用说明!
SRCBLK INPUT ANY I、Q、M、D、L 指定要复制的存储区(源区域)。不允许指定STRING类型的数组。
RET_VAL OUTPUT INT I、Q、M、D、L 在功能执行时如有故障发生,此参数值中包含故障代码。
DSTBLK OUTPUT ANY I、Q、M、D、L 指定要将数据复制到的存储区(目标区域)。不允许指定STRING类型的数组。
注意源区域与目标区域一定不可以交叉。如果指定的目标区域大于源区域,此功能只将源区域中包含的数据复制到目标区域。如果指定的目标区域(DSTBLK参数)小于源区域(SRCBLK参数),则功能仅复制所能写入到目标区域的尽可能多的数据。如果实际存在的目标区域或源区域小于源区域或目标区域的存储区的参数集大小(SRCBLK、DSTBLK参数),则数据将不传送。如果ANY指针(源或目标)是布尔类型,则指定的长度必须是8的倍数;否则SFC将不能执行。源或目标参数(或二者都)的数据类型也可以为STRING。如果源为字符串,将只复制该字符串的当前字符。如果源和目标为字符串,则复制字符数目的当前长度将被写入。 如果要复制包括最大长度和实际长度的字符串,可如下操作:创建自己在SRCBLK和DSTBLK参数中使用的ANY指针请使用BYTE数据类型完成此操作。
特性:如果用SFC 20 BLKMOV将未链接的数据块复制并装载到RAM (例如,通过编程设备),SFC将被延时多达几毫秒。这会导致一个长的OB循环时间,可能会使循环监控报警。所以应避免在CPU通过SFC 20 复制块时装载这类块。
看指令相应帮助文件就清楚了!
问题补充:
如何使用间接寻址访问I/O地址区,当使用SFC20时应注意什么
http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=%e5%a6%82%e4%bd%95%e4%bd%bf%e7%94%a8%e9%97%b4%e6%8e%a5%e5%af%bb%e5%9d%80%e8%ae%bf%e9%97%aeI%2fO%e5%9c%b0%e5%9d%80%e5%8c%ba%ef%bc%8c%e5%bd%93%e4%bd%bf%e7%94%a8SFC20%e6%97%b6%e5%ba%94%e6%b3%a8%e6%84%8f%e4%bb%80%e4%b9%88
当使用SFC20 “BLKMOV”,SFC81“UBLKMOV”或SFC21“FILL”块时应注意些什么?
http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=%e5%bd%93%e4%bd%bf%e7%94%a8SFC20+%e2%80%9cBLKMOV%e2%80%9d%ef%bc%8cSFC81%e2%80%9cUBLKMOV%e2%80%9d%e6%88%96SFC21%e2%80%9cF
现赠您1张1847体验会员卡,可免费领取,畅学1847会员内容,是否领取?
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!