
Deserialize — 反序列化
把字节数组反序列化回变量。
在 TIA 里试一下
选一个示例块,通过 TiaLink 导入当前 TIA 项目:预检、默认不覆盖、不自动保存。示例块不会自动运行;导入后请在 OB1 调用并接变量。
一句话
Deserialize 把字节数组反序列化回变量。
符号与引脚
分类:移动
不需要实例
模板值:src_type, dest_type
| 引脚 | 方向 | 说明 |
|---|---|---|
en | 流输入 | 使能输入 |
SRC_ARRAY | 输入 | 源字节数组起始元素 |
DEST_VARIABLE | 输入 | 目标变量 |
POS | 输入 | 读取位置(InOut DInt) |
eno | 流输出 | 使能输出 |
RET_VAL | 输出 | 返回码(0=成功) |
符号见下面的最小示例;引脚名与方向来自 lad-ir 指令目录,说明为本站补充。
最小示例
Enable=1 时从 Buffer 的 Pos 位置读出 Value;Ret=0 表示成功。

图中 # 前缀表示块内局部变量;实际工程里也可以是全局标签或 DB 变量。
怎么工作
SRC_ARRAY是源字节数组起始元素,DEST_VARIABLE是目标变量。POS是读取位置(InOut DInt),指令会把它更新到下一个位置;从 0 开始。src_type/dest_type用Variant;RET_VAL返回 0 表示成功,非 0 为错误码。- 目标变量的类型/字节数要和写入端一致。
常用场景
常见坑
- POS 当 Input:
POS会被写回,必须用 InOut/DInt。 - 类型/字节数不一致:两端结构要匹配,否则解析错位。
- 缓冲越界:先确认 POS + 目标字节数 ≤ 数组长度。
- 返回码:检查
RET_VAL,不要假设一定成功。
