Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

ネットワーク コプロセッサ

このモジュールには、スレッド スタックの実行を制御する関数が含まれています。

概要

Typedef

otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount) typedef
bool(*
ピーク/ポーク動作の動作を制御するデリゲート(関数ポインタ)型を定義します。
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 ログを書き込みます。
otNcpRegisterLegacyHandlers(const otNcpLegacyHandlers *aHandlers)
void
このメソッドは、レガシー ハンドラのセットを NCP に登録します。
otNcpRegisterPeekPokeDelagates(otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
このメソッドは、ピーク/ポーク委任関数を NCP モジュールに登録します。
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)

ピーク/ポーク動作の動作を制御するデリゲート(関数ポインタ)型を定義します。

このデリゲート関数は、特定のメモリ領域のモックを許可するかどうかを決定します。ピーク/ポーク コマンドの NCP サポートが有効になっている場合に使用されます。

詳細
パラメータ
[in] aAddress
メモリ領域の開始アドレス。
[in] aCount
ピークまたはポークするバイト数。
戻り値
特定のメモリ領域のピーク/ポークを許可するには TRUE、そうでない場合は FALSE。

otNcpHandlerJoinLegacyNode(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(OTNcpHandlerStopLegacy)

void(* otNcpHandlerStopLegacy)(void)

レガシー ネットワークを停止するためのハンドラ(関数ポインタ)タイプを定義します。

レガシー ネットワークを停止するために呼び出されます。

otNcpHdlcSendCallback

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

この関数ポインタは、HDLC でエンコードされた NCP データを送信するために呼び出されます。

詳細
パラメータ
[in] aBuf
出力を含むバッファへのポインタ。
[in] aBufLength
バッファに格納されている出力データの長さ。
戻り値
コールバックで処理されたバイト数。

otNcpLegacyHandlers(OTNcpLegacyHandlers)

struct otNcpLegacyHandlers otNcpLegacyHandlers

すべてのレガシー ハンドラ(関数ポインタ)を含む構造体を定義します。

関数

otNcpHandleDidReceiveNewLegacyUlaPrefix

void otNcpHandleDidReceiveNewLegacyUlaPrefix(
  const uint8_t *aUlaPrefix
)

このコールバックは、以前の ULA 接頭辞が変更されたことを通知するために、レガシー スタックによって呼び出されます。

詳細
パラメータ
[in] aUlaPrefix
受信した ULA 接頭辞へのポインタ。

otNcpHandleLegacyNodeDidJoin(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 ログを書き込みます。

詳細
パラメータ
[in] aLogLevel
ログレベル。
[in] aLogRegion
ログのリージョン。
[in] aFormat
形式設定文字列へのポインタ。
[in] aArgs
va_list が aFormat と一致する。

otNcpRegisterLegacyHandlers(OTNcpRegisterLegacyHandlers)

void otNcpRegisterLegacyHandlers(
  const otNcpLegacyHandlers *aHandlers
)

このメソッドは、レガシー ハンドラのセットを NCP に登録します。

構造体 aHandlers で提供される一連のハンドラは、NCP コードでレガシー ネットワークを開始/停止するために使用されます。NCP のレガシー サポートを無効にするには、aHandlers を NULL にすることができます。指定したハンドラ構造体内の個々のハンドラは、NULL にすることもできます。

詳細
パラメータ
[in] aHandlers
ハンドラ構造体へのポインタ。

otNcpRegisterPeekPokeDelagates

void otNcpRegisterPeekPokeDelagates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

このメソッドは、ピーク/ポーク委任関数を NCP モジュールに登録します。

デリゲート関数は NCP モジュールによって呼び出され、特定のメモリ領域のピークまたはポークを許可するかどうかを決定します。デリゲート ポインタが NULL に設定されている場合、任意のアドレスのピーク/ポーク オペレーションが許可されます。

詳細
パラメータ
[in] aAllowPeekDelegate
ピークオペレーションのデリゲート関数ポインタ。
[in] aAllowPokeDelegate
ポーク オペレーションのデリゲート関数ポインタ。

otNcpSpiInit

void otNcpSpiInit(
  otInstance *aInstance
)

SPI フレーミングに基づいて NCP を初期化します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンス構造。

otNcpStreamWrite

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

特定のストリームでデータをホストに送信します。

この関数は、指定された aStreamId を使用して、指定されたデータをホストに送信しようとします。これは、エラー メッセージの報告、デバッグ/診断コンソール、およびその他のタイプのデータストリームの実装に便利です。

書き込みの全体または一部が受け入れられます。部分的な書き込みは試行されません。

詳細
パラメータ
[in] aStreamId
書き込み先のストリームの数値 ID。「0」に設定すると、デフォルトでデバッグ ストリームに設定されます。
[in] aDataPtr
ストリームで送信するデータへのポインタ。aDataLen がゼロ以外の場合、このパラメータは 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 サイズ(バイト単位)

リソース

OpenThread API リファレンスのトピックは、GitHub で入手可能なソースコードに基づいています。 詳細またはドキュメントへの投稿については、リソースをご覧ください。