枚举 EcatSlaveDiag.EcMailboxHealth

java.lang.Object
java.lang.Enum<EcatSlaveDiag.EcMailboxHealth>
com.darra.ethercat.data.EcatSlaveDiag.EcMailboxHealth
所有已实现的接口:
Serializable, Comparable<EcatSlaveDiag.EcMailboxHealth>, java.lang.constant.Constable
封闭类:
EcatSlaveDiag

public static enum EcatSlaveDiag.EcMailboxHealth extends Enum<EcatSlaveDiag.EcMailboxHealth>
从站邮箱健康度 (Wave23a, 对齐 C# EcMailboxHealth / C++ MailboxHealth / C ec_mailbox_health_t).

native byte GetSlaveMailboxHealth(mi, si): 0=未知, 1=健康, 2=降级. 内核 StateGuard 每秒更新的诊断镜像薄读 (零帧, 属性本身实时). Java byte 有符号, 上层用 & 0xFF 还原后再传入 fromByte(int).

R1 可观测性: 让"在 OP 但邮箱半失效"(残留 A 特征) 对上层可见 — DEGRADED 表示从站仍在 OP, 但邮箱通道半失效 (CoE/SDO 可能阻塞). 仅如实反映现实, 不参与 WKC 篡改.

  • 枚举常量详细资料

  • 方法详细资料

    • values

      public static EcatSlaveDiag.EcMailboxHealth[] values()
      返回包含该枚举类型的常量的数组, 顺序与声明这些常量的顺序相同
      返回:
      包含该枚举类型的常量的数组,顺序与声明这些常量的顺序相同
    • valueOf

      public static EcatSlaveDiag.EcMailboxHealth valueOf(String name)
      返回带有指定名称的该类型的枚举常量。 字符串必须与用于声明该类型的枚举常量的 标识符完全匹配。(不允许有多余 的空格字符。)
      参数:
      name - 要返回的枚举常量的名称。
      返回:
      返回带有指定名称的枚举常量
      抛出:
      IllegalArgumentException - 如果该枚举类型没有带有指定名称的常量
      NullPointerException - 如果参数为空值
    • getValue

      public int getValue()
      获取原始数值 (0=UNKNOWN / 1=HEALTHY / 2=DEGRADED)
    • fromByte

      public static EcatSlaveDiag.EcMailboxHealth fromByte(int rawUnsigned)
      从 native 原始值构造 (调用方需先 & 0xFF 还原 unsigned byte). 仅 1→HEALTHY, 2→DEGRADED, 其余 (含 0 / 0xFF) →UNKNOWN.
      参数:
      rawUnsigned - native byte 经 & 0xFF 还原后的 0..255 值
    • isKnown

      public boolean isKnown()
      是否数据可信 (非 UNKNOWN). UI 据此决定显示真值还是 "未知"