NFC 클래스 확장 상태 컴퓨터

NFC CX 상태 컴퓨터의 내부 디자인은 다음과 같습니다. NFC CX에서 지정한 다양한 상태와 상태 전환을 유발하는 내부 및 외부 이벤트가 다이어그램에 캡처됩니다. 읽기 용이성을 위해 일부 상태 간의 일부 전환은 다이어그램에 표시되지 않습니다. NCI RF 상태 컴퓨터에 대한 매핑과 함께 상태는 아래에 자세히 설명되어 있습니다.

nfc cx 상태 컴퓨터.

시스템 상태 Description
StateIdle STATEIdle은 NFC 디바이스의 전원이 켜지지만 NCI 명령이 컨트롤러로 전송되지 않거나 NCI 작업 중에 복구할 수 없는 오류가 발생할 때 입력됩니다.
StateInit stateInit는 HARDWARE_ACTION 시작이 NFC CX로 전송될 때 입력됩니다. 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 보냈거나 심각한 I/O 오류가 발생하는 경우 NCI 작업 중에 시간 초과가 발생할 때 입력됩니다. NFC CX는 컨트롤러를 다시 설정 및 다시 초기화하여 NCI 복구를 수행하려고 합니다. 복구에 성공하면 정상 작업이 다시 시작되고, 그렇지 않으면 상태 컴퓨터가 StateIdle로 전환됩니다.
StateShutdown NFC 디바이스가 종료될 예정입니다. 전환 상태입니다. 이 상태가 완료되면 상태 컴퓨터가 StateIdle로 전환됩니다.