NFC 类扩展状态机

NFC CX 状态机的内部设计如下所示。 NFC CX 指定的各种状态以及导致状态的转换的内部和外部事件被捕获在关系图中。 请注意,某些状态之间的某些转换不会显示在关系图中,以便于阅读。 下文将进一步介绍状态以及这些状态与 NCI RF 状态机的映射关系。

NFC CX 状态机。

国家 DESCRIPTION
StateIdle 当NFC设备启动但未将NCI命令发送到控制器,或者在NCI操作期间发生不可恢复的错误时,系统会进入StateIdle状态。
StateInit 当硬件操作“开始”发送到 NFC CX 时,进入 StateInit 状态。 NCI 重置、NCI 初始化和 NFC 芯片集配置在此状态下发生。 完成此状态后,所有后续状态(下表中)都会发生。
StateRfIdle NFC 控制器已成功初始化,但 RF 轮询循环处于禁用状态(即已禁用或未配置轮询和侦听阶段)。 当不需要进行 NFC 操作时,设备将进入 StateRfIdle。 在此状态下将启用 UMDF 空闲检测计时器,并在计时器时限届满后,芯片组将被去初始化。
StateRfDiscovery NFC 控制器将其发现循环配置为轮询阶段和/或侦听阶段。 在启用发现循环之前,某些发现参数的配置也会在此状态下发生。
StateRfDiscovered 发现并选择 RF 远程终结点,并且已激活 RF 接口,以便设备主机与其通信。 这是一种过渡状态。
StateRfDataXchg 设备主机和 RF 远端节点正在采用轮询或侦听模式主动交换数据。 该状态涵盖 NCI RF 状态机中的状态 RFST_POLL_ACTIVE 或 RFST_LISTEN_ACTIVE。
StateRecovery 当 NFC 设备向主机发送 CORE_RSET_NTF,或者在 NCI 操作期间发生致命 I/O 错误或超时时,将进入此状态。 NFC CX 尝试通过重置和重新初始化控制器来执行 NCI 恢复。 如果恢复成功,正常作将恢复,否则状态机将转换为 StateIdle。
状态关闭 NFC 设备即将关闭。 这是一种过渡状态。 完成此状态后,状态机将转换为 StateIdle。