Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

네트워크 코 프로세서

이 모듈에는 스레드 스택의 실행을 제어하는 ​​함수가 포함되어 있습니다.

요약

Typedef

otNcpDelegateAllowPeekPoke )(uint32_t aAddress, uint16_t aCount) typedef
bool(*
peek / poke 작업의 동작을 제어하기 위해 대리자 (함수 포인터) 유형을 정의합니다.
otNcpHandlerJoinLegacyNode )(const otExtAddress *aExtAddress) typedef
void(*
결합 프로세스를 시작하기위한 핸들러 (함수 포인터) 유형을 정의합니다.
otNcpHandlerSetLegacyUlaPrefix )(const uint8_t *aUlaPrefix) typedef
void(*
레거시 ULA 접두사를 설정하기위한 핸들러 (함수 포인터) 유형을 정의합니다.
otNcpHandlerStartLegacy )(void) typedef
void(*
레거시 네트워크 시작을위한 핸들러 (함수 포인터) 유형을 정의합니다.
otNcpHandlerStopLegacy )(void) typedef
void(*
레거시 네트워크를 중지하기위한 핸들러 (함수 포인터) 유형을 정의합니다.
otNcpHdlcSendCallback )(const uint8_t *aBuf, uint16_t aBufLength) typedef
int(*
이 함수 포인터는 HDLC로 인코딩 된 NCP 데이터를 보내기 위해 호출됩니다.
otNcpLegacyHandlers typedef
모든 레거시 핸들러 (함수 포인터)를 포함하는 구조체를 정의합니다.

기능

otNcpHandleDidReceiveNewLegacyUlaPrefix (const uint8_t *aUlaPrefix)
void
이 콜백은 레거시 ULA 접두사가 변경되었음을 알리기 위해 레거시 스택에 의해 호출됩니다.
otNcpHandleLegacyNodeDidJoin (const otExtAddress *aExtAddr)
void
이 콜백은 새 레거시 노드가 네트워크에 합류했음을 알리기 위해 레거시 스택에 의해 호출됩니다.
otNcpHdlcInit ( otInstance *aInstance, otNcpHdlcSendCallback aSendCallback)
void
HDLC 프레이밍을 기반으로 NCP를 초기화합니다.
otNcpHdlcReceive (const uint8_t *aBuf, uint16_t aBufLength)
void
이 함수는 HDLC로 인코딩 된 NCP 데이터를 수신 한 후에 호출됩니다.
otNcpHdlcSendDone (void)
void
이 함수는 NCP 전송이 완료된 후에 호출됩니다.
otNcpPlatLogv ( otLogLevel aLogLevel, otLogRegion aLogRegion, const char *aFormat, va_list aArgs)
void
otNcpStreamWrite 사용하여 OpenThread 로그를 otNcpStreamWrite 합니다.
otNcpRegisterLegacyHandlers (const otNcpLegacyHandlers *aHandlers)
void
이 메서드는 NCP에 레거시 처리기 집합을 등록합니다.
otNcpRegisterPeekPokeDelagates ( otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
이 방법은 NCP 모듈에 peek / poke 델리게이트 기능을 등록합니다.
otNcpSpiInit ( otInstance *aInstance)
void
SPI 프레이밍을 기반으로 NCP를 초기화합니다.
otNcpStreamWrite (int aStreamId, const uint8_t *aDataPtr, int aDataLen)
특정 스트림을 통해 호스트에 데이터를 보냅니다.

구조체

otNcpLegacyHandlers

모든 레거시 핸들러 (함수 포인터)를 포함하는 구조체를 정의합니다.

Typedef

otNcpDelegateAllowPeekPoke

bool(* otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount)

peek / poke 작업의 동작을 제어하기 위해 대리자 (함수 포인터) 유형을 정의합니다.

이 델리게이트 함수는 특정 메모리 영역의 픽 또는 퍽을 허용할지 여부를 결정하기 위해 호출됩니다. peek / poke 명령에 대한 NCP 지원이 활성화 된 경우 사용됩니다.

세부
매개 변수
[in] aAddress
메모리 영역의 시작 주소.
[in] aCount
피킹 또는 포킹 할 바이트 수입니다.
보고
주어진 메모리 영역의 픽 / 포크를 허용하려면 TRUE, 그렇지 않으면 FALSE입니다.

otNcpHandlerJoinLegacyNode

void(* otNcpHandlerJoinLegacyNode)(const otExtAddress *aExtAddress)

결합 프로세스를 시작하기위한 핸들러 (함수 포인터) 유형을 정의합니다.

특정 노드 또는 특정 노드에 대한 레거시 조인 절차를 시작하기 위해 호출됩니다.

세부
매개 변수
[in] aExtAddress
결합 할 노드의 확장 주소에 대한 포인터 또는 인접 노드를 결합하려는 경우 NULL입니다.

otNcpHandlerSetLegacyUlaPrefix

void(* otNcpHandlerSetLegacyUlaPrefix)(const uint8_t *aUlaPrefix)

레거시 ULA 접두사를 설정하기위한 핸들러 (함수 포인터) 유형을 정의합니다.

레거시 ULA 접두사를 설정하기 위해 호출됩니다.

세부
매개 변수
[in] aUlaPrefix
레거시 ULA 접두사를 포함하는 버퍼에 대한 포인터입니다.

otNcpHandlerStartLegacy

void(* otNcpHandlerStartLegacy)(void)

레거시 네트워크 시작을위한 핸들러 (함수 포인터) 유형을 정의합니다.

레거시 네트워크를 시작하기 위해 호출됩니다.

otNcpHandlerStopLegacy

void(* otNcpHandlerStopLegacy)(void)

레거시 네트워크를 중지하기위한 핸들러 (함수 포인터) 유형을 정의합니다.

레거시 네트워크를 중지하기 위해 호출됩니다.

otNcpHdlcSendCallback

int(* otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength)

이 함수 포인터는 HDLC로 인코딩 된 NCP 데이터를 보내기 위해 호출됩니다.

세부
매개 변수
[in] aBuf
출력이있는 버퍼에 대한 포인터.
[in] aBufLength
버퍼에 저장된 출력 데이터의 길이입니다.
보고
콜백에서 처리 한 바이트 수입니다.

otNcpLegacyHandlers

struct otNcpLegacyHandlers otNcpLegacyHandlers

모든 레거시 핸들러 (함수 포인터)를 포함하는 구조체를 정의합니다.

기능

otNcpHandleDidReceiveNewLegacyUlaPrefix

void otNcpHandleDidReceiveNewLegacyUlaPrefix(
  const uint8_t *aUlaPrefix
)

이 콜백은 레거시 ULA 접두사가 변경되었음을 알리기 위해 레거시 스택에 의해 호출됩니다.

세부
매개 변수
[in] aUlaPrefix
수신 된 ULA 접두사에 대한 포인터입니다.

otNcpHandleLegacyNodeDidJoin

void otNcpHandleLegacyNodeDidJoin(
  const otExtAddress *aExtAddr
)

이 콜백은 새 레거시 노드가 네트워크에 합류했음을 알리기 위해 레거시 스택에 의해 호출됩니다.

세부
매개 변수
[in] aExtAddr
결합 된 노드의 확장 주소에 대한 포인터.

otNcpHdlcInit

void otNcpHdlcInit(
  otInstance *aInstance,
  otNcpHdlcSendCallback aSendCallback
)

HDLC 프레이밍을 기반으로 NCP를 초기화합니다.

세부
매개 변수
[in] aInstance
OpenThread 인스턴스 구조.
[in] aSendCallback
NCP 데이터를 보내는 데 사용되는 함수 포인터입니다.

otNcpHdlcReceive

void otNcpHdlcReceive(
  const uint8_t *aBuf,
  uint16_t aBufLength
)

이 함수는 HDLC로 인코딩 된 NCP 데이터를 수신 한 후에 호출됩니다.

세부
매개 변수
[in] aBuf
버퍼에 대한 포인터.
[in] aBufLength
버퍼에 저장된 데이터의 길이입니다.

otNcpHdlcSendDone

void otNcpHdlcSendDone(
  void
)

이 함수는 NCP 전송이 완료된 후에 호출됩니다.

otNcpPlatLogv

void otNcpPlatLogv(
  otLogLevel aLogLevel,
  otLogRegion aLogRegion,
  const char *aFormat,
  va_list aArgs
)

otNcpStreamWrite 사용하여 OpenThread 로그를 otNcpStreamWrite 합니다.

세부
매개 변수
[in] aLogLevel
로그 수준.
[in] aLogRegion
로그 영역입니다.
[in] aFormat
형식 문자열에 대한 포인터.
[in] aArgs
aFormat과 일치하는 va_list.

otNcpRegisterLegacyHandlers

void otNcpRegisterLegacyHandlers(
  const otNcpLegacyHandlers *aHandlers
)

이 메서드는 NCP에 레거시 처리기 집합을 등록합니다.

struct aHandlers 제공하는 핸들러 세트는 NCP 코드에서 레거시 네트워크를 시작 / 중지하는 데 사용됩니다. aHandlers 는 NCP에서 레거시 지원을 비활성화하기 위해 NULL aHandlers 수 있습니다. 지정된 핸들러 구조체의 개별 핸들러도 NULL 일 수 있습니다.

세부
매개 변수
[in] aHandlers
핸들러 구조체에 대한 포인터.

otNcpRegisterPeekPokeDelagates

void otNcpRegisterPeekPokeDelagates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

이 방법은 NCP 모듈에 peek / poke 델리게이트 기능을 등록합니다.

델리게이트 함수는 NCP 모듈에 의해 호출되어 특정 메모리 영역의 픽 또는 포크를 허용할지 여부를 결정합니다. 대리자 포인터가 NULL로 설정되어 있으면 모든 주소에 대해 peek / poke 작업을 허용합니다.

세부
매개 변수
[in] aAllowPeekDelegate
엿보기 작업을위한 위임 함수 포인터.
[in] aAllowPokeDelegate
poke 작업을위한 위임 함수 포인터.

otNcpSpiInit

void otNcpSpiInit(
  otInstance *aInstance
)

SPI 프레이밍을 기반으로 NCP를 초기화합니다.

세부
매개 변수
[in] aInstance
OpenThread 인스턴스 구조.

otNcpStreamWrite

otError otNcpStreamWrite(
  int aStreamId,
  const uint8_t *aDataPtr,
  int aDataLen
)

특정 스트림을 통해 호스트에 데이터를 보냅니다.

이 함수는 주어진 aStreamId를 사용하여 주어진 데이터를 호스트로 보내려고합니다. 이는 오류 메시지보고, 디버그 / 진단 콘솔 구현 및 잠재적으로 다른 유형의 데이터 스트림에 유용합니다.

쓰기가 완전히 승인되거나 거부됩니다. 부분 쓰기는 시도되지 않습니다.

세부
매개 변수
[in] aStreamId
쓸 스트림의 숫자 식별자입니다. '0'으로 설정하면 기본적으로 디버그 스트림이 사용됩니다.
[in] aDataPtr
스트림에서 보낼 데이터에 대한 포인터입니다. aDataLen이 0이 아니면이 매개 변수는 NULL이 아니어야합니다.
[in] aDataLen
aDataPtr에서 보낼 데이터의 바이트 수입니다.
반환 값
OT_ERROR_NONE
데이터가 호스트로 전달되기 위해 대기열에 추가되었습니다.
OT_ERROR_BUSY
이 요청을 완료하기위한 리소스가 충분하지 않습니다. 이것은 일반적으로 일시적인 상태입니다.
OT_ERROR_INVALID_ARGS
지정된 aStreamId가 잘못되었습니다.

매크로

OT_NCP_LEGACY_ULA_PREFIX_LENGTH

 OT_NCP_LEGACY_ULA_PREFIX_LENGTH 8

레거시 ULA 크기 (바이트)