Netzwerk-Coprozessor

Dieses Modul enthält Funktionen zur Steuerung der Thread-Stack-Ausführung.

Fazit

Typdef.

otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount) Typdef
bool(*
Definiert den Bevollmächtigten (Funktionszeiger), um das Verhalten des Peek-/Poke-Vorgangs zu steuern.
otNcpHandlerJoinLegacyNode)(const otExtAddress *aExtAddress) Typdef
void(*
Definiert den Handlertyp (Funktionszeiger), um den Beitrittsprozess zu initiieren.
otNcpHandlerSetLegacyUlaPrefix)(const uint8_t *aUlaPrefix) Typdef
void(*
Definiert den Handlertyp (Funktionszeiger), um das alte ULA-Präfix festzulegen.
otNcpHandlerStartLegacy)(void) Typdef
void(*
Definiert den Handlertyp (Funktionszeiger), um das alte Netzwerk zu starten.
otNcpHandlerStopLegacy)(void) Typdef
void(*
Definiert den Handlertyp (Funktionszeiger), um das Legacy-Netzwerk zu beenden.
otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength) Typdef
int(*
Dieser Funktionszeiger wird aufgerufen, um HDLC-codierte NCP-Daten zu senden.
otNcpLegacyHandlers Typdef
Definiert eine Struktur, die alle alten Handler (Funktionszeiger) enthält.

Funktionen

otNcpHandleDidReceiveNewLegacyUlaPrefix(const uint8_t *aUlaPrefix)
void
Dieser Callback wird vom Legacy-Stack aufgerufen, um zu informieren, dass sich das alte ULA-Präfix geändert hat.
otNcpHandleLegacyNodeDidJoin(const otExtAddress *aExtAddr)
void
Dieser Callback wird vom Legacy-Stack aufgerufen, um zu benachrichtigen, dass ein neuer Legacy-Knoten dem Netzwerk beigetreten ist.
otNcpHdlcInit(otInstance *aInstance, otNcpHdlcSendCallback aSendCallback)
void
Initialisieren Sie den NCP basierend auf dem HDLC-Framing.
otNcpHdlcReceive(const uint8_t *aBuf, uint16_t aBufLength)
void
Diese Funktion wird nach dem Empfang von HDLC-codierten NCP-Daten aufgerufen.
otNcpHdlcSendDone(void)
void
Diese Funktion wird aufgerufen, nachdem der NCP-Versand abgeschlossen ist.
otNcpPlatLogv(otLogLevel aLogLevel, otLogRegion aLogRegion, const char *aFormat, va_list aArgs)
void
Schreiben von OpenThread-Log mit otNcpStreamWrite.
otNcpRegisterLegacyHandlers(const otNcpLegacyHandlers *aHandlers)
void
Mit dieser Methode wird eine Reihe von älteren Handlern bei NCP registriert.
otNcpRegisterPeekPokeDelagates(otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
Mit dieser Methode werden die Delegiertenfunktionen im Rahmen des NCP-Moduls registriert.
otNcpSpiInit(otInstance *aInstance)
void
Initialisieren Sie den NCP basierend auf dem SPI-Framing.
otNcpStreamWrite(int aStreamId, const uint8_t *aDataPtr, int aDataLen)
Sende über einen bestimmten Stream Daten an den Host.

Strebenklemmen

otNcpLegacyHandlers

Definiert eine Struktur, die alle alten Handler (Funktionszeiger) enthält.

Typdef.

otNcpDelegateAllowPeekPoke

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

Definiert den Bevollmächtigten (Funktionszeiger), um das Verhalten des Peek-/Poke-Vorgangs zu steuern.

Diese Bevollmächtigten-Funktion wird aufgerufen, um zu entscheiden, ob sie Daten zu einem bestimmten Speicherbereich aufnehmen darf. Es wird verwendet, wenn die NCP-Unterstützung für Peek-/Poke-Befehle aktiviert ist.

Details
Parameter
[in] aAddress
Startadresse der Speicherregion.
[in] aCount
Anzahl der zu schauernden oder zu pokenden Byte.
Rückgabe
TRUE, um die Vorschau der angegebenen Speicherregion zuzulassen.

otNcpHandlerJoinLegacyNode

void(* otNcpHandlerJoinLegacyNode)(const otExtAddress *aExtAddress)

Definiert den Handlertyp (Funktionszeiger), um den Beitrittsprozess zu initiieren.

Wird aufgerufen, um ein altes Join-Verfahren für einen oder einen bestimmten Knoten zu starten.

Details
Parameter
[in] aExtAddress
Ein Zeiger auf die erweiterte Adresse für den Knoten, der hinzugefügt werden soll, oder NULL, falls gewünscht, um einen benachbarten Knoten zu verknüpfen.

otNcpHandlerSetLegacyUlaPrefix

void(* otNcpHandlerSetLegacyUlaPrefix)(const uint8_t *aUlaPrefix)

Definiert den Handlertyp (Funktionszeiger), um das alte ULA-Präfix festzulegen.

Wird aufgerufen, um das alte ULA-Präfix festzulegen.

Details
Parameter
[in] aUlaPrefix
Ein Zeiger zum Zwischenspeichern des alten ULA-Präfixes.

otNcpHandlerStartLegacy

void(* otNcpHandlerStartLegacy)(void)

Definiert den Handlertyp (Funktionszeiger), um das alte Netzwerk zu starten.

Wird aufgerufen, um das Legacy-Netzwerk zu starten.

otNcpHandlerStopLegacy

void(* otNcpHandlerStopLegacy)(void)

Definiert den Handlertyp (Funktionszeiger), um das Legacy-Netzwerk zu beenden.

Wird aufgerufen, um das Legacy-Netzwerk zu beenden.

OTNcpHdlcSendCallback

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

Dieser Funktionszeiger wird aufgerufen, um HDLC-codierte NCP-Daten zu senden.

Details
Parameter
[in] aBuf
Ein Zeiger auf einen Zwischenspeicher mit einer Ausgabe.
[in] aBufLength
Länge der im Puffer gespeicherten Ausgabedaten.
Rückgabe
Anzahl der Byte, die vom Callback verarbeitet wurden.

otNcpLegacyHandlers

struct otNcpLegacyHandlers otNcpLegacyHandlers

Definiert eine Struktur, die alle alten Handler (Funktionszeiger) enthält.

Funktionen

otNcpHandle DidReceivedNewLegacyUlaPrefix

void otNcpHandleDidReceiveNewLegacyUlaPrefix(
  const uint8_t *aUlaPrefix
)

Dieser Callback wird vom Legacy-Stack aufgerufen, um zu informieren, dass sich das alte ULA-Präfix geändert hat.

Details
Parameter
[in] aUlaPrefix
Ein Zeiger auf das empfangene ULA-Präfix.

otNcpHandleLegacyNodeDidJoin

void otNcpHandleLegacyNodeDidJoin(
  const otExtAddress *aExtAddr
)

Dieser Callback wird vom Legacy-Stack aufgerufen, um zu benachrichtigen, dass ein neuer Legacy-Knoten dem Netzwerk beigetreten ist.

Details
Parameter
[in] aExtAddr
Ein Zeiger auf die erweiterte Adresse des verknüpften Knotens.

OtNcpHdlcInit

void otNcpHdlcInit(
  otInstance *aInstance,
  otNcpHdlcSendCallback aSendCallback
)

Initialisieren Sie den NCP basierend auf dem HDLC-Framing.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aSendCallback
Der Funktionszeiger, der zum Senden von NCP-Daten verwendet wird.

OTNcpHdlcReceive

void otNcpHdlcReceive(
  const uint8_t *aBuf,
  uint16_t aBufLength
)

Diese Funktion wird nach dem Empfang von HDLC-codierten NCP-Daten aufgerufen.

Details
Parameter
[in] aBuf
Ein Zeiger auf einen Puffer.
[in] aBufLength
Die Länge der im Puffer gespeicherten Daten.

otNcpHdlcSendDone

void otNcpHdlcSendDone(
  void
)

Diese Funktion wird aufgerufen, nachdem der NCP-Versand abgeschlossen ist.

otNcpPlatLogv.

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

Schreiben von OpenThread-Log mit otNcpStreamWrite.

Details
Parameter
[in] aLogLevel
Die Protokollebene.
[in] aLogRegion
Die Logregion.
[in] aFormat
Ein Zeiger auf den Formatstring.
[in] aArgs
va_list entspricht aFormat.

otNcpRegisterLegacyHandlers

void otNcpRegisterLegacyHandlers(
  const otNcpLegacyHandlers *aHandlers
)

Mit dieser Methode wird eine Reihe von älteren Handlern bei NCP registriert.

Die von der Struktur aHandlers bereitgestellten Handler werden vom NCP-Code verwendet, um das alte Netzwerk zu starten bzw. zu beenden. Der aHandlers kann NULL sein, um die Legacy-Unterstützung für NCP zu deaktivieren. Auch einzelne Handler in der angegebenen Handler-Struktur können NULL sein.

Details
Parameter
[in] aHandlers
Ein Zeiger auf eine Handler-Struktur.

otNcpRegisterPeekPokeDelagates

void otNcpRegisterPeekPokeDelagates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

Mit dieser Methode werden die Delegiertenfunktionen im Rahmen des NCP-Moduls registriert.

Die Bevollmächtigten Funktionen werden vom NCP-Modul aufgerufen, um zu entscheiden, ob ein bestimmter Speicherbereich zulässig ist. Wenn der Bevollmächtigten auf NULL gesetzt ist, wird der Peek-/Poke-Vorgang für jede Adresse zugelassen.

Details
Parameter
[in] aAllowPeekDelegate
Funktionszeiger für den Peek-Vorgang delegieren.
[in] aAllowPokeDelegate
Funktionszeiger für Pok-Vorgang delegieren.

OTNCPSpiInit

void otNcpSpiInit(
  otInstance *aInstance
)

Initialisieren Sie den NCP basierend auf dem SPI-Framing.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.

otNcpStreamWrite

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

Sende über einen bestimmten Stream Daten an den Host.

Diese Funktion versucht, die angegebenen Daten mit der angegebenen Stream-ID an den Host zu senden. Dies ist nützlich für die Meldung von Fehlermeldungen, die Implementierung von Debugging-/Diagnosekonsolen und möglicherweise für andere Arten von Datenstreams.

Der Schreibvorgang wird entweder vollständig akzeptiert oder abgelehnt. Es werden keine Teilschreibvorgänge versucht.

Details
Parameter
[in] aStreamId
Eine numerische Kennung für den Stream, in den geschrieben werden soll. Ist die Option auf '0' festgelegt, wird standardmäßig der Debug-Stream verwendet.
[in] aDataPtr
Ein Zeiger auf die Daten, die im Stream gesendet werden sollen. Wenn aDataLen ungleich null ist, MUSS dieser Parameter NICHT NULL sein.
[in] aDataLen
Die Anzahl der zu sendenden Datenbyte von aDataPtr.
Rückgabewerte
OT_ERROR_NONE
Die Daten wurden in die Warteschlange für die Bereitstellung an den Host gestellt.
OT_ERROR_BUSY
Zur Ausführung dieser Anfrage sind nicht genügend Ressourcen vorhanden. Dies ist in der Regel eine vorübergehende Bedingung.
OT_ERROR_INVALID_ARGS
Die angegebene Streamstream-ID war ungültig.

Makros

OT_NCP_LEGACY_ULA_PREFIX_LENGTH

 OT_NCP_LEGACY_ULA_PREFIX_LENGTH 8

Größe der Legacy-ULA (in Byte)

Ressourcen

Die Themen der Referenzthread API basieren auf dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen sowie die Möglichkeit, in unserer Dokumentation mitzuwirken, finden Sie unter Ressourcen.