寻址TAR1 #Ar1s
刘玉蓉
发布于2014-11-12 17:39
572
0
标签:
TAR1 #Ar1s
TAR2 #Ar2s
// ----------Standard signal
L P##StandardSignalPointer
LAR2
LAR1 P##StaSigPoint
L D [AR2,P#0.0]
T LD [AR1,P#0.0]
L D [AR2,P#4.0]
T LD [AR1,P#4.0]
L W [AR2,P#8.0]
T LW [AR1,P#8.0]
// Load Standard signal
// Copio i dati Standard Signal
CALL "BLKMOV"
SRCBLK :=#StaSigPoint
RET_VAL:=#Error
DSTBLK :=#StandardSignal
// ----------Device signal
L P##DevicePointer
LAR2
LAR1 P##DevSigPoint
L D [AR2,P#0.0]
T LD [AR1,P#0.0]
L D [AR2,P#4.0]
T LD [AR1,P#4.0]
L W [AR2,P#8.0]
T LW [AR1,P#8.0]
// Copio i dati Device Signal
CALL "BLKMOV"
SRCBLK :=#DevSigPoint
RET_VAL:=#Error
DSTBLK :=#Signal
LAR1 #Ar1s
LAR2 #Ar2s
刚换了一个新公司,这段程序实在看不明白,有能帮忙解释下吗?好能一条一条的说说,
问题补充:
请问,我的理解是否正确
将P##StandardSignalPointer所指的地址拷贝到P##StaSigPoint,再从P##StaSigPoint拷贝到#StandardSignal。同样,P##DevicePointer-----P##DevSigPoint----#Signal
我这样理解对吗?这样做的目的只是为了使用StandardSignal来替代StandardSignalPointer,请问,我这样理解,对吗?
佳答案
1、程序解释:
TAR1 #Ar1s//将指针AR1保存到 #Ar1s中
TAR2 #Ar2s//将指针AR2保存到 #Ar2s中
// ----------Standard signal注释,标准信号。
L P##StandardSignalPointer
LAR2 //将#StandardSignalPointer存入指针AR2中
LAR1 P##StaSigPoint //将#S#StaSigPoin存入指针AR1中
L D [AR2,P#0.0]
T LD [AR1,P#0.0]//取以AR2为地址的数据存入以取以AR1为地址的LD中。
L D [AR2,P#4.0]
T LD [AR1,P#4.0]//取以AR2加偏移量#4.0为地址的数据存入以取以AR1加偏移量#4.0为地址的LD中。
L W [AR2,P#8.0]
T LW [AR1,P#8.0]//取以AR2加偏移量#8.0为地址的数据存入以取以AR1加偏移量#8.0为地址的LD中。
// Load Standard signal
// Copio i dati Standard Signal
CALL "BLKMOV"//调用系统功能块SFC20复制存储区数据,详细说明见下述资料。
SRCBLK :=#StaSigPoint
RET_VAL:=#Error
DSTBLK :=#StandardSignal
// ----------Device signal
L P##DevicePointer
LAR2 //将##DevicePointer存入指针AR2中
LAR1 P##DevSigPoint//将##DevSigPoint存入指针AR1中
L D [AR2,P#0.0]
T LD [AR1,P#0.0]//取以AR2为地址的数据存入以取以AR1为地址的LD中。
L D [AR2,P#4.0]
T LD [AR1,P#4.0]//取以AR2加偏移量#4.0为地址的数据存入以取以AR1加偏移量#4.0为地址的LD中。
L W [AR2,P#8.0]
T LW [AR1,P#8.0]//取以AR2加偏移量#8.0为地址的数据存入以取以AR1加偏移量#8.0为地址的LD中。
// Copio i dati Device Signal
CALL "BLKMOV"//调用系统功能块SFC20复制存储区数据,详细说明见下述资料。
SRCBLK :=#DevSigPoint
RET_VAL:=#Error
DSTBLK :=#Signal
LAR1 #Ar1s//将指针AR1恢复为 #Ar1s。
LAR2 #Ar2s//将指针AR2恢复为 #Ar2s。
2、上述程序中调用系统功能块SFC20的详细资料见:
<S7-300400的系统软件和标准功能>下载:
https://www.ad.siemens.com.cn/download/SearchResult.aspx?searchText=1023
3、建议看看下述资料,:
、见《关于S7-300和S7-400指针寻址的说明与例程 》下载:
https://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=F0215
4、问题补充:是数据区传送。字数有限制,请另起问题。