找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
FC1 VOID
title=这个功能可以实现从任意DB号的任意首地址开始的num个DINT数复制到从任意DB号开始的任意首地址开始的num个DINT处。
VAR_INPUT
DBNum1:INT
DBNum2:INT
#Num :INT
change_addr1 :INT
change_addr2:INT
VAR_TEMP
Source:ANY
Target:ANY
END_VAR
L P##Source
LAR1
L W#16#1007
T W[AR1,P#0.0]
L ##Num
T W[AR1,P#2.0]
L #DBNum1
T W[AR1,P#4.0]
L #change_addr1
SLD 3
OD DW#16#84000000
T D[AR1,P#6.0]
L P##Target
LAR1
L W#16#1007
T W[AR1,P#0.0]
L ##Num
T W[AR1,P#2.0]
L #DBNum2
T W[AR1,P#4.0]
L #change_addr2
SLD 3
OD DW#16#84000000
T D[AR1,P#6.0]
CALL "BLKMOV"
SRCBLK :=#Source
RET_VAL:=#ErrState
DSTBLK :=#Target
如果
DBNum1:INT :=1
DBNum2:INT :=2
#Num :INT :=4
change_addr1 :INT:=2
change_addr2:INT:=4
就可以实现把 DB1.DBX2.0 4 DINT数复制到DB2.DBX4.0 4 DINT中
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!