位域分配 (BTD)

此信息适用于 CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370、GuardLogix 5570、Compact GuardLogix 5380、CompactLogix 5380、ControlLogix 5580、GuardLogix 5580 和 ControlLogix 5590 控制器。
BTD 指令从 Source 复制指定位,将这些位进行相应移位,再将这些位写入 Destination 中。
可用语言
梯形图
BTD_LD_avail_v31
功能块
此指令不可用于功能块中。
结构化文本
此指令不可用于结构化文本中。
操作数
指令中混用数据类型时,需遵从相关的数据转换规则。请参见“数据转换”数据转换
梯形图
操作数
类型
格式
说明
Source
SINT
INT
DINT
立即数
标签
包含要移动的位的标签
Source bit
DINT
立即数 (0-31)
移动起始位的编号(最低位编号)
必须在 Source 数据类型的有效范围内
Destination
SINT
INT
DINT
标签
要将位移动到的标签
Destination bit
DINT
立即数 (0-31)
数据要移动到的位编号,必须在 Destination 数据类型的有效范围内。
Length
DINT
立即数 (1-32)
要移动的位数
说明
使能后,BTD 指令可将一组位从 Source 复制到 Destination。这组位由 Source bit(Source 的最低位编号)和 Length(要复制的位数)确定。Destination bit 用于确定 Destination 中的最低起始位号。Source 保持不变。
如果位域的长度超出 Destination 的范围,则该指令不会保存多余的位。任何多余位都不会回绕到下一个字。
若为 SINT 或 INT 标签,会通过填零转换为 DINT 值。
影响数学状态标志
严重/轻微故障
没有特定于此指令的故障。有关操作数相关的故障,请参见通用属性部分。
执行
梯形图
条件/状态
执行的操作
预扫描
不适用
梯级输入条件为假。
不适用
梯级输入条件为真。
该指令读取 Source 位,并在移位后复制到 Destination 中。
后扫描
不适用
示例
示例 1
梯形图
BTD_LD_ex1_v31
使能后,BTD 指令将对 value_1 中的位进行移位。
BTD value_1 before BTD
示例 2
BTD_LD_ex2_v31
使能后,BTD 指令将 value_1 中的 10 个位进行移位并保存到 value_2 中。
BTD Value_1_2 before and after BTD instruction
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal