Coprocesseur réseau

Ce module inclut des fonctions qui contrôlent l'exécution de la pile Thread.

Résumé

Typedefs

otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount) typedef
bool(*
Définit le type de délégué (pointeur de fonction) pour contrôler le comportement de l'opération de prévisualisation/pok.
otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength) typedef
int(*
Le pointeur est appelé pour envoyer des données NCP encodées en HDLC.

distantes

otNcpHdlcInit(otInstance *aInstance, otNcpHdlcSendCallback aSendCallback)
void
Initialiser le NCP basé sur le cadrage HDLC
otNcpHdlcInitMulti(otInstance **aInstance, uint8_t aCount, otNcpHdlcSendCallback aSendCallback)
void
Initialiser le NCP basé sur le cadrage HDLC
otNcpHdlcReceive(const uint8_t *aBuf, uint16_t aBufLength)
void
Elle est appelée après la réception des données NCP encodées en HDLC.
otNcpHdlcSendDone(void)
void
est appelé après la fin de l'envoi du NCP.
otNcpPlatLogv(otLogLevel aLogLevel, otLogRegion aLogRegion, const char *aFormat, va_list aArgs)
void
Écrit le journal OpenThread à l'aide de otNcpStreamWrite.
otNcpRegisterPeekPokeDelegates(otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
Enregistre les fonctions de délégation d'aperçu/poké avec le module NCP.
otNcpSpiInit(otInstance *aInstance)
void
Initialisez le NCP basé sur le cadrage SPI.
otNcpStreamWrite(int aStreamId, const uint8_t *aDataPtr, int aDataLen)
Envoyer des données à l'hôte via un flux spécifique

Typedefs

otNcpDelegateAllowPeekPoke

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

Définit le type de délégué (pointeur de fonction) pour contrôler le comportement de l'opération de prévisualisation/pok.

Cette fonction de délégué est appelée pour décider d'autoriser ou non l'aperçu d'une région de mémoire spécifique. Il est utilisé si la prise en charge de NCP pour les commandes Cloud Shell est activée.

Détails
Paramètres
[in] aAddress
Adresse de début de la région de la mémoire.
[in] aCount
Nombre d'octets à consulter ou à percer.
Renvoie
TRUE pour autoriser l'aperçu de la région de mémoire donnée, FALSE dans le cas contraire.

otNcpHdlcSendCallback

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

Le pointeur est appelé pour envoyer des données NCP encodées en HDLC.

Détails
Paramètres
[in] aBuf
Pointeur vers un tampon avec une sortie.
[in] aBufLength
Longueur des données de sortie stockées dans le tampon.
Renvoie
Nombre d'octets traités par le rappel.

distantes

otNcpHdlcInit

void otNcpHdlcInit(
  otInstance *aInstance,
  otNcpHdlcSendCallback aSendCallback
)

Initialiser le NCP basé sur le cadrage HDLC

Détails
Paramètres
[in] aInstance
Structure de l'instance OpenThread.
[in] aSendCallback
Pointeur de fonction utilisé pour envoyer les données NCP.

otNcpHdlcInitMulti

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

Initialiser le NCP basé sur le cadrage HDLC

Détails
Paramètres
[in] aInstances
Tableau de pointeurs d'instance OpenThread.
[in] aCount
Nombre d'éléments dans le tableau.
[in] aSendCallback
Pointeur de fonction utilisé pour envoyer les données NCP.

otNcpHdlcReceive

void otNcpHdlcReceive(
  const uint8_t *aBuf,
  uint16_t aBufLength
)

Elle est appelée après la réception des données NCP encodées en HDLC.

Détails
Paramètres
[in] aBuf
Pointeur vers un tampon.
[in] aBufLength
Longueur des données stockées dans la mémoire tampon.

otNcpHdlcSendDone

void otNcpHdlcSendDone(
  void
)

est appelé après la fin de l'envoi du NCP.

otNcpPlatLogv

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

Écrit le journal OpenThread à l'aide de otNcpStreamWrite.

Détails
Paramètres
[in] aLogLevel
Niveau de journalisation.
[in] aLogRegion
Région du journal.
[in] aFormat
Pointeur vers la chaîne de format.
[in] aArgs
va_list correspondant à aFormat.

otNcpRegisterPeekPokeDelegates

void otNcpRegisterPeekPokeDelegates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

Enregistre les fonctions de délégation d'aperçu/poké avec le module NCP.

Les fonctions déléguées sont appelées par le module NCP pour décider si une région de mémoire spécifique doit être accessible ou non. Si le pointeur délégué est défini sur NULL, il autorise les opérations de prévisualisation/poke pour n'importe quelle adresse.

Détails
Paramètres
[in] aAllowPeekDelegate
Pointeur de fonction délégué pour l'opération d'aperçu.
[in] aAllowPokeDelegate
Pointeur de fonction délégué pour l'opération de poke.

otNcpSpiInit

void otNcpSpiInit(
  otInstance *aInstance
)

Initialisez le NCP basé sur le cadrage SPI.

Détails
Paramètres
[in] aInstance
Structure de l'instance OpenThread.

otNcpStreamWrite

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

Envoyer des données à l'hôte via un flux spécifique

Tente d'envoyer les données fournies à l'hôte à l'aide de l'ID aStreamId donné. Cette fonctionnalité est utile pour signaler les messages d'erreur, implémenter des consoles de débogage/diagnostic et, éventuellement, d'autres types de flux de données.

L'écriture est acceptée dans son intégralité ou refusée. Aucune tentative d'écriture partielle n'est effectuée.

Détails
Paramètres
[in] aStreamId
Identifiant numérique du flux dans lequel écrire. Si elle est définie sur "0", le flux de débogage est utilisé par défaut.
[in] aDataPtr
Pointeur vers les données à envoyer dans le flux. Si le paramètre aDataLen est différent de zéro, ce paramètre NE DOIT PAS être NULL.
[in] aDataLen
Nombre d'octets de données à envoyer depuis aDataPtr.
Valeurs de retour
OT_ERROR_NONE
Les données ont été mises en file d'attente pour être transmises à l'hôte.
OT_ERROR_BUSY
Les ressources sont insuffisantes pour traiter cette demande. Il s'agit généralement d'une situation temporaire.
OT_ERROR_INVALID_ARGS
L'identifiant aStreamId indiqué n'était pas valide.

Ressources

Les sujets de référence de l'API OpenThread proviennent du code source, disponible sur GitHub. Pour en savoir plus ou pour contribuer à notre documentation, consultez la section Ressources.