네트워크 보조 프로세서

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

요약

Typedef

otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount) typedef
bool(*
대리자 (함수 포인터) 유형을 정의하여 미리보기/포크 작업의 동작을 제어합니다.
otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength) typedef
int(*
포인터는 HDLC로 인코딩된 NCP 데이터를 전송하기 위해 호출됩니다.

함수

otNcpHdlcInit(otInstance *aInstance, otNcpHdlcSendCallback aSendCallback)
void
HDLC 프레이밍을 기반으로 NCP를 초기화합니다.
otNcpHdlcInitMulti(otInstance **aInstance, uint8_t aCount, 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 로그를 작성합니다.
otNcpRegisterPeekPokeDelegates(otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
NCP 모듈에 미리보기/포크 대리자 함수를 등록합니다.
otNcpSpiInit(otInstance *aInstance)
void
SPI 프레이밍을 기반으로 NCP를 초기화합니다.
otNcpStreamWrite(int aStreamId, const uint8_t *aDataPtr, int aDataLen)
특정 스트림을 통해 호스트에 데이터 전송

Typedef

otNcpDelegateAllowPeekPoke

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

대리자 (함수 포인터) 유형을 정의하여 미리보기/포크 작업의 동작을 제어합니다.

이 대리자 함수는 특정 메모리 영역의 미리보기 또는 포크를 허용할지 결정하기 위해 호출됩니다. 이것은 미리보기/포크 명령어에 NCP 지원이 사용 설정된 경우 사용됩니다.

세부정보
매개변수
[in] aAddress
메모리 영역의 시작 주소입니다.
[in] aCount
엿보기 또는 포크할 바이트 수입니다.
반환
지정된 메모리 영역의 미리보기/포크를 허용하려면 TRUE, 그러지 않으면 FALSE입니다.

otNcpHdlcSendCallback

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

포인터는 HDLC로 인코딩된 NCP 데이터를 전송하기 위해 호출됩니다.

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

함수

otNcpHdlcInit

void otNcpHdlcInit(
  otInstance *aInstance,
  otNcpHdlcSendCallback aSendCallback
)

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

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

otNcpHdlcInitMulti

void otNcpHdlcInitMulti(
  otInstance **aInstance,
  uint8_t aCount,
  otNcpHdlcSendCallback aSendCallback
)

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

세부정보
매개변수
[in] aInstances
OpenThread 인스턴스 포인터 배열입니다.
[in] aCount
배열에 있는 요소의 개수입니다.
[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 로그를 작성합니다.

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

otNcpRegisterPeekPokeDelegates

void otNcpRegisterPeekPokeDelegates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

NCP 모듈에 미리보기/포크 대리자 함수를 등록합니다.

위임 함수는 NCP 모듈에서 호출하여 특정 메모리 영역의 미리보기 또는 포크를 허용할지 결정합니다. 위임 포인터가 NULL로 설정된 경우 모든 주소의 피크/포크 작업이 허용됩니다.

세부정보
매개변수
[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이면 안 됩니다(MUST NOT).
[in] aDataLen
aDataPtr에서 전송할 데이터의 바이트 수입니다.
반환 값
OT_ERROR_NONE
데이터가 호스트로 전송되기 위한 대기열에 추가되었습니다.
OT_ERROR_BUSY
리소스가 부족하여 이 요청을 완료할 수 없습니다. 이는 대개 일시적인 상태입니다.
OT_ERROR_INVALID_ARGS
지정된 aStreamId가 잘못되었습니다.

자료

OpenThread API 참조 주제는 GitHub에서 제공되는 소스 코드에서 비롯됩니다. 자세한 내용을 알아보거나 문서에 참여하려면 리소스를 참고하세요.