功能描述
将一个存储区(源范围)的数据移动到另一个存储区(目标范围)中。使用输入 COUNT 可以指定将移动到目标范围中的元素个数。可通过输入 IN 中元素的宽度来定义元素待移动的宽度。
执行条件
- 使能输入 EN 的信号状态不能为“0”。
- 移动的数据量不得超出输入 IN 或输出 OUT 所能容纳的数据量。
接口参数
参数 | 声明 | 数据类型(1200) | 数据类型(1500) | 存储区 | 说明 |
---|---|---|---|---|---|
EN | Input | BOOL | BOOL | I、Q、M、D、L 或常量 | 使能输入 |
ENO | Output | BOOL | BOOL | I、Q、M、D、L | 使能输出 |
IN | Input | 二进制数、整数、浮点数、定时器、DATE、CHAR、WCHAR、TOD | 二进制数、整数、浮点数、定时器、DATE、CHAR、WCHAR、TOD、LTOD | D、L | 待复制源区域中的首个元素 |
COUNT | Input | USINT、UINT、UDINT | USINT、UINT、UDINT、ULINT | I、Q、M、D、L、P 或常量 | 要从源范围移动到目标范围的元素个数。 |
OUT | Output | 二进制数、整数、浮点数、定时器、DATE、CHAR、WCHAR、TOD | 二进制数、整数、浮点数、定时器、DATE、CHAR、WCHAR、TOD、LTOD | D、L | 源范围内容要复制到的目标范围中的首个元素 |
IN/Out接口处Array结构的元素只能使用指定的数据类型。
比如IN接口处。只能使用Array of (二进制数、整数、浮点数、定时器、DATE、CHAR、WCHAR、TOD).OUT处也一样。
程序举例
- 创建DB块,用于数据移动和数据接受。参考如下:
2.创建FB块,并添加功能指令。
注意事项
-
当复制 ARRAY of BOOL 时,溢出的使能输出 ENO 将设置为“1”,直至超出 ARRAY 结构的字节限制。
-
如果 COUNT 输入的值超出了 ARRAY 结构的字节限制,则使能输出 ENO 将复位为“0”。
其实上面两句话,也不太清楚,在此作为记录。
仿真演示
源程序
请使用博图V15查看