다음을 통해 공유


NFC 클래스 확장 상태 컴퓨터

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

nfc cx 상태 기계.

State 설명
StateIdle NFC 디바이스의 전원이 켜지지만 컨트롤러에 NCI 명령이 전송되지 않거나 NCI 작업 중에 복구할 수 없는 오류가 발생하면 StateIdle이 입력됩니다.
StateInit HARDWARE_ACTION 시작이 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로 전환됩니다.