1 / 15
文档名称:

西门子STL语言案例.doc

格式:doc   大小:22KB   页数:15页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

西门子STL语言案例.doc

上传人:beny00001 2022/2/18 文件大小:22 KB

下载得到文件列表

西门子STL语言案例.doc

文档介绍

文档介绍:word
word
1 / 15
word
STL案例1:数值到位的对应
LAR1 P##SetValue //#SetValue为输入,WORD型
TAR2
+AR1
A 【AR1,P 100
NEXT: T MW100
L MW2
L DBW[MD4]
==I
JC m1
L MD4
+D
T MD4
L MW100
word
word
6 / 15
word
LOOP NEXT
JNC m2
L MD4
/D
+ 1
T MD8
word
word
7 / 15
word
STL案例5:寄存器间接寻址-32位部区域指针使用示例
OPN DB1
L DBW[AR1,P#]
LAR1 MD20
L DBW[AR1,P#]
+I
word
word
8 / 15
word
T DBW[AR2,P#]
STL案例6:寄存器间接寻址-32位交叉区域指针使用示例
word
word
9 / 15
word
LAR2
L W[AR2,P#] //注意格式
T MW60
word
word
10 / 15
word
STL案例7:Point数据类型指针使用示例
Point指针占用48位地址空间,主要用于向被调用的函数FC/FB传递复合数据类型(如ARRAY、STRUCT、UDT等)的实参,在被调用函数的FC/FB部可以间接访问实参的存储器。
输入首地址,求多个浮点数的平均值。
CALL FC3
In_Data:=P# //Point型
NO :=4 //Int型
OUT_VAL :=MD20
部程序如下
L 0
T #ADD_TEMP //临时变量清零
LAR1 P##In_Data //或L P##In_Data ; LAR1
L 0
L W[AR1,P#] //DB块号或0
==I //判断是否是DB块数据
word
word
11 / 15
word
JC M1
T #BLOCK_NO
OPN DB[#BLOCK_NO]
M1: L D[AR1,P#] //第一个数据的起始地址
LAR1
L 0
L #NO
==I
JC END
NO: T #NO_TEMP
L D[AR1,P#]
L #ADD_TEMP
+D
T #ADD_TEMP
L #NO_TEMP
LOOP NO
L #ADD_TEMP
word
word
12 / 15
word
L #NO
DTR
/R
T #OUT_VAL
END: NOP 0
多背景调用时注意地址偏移
STL案例8:Any数据类型指针使用示例
与Point指针相比,Any类型指针可以表示一段长度的数据,例如:P# BOOL 16,也可以选择直接赋值,。
输入Any指针地址,求多个浮点数的平均值。
CALL FC13
In_Data:=P# REAL 8
word
word
13 / 15
word
OUT_VAL:=MD20
部程序如下
L 0
T #ADD_TEMP