
DECO — 解码
把输入值解码为输出字中的一位:OUT = 2^IN。
在 TIA 里试一下
选一个示例块,通过 TiaLink 导入当前 TIA 项目:预检、默认不覆盖、不自动保存。示例块不会自动运行;导入后请在 OB1 调用并接变量。
一句话
DECO 把输入值解码为输出字中的一位:OUT = 2^IN。
符号与引脚
分类:字逻辑
不需要实例
模板值:计数值类型(value_type), return_type
| 引脚 | 方向 | 说明 |
|---|---|---|
en | 流输入 | 使能输入 |
IN | 输入 | 位号(UInt) |
eno | 流输出 | 使能输出 |
OUT | 输出 | 解码结果(DWord) |
符号见下面的最小示例;引脚名与方向来自 lad-ir 指令目录,说明为本站补充。
最小示例
Enable=1、IN=3 时 OUT=2#1000(第 3 位置 1)。

图中 # 前缀表示块内局部变量;实际工程里也可以是全局标签或 DB 变量。
怎么工作
IN是位号(UInt),OUT是解码结果(本页DWord)。value_type=UInt、return_type=DWord;输入 0..31 对应 DWord 的 32 位。- 输入超出输出位宽时结果不可靠;先做范围检查。
EN/ENO是使能;DECO是 terminal 盒(有 ENO 可继续串联)。
常用场景
常见坑
- 位号越界:
IN超出 0..31(DWord)时结果不可靠;先限幅。 - 输出类型:
return_type要与OUT变量一致;本页用 DWord。 - 和 ENCO 混淆:
DECO是“编号 → 一位”,ENCO是“一位 → 编号”。 - 每一位只亮一个:解码结果是 one-hot,不会同时置多位。
- ENO 未接:后面的指令可能不执行;需要串联时检查 ENO。
