NFC 类扩展状态机
NFC CX 状态机的内部设计如下所示。 NFC CX 指定的各种状态以及导致状态转换的内部和外部事件在关系图中捕获。 请注意,为了便于阅读,某些状态之间的某些转换不会显示在关系图中。 下面进一步介绍了状态以及到 NCI RF 状态机的映射。
状态 | 描述 |
---|---|
StateIdle | 当 NFC 设备通电但未向控制器发送 NCI 命令,或者在 NCI 操作期间发生不可恢复的错误时,将输入 StateIdle。 |
StateInit | HARDWARE_ACTION Start 发送到 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。 |
StateShutdown | NFC 设备即将关闭。 这是一种过渡性状态。 完成此状态后,状态机将转换为 StateIdle。 |