用于S7−300和S7−400的 语句表(STL),编程
前言
内容
1 位逻辑指令
1.1 位逻辑指令概述
1.2 A 与运算
1.3 AN 与非运算
1.4 O 或运算
1.5 ON 或非运算
1.6 X 异或运算
1.7 XN 同或运算
1.8 O 先与运算后或运算
1.9 A( 与运算嵌套开始
1.10 AN( 与非运算嵌套开始
1.11 O( 或运算嵌套开始
1.12 ON( 或非运算嵌套开始
1.13 X( 异或运算嵌套开始
1.14 XN( 同或运算嵌套开始
1.15 ) 嵌套结束
1.16 = 赋值
1.17 R 复位
1.18 S 置位
1.19 NOT 对RLO取反
1.20 SET 置位RLO (=1)
1.21 CLR 清零RLO (=0)
1.22 SAVE 将RLO保存到BR寄存器
1.23 FN 下降沿
1.24 FP 上升沿
2 比较指令
2.1 比较指令概述
2.2 ? I 比较整数(16位)
2.3 ? D 比较长整数(32位)
2.4 ? R 比较浮点数(32位)
3 转换指令
3.1 转换指令概述
3.2 BTI 将BCD码转换为整型(16位)
3.3 ITB 将整型(16位)转换为BCD码
3.4 BTD 将BCD码转换为整型(32位)
3.5 ITD 将整型(16位)转换为长整型(32位)
3.6 DTB 将长整型(32位)转换为BCD码
3.7 DTR 将长整型(32位)转换为浮点型(32位IEEE-FP)
3.8 INVI 对整数(16位)求反码
3.9 INVD 对长整数(32位)求反码
3.10 NEGI 对整数(16位)求补码
3.11 NEGD 对长整数(32位)求补码
3.12 NEGR 对浮点数(32位,IEEE-FP)取反
3.13 CAW 改变ACCU 1-L (16位)中的字节顺序
3.14 CAD 改变ACCU 1 (32位)中的字节顺序
3.15 RND 取整
3.16 TRUNC 截断
3.17 RND+ 取整为高位长整数
3.18 RND- 取整为低位长整数
4 计数器指令
4.1 计数器指令概述
4.2 FR 启用计数器(释放)
4.3 L 将当前计数器值载入ACCU 1
4.4 LC 将当前计数器值作为BCD码载入ACCU 1
4.5 R 将计数器复位
4.6 S 设置计数器预设值
4.7 CU 升值计数器
4.8 CD 降值计数器
5 数据块指令
5.1 数据块指令概述
5.2 OPN 打开数据块
5.3 CDB 交换共享数据块和实例DB
5.4 L DBLG 在ACCU 1中装载共享数据块的长度
5.5 L DBNO 在ACCU 1中装载共享数据块的编号
5.6 L DILG 在ACCU 1中装载实例DB的长度
5.7 L DINO 在ACCU 1中装载实例DB的编号
6 逻辑控制指令
6.1 逻辑控制指令概述
6.2 JU 无条件跳转
6.3 JL 跳转到标签
6.4 JC 当RLO = 1时跳转
6.5 JCN 当RLO = 0时跳转
6.6 JCB 当带BR位的RLO = 1时跳转
6.7 JNB 当带BR位的RLO = 0时跳转
6.8 JBI 当BR = 1时跳转
6.9 JNBI 当BR = 0时跳转
6.10 JO 当OV = 1时跳转
6.11 JOS 当OS = 1时跳转
6.12 JZ 当为零时跳转
6.13 JN 当不为零时跳转
6.14 JP 当为正时跳转
6.15 JM 当为负时跳转
6.16 JPZ 当为正或零时跳转
6.17 JMZ 当为负或零时跳转
6.18 JUO 无序时跳转
6.19 LOOP 循环
7 整型数学运算指令
7.1 整数算术指令概述
7.2 使用整数算术指令时得出状态字的位数值
7.3 +I ACCU 1 + ACCU 2,整型(16位)
7.4 -I ACCU 2 - ACCU 1,整型(16位)
7.5 *I ACCU 1 * ACCU 2,整型(16位)
7.6 /I ACCU 2 / ACCU 1,整型(16位)
7.7 + + 整型常数(16位、32位)
7.8 +D ACCU 1 + ACCU 2,长整型(32位)
7.9 -D ACCU 2 - ACCU 1,长整型(32位)
7.10 *D ACCU 1 * ACCU 2,长整型(32位)
7.11 /D ACCU 2 / ACCU 1,长整型(32位)
7.12 MOD 除法余数,长整型(32位)
8 浮点型数学运算指令
8.1 浮点运算指令概述
8.2 使用浮点运算指令时得出状态字的位数值
8.3 浮点运算指令:基本
8.3.1 +R 将ACCU 1和ACCU 2作为浮点数(32位IEEE-FP)相加
8.3.2 -R 将ACCU 2与ACCU 1作为浮点数(32位IEEE-FP)相减
8.3.3 *R 将ACCU 1和ACCU 2作为浮点数(32位IEEE-FP)相乘
8.3.4 /R 将ACCU 2与ACCU 1作为浮点数(32位IEEE-FP)相除
8.3.5 ABS 浮点数的(32位IEEE-FP)绝对值
8.4 浮点运算指令:扩展
8.4.1 SQR 计算浮点数(32位)的平方
8.4.2 SQRT 计算浮点数(32位)的平方根
8.4.3 EXP 计算浮点数(32位)的指数值
8.4.4 LN 计算浮点数(32位)的自然对数
8.4.5 SIN 计算浮点数(32位)角度的正弦值
8.4.6 COS 计算浮点数(32位)角度的余弦值
8.4.7 TAN 计算浮点数(32位)角度的正切值
8.4.8 ASIN 计算浮点数(32位)的反正弦值
8.4.9 ACOS 计算浮点数(32位)的反余弦值
8.4.10 ATAN 计算浮点数(32位)的反正切值
9 装载和传送指令
9.1 装载和传送指令概述
9.2 L 装载
9.3 L STW 将状态字装载到ACCU 1中
9.4 LAR1 从ACCU 1装载地址寄存器1
9.5 LAR1 用长整型(32位指针)装载地址寄存器1
9.6 LAR1 AR2 从地址寄存器2装载地址寄存器1
9.7 LAR2 从ACCU 1装载地址寄存器2
9.8 LAR2 用长整型(32位指针)装载地址寄存器2
9.9 T 传送
9.10 T STW 将ACCU 1传送至状态字
9.11 CAR 交换地址寄存器1和地址寄存器2
9.12 TAR1 将地址寄存器1传送至ACCU 1
9.13 TAR1 将地址寄存器1传送至目标地址(32位指针)
9.14 TAR1 AR2 将地址寄存器1传送至地址寄存器2
9.15 TAR2 将地址寄存器2传送至ACCU 1
9.16 TAR2 将地址寄存器2传送至目标地址(32位指针)
10 程序控制指令
10.1 程序控制指令概述
10.2 BE 块结束
10.3 BEC 块有条件结束
10.4 BEU 块无条件结束
10.5 CALL 块调用
10.6 调用FB
10.7 调用FC
10.8 调用SFB
10.9 调用SFC
10.10 调用多重实例
10.11 从库中调用块
10.12 CC 条件调用
10.13 UC 无条件调用
10.14 MCR (主控继电器)
10.15 使用MCR功能的重要注意事项
10.16 MCR( 在MCR堆栈中保存RLO,开始MCR
10.17 )MCR 结束MCR
10.18 MCRA 激活MCR区域
10.19 MCRD 取消激活MCR区域
11 移位和循环指令
11.1 移位指令
11.1.1 移位指令概述
11.1.2 SSI 带符号整型移位(16位)
11.1.3 SSD 带符号长整型移位(32位)
11.1.4 SLW 左移字(16位)
11.1.5 SRW 右移字(16位)
11.1.6 SLD 左移双字(32位)
11.1.7 SRD 右移双字(32位)
11.2 循环移位指令
11.2.1 循环移位指令概述
11.2.2 RLD 循环左移双字(32位)
11.2.3 RRD 循环右移双字(32位)
11.2.4 RLDA 通过CC 1循环左移ACCU 1 (32位)
11.2.5 RRDA 通过CC 1循环右移ACCU 1(32位)
12 定时器指令
12.1 定时器指令概述
12.2 定时器在存储器中的位置与定时器组件
12.3 FR 启用定时器(自由)
12.4 L 将当前定时器值作为整数载入ACCU 1
12.5 LC 将当前定时器值作为BCD载入ACCU 1
12.6 R 复位定时器
12.7 SP 脉冲定时器
12.8 SE 扩展脉冲定时器
12.9 SD 接通延迟定时器
12.10 SS 掉电保护接通延时定时器
12.11 SF 断开延时定时器
13 字逻辑指令
13.1 字逻辑指令概述
13.2 AW 单字与运算(16位)
13.3 OW 单字或运算(16位)
13.4 XOW 单字异或运算(16位)
13.5 AD 双字与运算(32位)
13.6 OD 双字或运算(32位)
13.7 XOD 双字异或运算(32位)
14 累加器指令
14.1 累加器和地址寄存器指令概述
14.2 TAK 将ACCU 1与ACCU 2互换
14.3 POP 具有两个ACCU的CPU
14.4 POP 具有四个ACCU的CPU
14.5 PUSH 具有两个ACCU的CPU
14.6 PUSH 具有四个ACCU的CPU
14.7 ENT 进入ACCU堆栈
14.8 LEAVE 离开ACCU堆栈
14.9 INC 增加ACCU 1-L-L
14.10 DEC 减少ACCU 1-L-L
14.11 +AR1 将ACCU 1加到地址寄存器1
14.12 +AR2 将ACCU 1加到地址寄存器2
14.13 BLD 程序显示指令(空)
14.14 NOP 0 空指令
14.15 NOP 1 空指令
A 所有STL指令概述
A.1 按德语助记符(SIMATIC)排序的STL指令
A.2 按英语助记符(国际)排序的STL指令
B 编程实例
B.1 编程实例概述
B.2 实例:位逻辑指令
B.3 实例:定时器指令
B.4 实例:计数器和比较指令
B.5 实例:整型数学运算指令
B.6 实例:字逻辑指令
C 参数传送
索引
字母
A
B
C
D
F
G
H
J
K
L
M
Q
R
S
T
W
X
Y
Z