Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Funkbetrieb

Dieses Modul enthält die Plattformabstraktion für Funkvorgänge.

Zusammenfassung

Funktionen

otPlatDiagRadioReceiveDone(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
Der Radiotreiber ruft diese Methode auf, um das OpenThread-Diagnosemodul über einen empfangenen Frame zu benachrichtigen.
otPlatDiagRadioTransmitDone(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
Der Radiotreiber ruft diese Methode auf, um das OpenThread-Diagnosemodul darüber zu informieren, dass die Übertragung abgeschlossen ist.
otPlatRadioAddSrcMatchExtEntry(otInstance *aInstance, const otExtAddress *aExtAddress)
Fügen Sie der Match-Table der Quelladresse eine erweiterte Adresse hinzu.
otPlatRadioAddSrcMatchShortEntry(otInstance *aInstance, otShortAddress aShortAddress)
Fügen Sie der Match-Table der Quelladresse eine kurze Adresse hinzu.
otPlatRadioClearSrcMatchExtEntries(otInstance *aInstance)
void
Löschen Sie alle erweiterten/langen Adressen aus der Match-Table für die Quelladresse.
otPlatRadioClearSrcMatchExtEntry(otInstance *aInstance, const otExtAddress *aExtAddress)
Entfernen Sie eine erweiterte Adresse aus der Match-Table für die Quelladresse.
otPlatRadioClearSrcMatchShortEntries(otInstance *aInstance)
void
Löschen Sie alle Kurzadressen aus der Match-Table für die Quelladresse.
otPlatRadioClearSrcMatchShortEntry(otInstance *aInstance, otShortAddress aShortAddress)
Entfernen Sie eine kurze Adresse aus der Match-Table für die Quelladresse.
otPlatRadioConfigureEnhAckProbing(otInstance *aInstance, otLinkMetrics aLinkMetrics, otShortAddress aShortAddress, const otExtAddress *aExtAddress)
Hiermit können Sie die Funktion „Erweiterte ACK-Prüfung“ im Radio für einen bestimmten Initiator aktivieren/deaktivieren oder aktualisieren.
otPlatRadioDisable(otInstance *aInstance)
Deaktiviere das Radio.
otPlatRadioEnable(otInstance *aInstance)
Aktivieren Sie das Radio.
otPlatRadioEnableCsl(otInstance *aInstance, uint32_t aCslPeriod, otShortAddress aShortAddr, const otExtAddress *aExtAddr)
CSL-Empfänger aktivieren oder deaktivieren.
otPlatRadioEnableSrcMatch(otInstance *aInstance, bool aEnable)
void
Funktion zum Abgleich von Quelladressen aktivieren/deaktivieren.
otPlatRadioEnergyScan(otInstance *aInstance, uint8_t aScanChannel, uint16_t aScanDuration)
Starte den Ablauf des Energiescans im Radio.
otPlatRadioEnergyScanDone(otInstance *aInstance, int8_t aEnergyScanMaxRssi)
void
Der Radiotreiber ruft diese Methode auf, um OpenThread darüber zu informieren, dass der Energiescan abgeschlossen ist.
otPlatRadioGetCoexMetrics(otInstance *aInstance, otRadioCoexMetrics *aCoexMetrics)
Rufen Sie die Messwerte zur parallelen Verwendung von Radiosendern ab.
otPlatRadioGetCslAccuracy(otInstance *aInstance)
uint8_t
Die aktuelle Genauigkeit der Uhr, die für die Planung von CSL-Vorgängen verwendet wird, in Einheiten von ± ppm
otPlatRadioGetCslUncertainty(otInstance *aInstance)
uint8_t
Die feste Unsicherheit des Geräts zur Planung von CSL-Übertragungen in Einheiten von 10 Mikrosekunden.
otPlatRadioGetPreferredChannelMask(otInstance *aInstance)
uint32_t
Ruft die Radiosender-Maske ab, auf der das Gerät bevorzugt erstellt werden soll.
otPlatRadioGetRegion(otInstance *aInstance, uint16_t *aRegionCode)
Rufen Sie den Regionscode ab.
otPlatRadioGetRssi(otInstance *aInstance)
int8_t
Rufen Sie die neueste RSSI-Messung ab.
otPlatRadioGetState(otInstance *aInstance)
Aktuellen Status des Radios abrufen.
otPlatRadioGetSupportedChannelMask(otInstance *aInstance)
uint32_t
Hiermit wird die Radiosender-Maske abgerufen, die auf dem Gerät aktiviert werden darf.
otPlatRadioGetTransmitBuffer(otInstance *aInstance)
Radio-Frame-Zwischenspeicher abrufen.
otPlatRadioIsCoexEnabled(otInstance *aInstance)
bool
Prüfen Sie, ob Radiocoex aktiviert ist.
otPlatRadioIsEnabled(otInstance *aInstance)
bool
Prüfen Sie, ob das Radio aktiviert ist.
otPlatRadioReceive(otInstance *aInstance, uint8_t aChannel)
Stelle das Radio von „Schlaf“ auf „Empfang“ um (Schalte das Radio ein).
otPlatRadioReceiveAt(otInstance *aInstance, uint8_t aChannel, uint32_t aStart, uint32_t aDuration)
Sie können das Empfangsfenster für einen bestimmten Zeitpunkt und eine bestimmte Dauer festlegen.
otPlatRadioReceiveDone(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
Der Radiotreiber ruft diese Methode auf, um OpenThread über einen empfangenen Frame zu benachrichtigen.
otPlatRadioSetChannelMaxTransmitPower(otInstance *aInstance, uint8_t aChannel, int8_t aMaxPower)
Maximale Übertragungsleistung für einen bestimmten Kanal festlegen
otPlatRadioSetCoexEnabled(otInstance *aInstance, bool aEnabled)
Aktivieren Sie den Radiocoex.
otPlatRadioSetRegion(otInstance *aInstance, uint16_t aRegionCode)
Legen Sie den Regionscode fest.
otPlatRadioSleep(otInstance *aInstance)
Stelle das Radio von „Empfangen“ auf „Ruhemodus“ um (Schalte das Radio aus).
otPlatRadioTransmit(otInstance *aInstance, otRadioFrame *aFrame)
Starten Sie die Übertragungssequenz auf dem Radio.
otPlatRadioTxDone(otInstance *aInstance, otRadioFrame *aFrame, otRadioFrame *aAckFrame, otError aError)
void
Der Radiotreiber ruft diese Funktion auf, um OpenThread darüber zu informieren, dass der Übertragungsvorgang abgeschlossen ist. Dabei werden sowohl der übertragene Frame als auch der empfangene ACK-Frame angegeben.
otPlatRadioTxStarted(otInstance *aInstance, otRadioFrame *aFrame)
void
Der Radiotreiber ruft diese Methode auf, um OpenThread darüber zu informieren, dass die Übertragung gestartet wurde.
otPlatRadioUpdateCslSampleTime(otInstance *aInstance, uint32_t aCslSampleTime)
void
Aktualisieren Sie die CSL-Stichprobenzeit im Radiotreiber.

Funktionen

otPlatDiagRadioEmpfangen

void otPlatDiagRadioReceiveDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

Der Radiotreiber ruft diese Methode auf, um das OpenThread-Diagnosemodul über einen empfangenen Frame zu benachrichtigen.

Diese Funktion wird verwendet, wenn die Diagnose aktiviert ist.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aFrame
Ein Zeiger auf den empfangenen Frame oder NULL, wenn der Empfangsvorgang fehlgeschlagen ist.
[in] aError
OT_ERROR_NONE, wenn ein Frame erfolgreich empfangen wurde, OT_ERROR_ABORT, wenn der Empfang abgebrochen und ein Frame nicht empfangen wurde, OT_ERROR_NO_BUFS, wenn ein Frame nicht empfangen werden konnte, da nicht ausreichend Platz für die Roadblock-Anzeige vorhanden ist

OTPlatDiagRadioTransmitFertig

void otPlatDiagRadioTransmitDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

Der Radiotreiber ruft diese Methode auf, um das OpenThread-Diagnosemodul darüber zu informieren, dass die Übertragung abgeschlossen ist.

Diese Funktion wird verwendet, wenn die Diagnose aktiviert ist.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aFrame
Ein Zeiger auf den übertragenen Frame.
[in] aError
OT_ERROR_NONE, wenn der Frame übertragen wurde, OT_ERROR_CHANNEL_ACCESS_FAILURE tx konnte aufgrund von Aktivitäten auf dem Kanal nicht ausgeführt werden, OT_ERROR_ABORT, wenn die Übertragung aus anderen Gründen abgebrochen wurde.

otPlatRadioAddSrcMatchExtEntry

otError otPlatRadioAddSrcMatchExtEntry(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

Fügen Sie der Match-Table der Quelladresse eine erweiterte Adresse hinzu.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aExtAddress
Die erweiterte Adresse, die hinzugefügt werden soll, ist in Byte-Reihenfolge von Little-Endian gespeichert.
Rückgabewerte
OT_ERROR_NONE
Die erweiterte Adresse wurde der Match-Table für die Quelle hinzugefügt.
OT_ERROR_NO_BUFS
Kein Eintrag in der Match-Table für die Quelle verfügbar.

OTPlatRadioAddSrcMatchShortEntry

otError otPlatRadioAddSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

Fügen Sie der Match-Table der Quelladresse eine kurze Adresse hinzu.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aShortAddress
Die kurze Adresse, die hinzugefügt werden soll.
Rückgabewerte
OT_ERROR_NONE
Der Quell-Match-Table wurde eine kurze Adresse hinzugefügt.
OT_ERROR_NO_BUFS
Kein Eintrag in der Match-Table für die Quelle verfügbar.

otPlatRadioClearSrcMatchExtEntries

void otPlatRadioClearSrcMatchExtEntries(
  otInstance *aInstance
)

Löschen Sie alle erweiterten/langen Adressen aus der Match-Table für die Quelladresse.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.

otPlatRadioClearSrcMatchExtEntry

otError otPlatRadioClearSrcMatchExtEntry(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

Entfernen Sie eine erweiterte Adresse aus der Match-Table für die Quelladresse.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aExtAddress
Die zu entfernende erweiterte Adresse ist in Bytegröße in Little-Endian gespeichert.
Rückgabewerte
OT_ERROR_NONE
Die erweiterte Adresse wurde aus der Quell-Match-Table entfernt.
OT_ERROR_NO_ADDRESS
Die erweiterte Adresse ist nicht in der Match-Table für die Quelladresse enthalten.

otPlatRadioClearSrcMatchShortEntries

void otPlatRadioClearSrcMatchShortEntries(
  otInstance *aInstance
)

Löschen Sie alle Kurzadressen aus der Match-Table für die Quelladresse.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.

otPlatRadioClearSrcMatchShortEntry

otError otPlatRadioClearSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

Entfernen Sie eine kurze Adresse aus der Match-Table für die Quelladresse.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aShortAddress
Die kurze Adresse, die entfernt werden soll.
Rückgabewerte
OT_ERROR_NONE
Die Kurzadresse wurde aus der Quell-Match-Table entfernt.
OT_ERROR_NO_ADDRESS
Die Kurzadresse ist nicht in der Match-Table für die Quelladresse enthalten.

otPlatRadioConfigureEnhAckProbing

otError otPlatRadioConfigureEnhAckProbing(
  otInstance *aInstance,
  otLinkMetrics aLinkMetrics,
  otShortAddress aShortAddress,
  const otExtAddress *aExtAddress
)

Hiermit können Sie die Funktion „Erweiterte ACK-Prüfung“ im Radio für einen bestimmten Initiator aktivieren/deaktivieren oder aktualisieren.

Nachdem die erweiterte ACK-Prüfung von einem bestimmten Probing-Initiator konfiguriert wurde, sollte der an diesen Knoten gesendete erweiterte ACK den anbieterspezifischen IE mit Link-Messwert-Daten enthalten. Diese Methode weist das Radio an, die Linkmesswertdaten zu starten bzw. zu beenden und anbieterspezifische IE einzubeziehen, die die Daten in Enhanced-ACK an diesen potenziellen Initiator senden.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aLinkMetrics
Dieser Parameter gibt an, welche Messwerte abgefragt werden sollen. Gemäß Spezifikation 4.11.3.4.4.6 können maximal 2 Messwerte angegeben werden. Die Prüfung ist deaktiviert, wenn aLinkMetrics asynchron 0 ist.
[in] aShortAddress
Die kurze Adresse des Probing Initiators.
[in] aExtAddress
Die erweiterte Quelladresse des Probing Initiators. aExtAddr DARF NICHT NULL sein.
Rückgabewerte
OT_ERROR_NONE
Die erweiterte ACK-basierte Prüfung wurde konfiguriert.
OT_ERROR_INVALID_ARGS
aExtAddress liegt bei NULL.
OT_ERROR_NOT_FOUND
Der Initiator (aShortAddress) wurde beim Löschen nicht gefunden.
OT_ERROR_NO_BUFS
Ein Initiator wird nicht mehr unterstützt.

OTPlatRadioDeaktivieren

otError otPlatRadioDisable(
  otInstance *aInstance
)

Deaktiviere das Radio.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabewerte
OT_ERROR_NONE
Deaktiviert.
OT_ERROR_INVALID_STATE
Das Radio war nicht im Ruhemodus.

OTPlatRadioEnable

otError otPlatRadioEnable(
  otInstance *aInstance
)

Aktivieren Sie das Radio.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabewerte
OT_ERROR_NONE
Erfolgreich aktiviert.
OT_ERROR_FAILED
Das Radio konnte nicht aktiviert werden.

otPlatRadioEnableCsl

otError otPlatRadioEnableCsl(
  otInstance *aInstance,
  uint32_t aCslPeriod,
  otShortAddress aShortAddr,
  const otExtAddress *aExtAddr
)

CSL-Empfänger aktivieren oder deaktivieren.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aCslPeriod
CSL-Zeitraum, 0 zum Deaktivieren des CSL.
[in] aShortAddr
Die kurze Quelladresse des CSL-Peers.
[in] aExtAddr
Die erweiterte Quelladresse des CSL-Peers.
Rückgabewerte
kErrorNotImplemented
Der Radiotreiber unterstützt CSL nicht.
kErrorFailed
Andere plattformspezifische Fehler
kErrorNone
CSL wurde aktiviert oder deaktiviert.

otPlatRadioEnableSrcMatch

void otPlatRadioEnableSrcMatch(
  otInstance *aInstance,
  bool aEnable
)

Funktion zum Abgleich von Quelladressen aktivieren/deaktivieren.

Mit der Funktion für den Abgleich von Quelladressen wird gesteuert, wie die Radioebene den „Frame ausstehend“-Bit für Acks entscheidet, die als Antwort auf Datenanfragebefehle von untergeordneten Elementen gesendet werden.

Wenn die Option deaktiviert ist, muss die Funkschicht den "Frame ausstehend" für alle Befehle zum Senden von Datenanfragebefehlen festlegen.

Wenn diese Option aktiviert ist, verwendet die Radioebene die Match-Table der Quelladresse, um zu bestimmen, ob das Bit für den ausstehenden Frame eines Frames in einem Datenanfragebefehl festgelegt oder gelöscht werden soll.

Die Match-Table der Quelladresse enthält die Liste der untergeordneten Elemente, für die ein ausstehender Frame vorhanden ist. Der Abgleichstabelle der Quelladresse können entweder eine kurze Adresse oder eine erweiterte/lange Adresse hinzugefügt werden.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aEnable
Funktion zum Abgleich der Quelladresse aktivieren/deaktivieren.

OTPlatRadioEnergyScan

otError otPlatRadioEnergyScan(
  otInstance *aInstance,
  uint8_t aScanChannel,
  uint16_t aScanDuration
)

Starte den Ablauf des Energiescans im Radio.

Diese Funktion wird verwendet, wenn das Radio die OT_RADIO_CAPS_ENERGY_SCAN-Funktion bietet.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aScanChannel
Der Kanal, für den der Energiescan durchgeführt werden soll.
[in] aScanDuration
Die Dauer in Millisekunden, während der der Kanal gescannt wird
Rückgabewerte
OT_ERROR_NONE
Der Kanal wurde gescannt.
OT_ERROR_BUSY
Das Radio führt einen raffinierten Scan durch.
OT_ERROR_NOT_IMPLEMENTED
Das Radio unterstützt das Energiescannen.

OTPlatRadioEnergyScanFertig

void otPlatRadioEnergyScanDone(
  otInstance *aInstance,
  int8_t aEnergyScanMaxRssi
)

Der Radiotreiber ruft diese Methode auf, um OpenThread darüber zu informieren, dass der Energiescan abgeschlossen ist.

Diese Funktion wird verwendet, wenn das Radio die OT_RADIO_CAPS_ENERGY_SCAN-Funktion bietet.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aEnergyScanMaxRssi
Die maximale RSSI, die auf dem gescannten Kanal erkannt wurde.

OTPlatRadioGetCoexMetrics

otError otPlatRadioGetCoexMetrics(
  otInstance *aInstance,
  otRadioCoexMetrics *aCoexMetrics
)

Rufen Sie die Messwerte zur parallelen Verwendung von Radiosendern ab.

Diese Funktion wird verwendet, wenn die Funktion OPENAUDIENCE_CONFIG_PLATFORM_RADIO_COEX_ENABLE aktiviert ist.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[out] aCoexMetrics
Ein Verweis auf die Messwertstruktur der Koexistenz.
Rückgabewerte
OT_ERROR_NONE
Die Coex-Messwerte wurden abgerufen.
OT_ERROR_INVALID_ARGS
aCoexMetrics war NULL.

Logo: otPlatRadioGetCslAccuracy

uint8_t otPlatRadioGetCslAccuracy(
  otInstance *aInstance
)

Die aktuelle Genauigkeit der Uhr, die für die Planung von CSL-Vorgängen verwendet wird, in Einheiten von ± ppm

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabe
Die aktuelle CSL-XR/TX-Planungsabweichung in Einheiten von ± ppm.

otPlatRadioGetCslUnsicherheit

uint8_t otPlatRadioGetCslUncertainty(
  otInstance *aInstance
)

Die feste Unsicherheit des Geräts zur Planung von CSL-Übertragungen in Einheiten von 10 Mikrosekunden.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabe
Die CSL-Unsicherheit in Einheiten von 10 Einheiten.

OTPlatRadioGetPreferredKanalmaske

uint32_t otPlatRadioGetPreferredChannelMask(
  otInstance *aInstance
)

Ruft die Radiosender-Maske ab, auf der das Gerät bevorzugt erstellt werden soll.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabe
Die bevorzugte Radiosender-Maske.

OTPlatRadioGetRegion

otError otPlatRadioGetRegion(
  otInstance *aInstance,
  uint16_t *aRegionCode
)

Rufen Sie den Regionscode ab.

Das Radioregionenformat entspricht der 2-Byte-ASCII-Darstellung des ISO-3166-Alpha-2-Codes.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[out] aRegionCode
Die Radioregion.
Rückgabewerte
OT_ERROR_INVALID_ARGS
aRegionCode ist nullptr.
OT_ERROR_FAILED
Andere plattformspezifische Fehler
OT_ERROR_NONE
Regionscode abgerufen.

OTPlatRadioGetRssi

int8_t otPlatRadioGetRssi(
  otInstance *aInstance
)

Rufen Sie die neueste RSSI-Messung ab.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabe
Die RSSI in DBM, wenn sie gültig ist. 127, wenn RSSI ungültig ist.

OTPlatRadioGetState

otRadioState otPlatRadioGetState(
  otInstance *aInstance
)

Aktuellen Status des Radios abrufen.

Diese Funktion wird für OpenThread nicht benötigt. Es kann für die Fehlerbehebung und/oder anwendungsspezifische Zwecke verwendet werden.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabe
Aktueller Status des Radios.

OTPlatRadioGetSupportedChannelMask

uint32_t otPlatRadioGetSupportedChannelMask(
  otInstance *aInstance
)

Hiermit wird die Radiosender-Maske abgerufen, die auf dem Gerät aktiviert werden darf.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabe
Die vom Radio unterstützte Kanalmaske.

OTPlatRadioGetTransmitBuffer

otRadioFrame * otPlatRadioGetTransmitBuffer(
  otInstance *aInstance
)

Radio-Frame-Zwischenspeicher abrufen.

OpenThread bildet den IEEE 802.15.4-Frame in diesem Zwischenspeicher und ruft dann otPlatRadioTransmit() auf, um die Übertragung anzufordern.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabe
Ein Zeiger auf den Übertragungs-Frame-Zwischenspeicher.

OTPlatRadioIsCoexEnabled

bool otPlatRadioIsCoexEnabled(
  otInstance *aInstance
)

Prüfen Sie, ob Radiocoex aktiviert ist.

Diese Funktion wird verwendet, wenn die Funktion OPENAUDIENCE_CONFIG_PLATFORM_RADIO_COEX_ENABLE aktiviert ist.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabe
TRUE, wenn die Funkschnittstelle aktiviert ist, andernfalls FALSE.

OTPlatRadioIsEnabled

bool otPlatRadioIsEnabled(
  otInstance *aInstance
)

Prüfen Sie, ob das Radio aktiviert ist.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabe
TRUE, wenn das Radio aktiviert ist, andernfalls FALSE.

OTPlatRadioReceive

otError otPlatRadioReceive(
  otInstance *aInstance,
  uint8_t aChannel
)

Stelle das Radio von „Schlaf“ auf „Empfang“ um (Schalte das Radio ein).

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aChannel
Der Kanal, der für den Empfang verwendet werden soll.
Rückgabewerte
OT_ERROR_NONE
Auf „Empfangen“ umgestellt.
OT_ERROR_INVALID_STATE
Das Radio war deaktiviert oder wurde übertragen.

OtPlatRadioReceiveAt

otError otPlatRadioReceiveAt(
  otInstance *aInstance,
  uint8_t aChannel,
  uint32_t aStart,
  uint32_t aDuration
)

Sie können das Empfangsfenster für einen bestimmten Zeitpunkt und eine bestimmte Dauer festlegen.

Details
Parameter
[in] aChannel
Der Radiosender, über den die Nachricht empfangen werden soll.
[in] aStart
Die Startzeit des Empfangsfensters in Mikrosekunden.
[in] aDuration
Die Dauer des Empfangsfensters in Mikrosekunden
Rückgabewerte
OT_ERROR_NONE
Das Zeitfenster für den Empfang wurde geplant.
OT_ERROR_FAILED
Das Empfangsfenster konnte nicht geplant werden.

OTPlatRadioReceiveFertig

void otPlatRadioReceiveDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

Der Radiotreiber ruft diese Methode auf, um OpenThread über einen empfangenen Frame zu benachrichtigen.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aFrame
Ein Zeiger auf den empfangenen Frame oder NULL, wenn der Empfangsvorgang fehlgeschlagen ist.
[in] aError
OT_ERROR_NONE, wenn ein Frame erfolgreich empfangen wurde, OT_ERROR_ABORT, wenn der Empfang abgebrochen und ein Frame nicht empfangen wurde, OT_ERROR_NO_BUFS, wenn ein Frame nicht empfangen werden konnte, da nicht ausreichend Platz für die Roadblock-Anzeige vorhanden ist

OTPlatRadioSetChannelMaxTransmitPower

otError otPlatRadioSetChannelMaxTransmitPower(
  otInstance *aInstance,
  uint8_t aChannel,
  int8_t aMaxPower
)

Maximale Übertragungsleistung für einen bestimmten Kanal festlegen

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aChannel
Der Radiokanal.
[in] aMaxPower
Die maximale Leistung in DBM bei Übergabe von OT_RADIO_RSSI_INVALID deaktiviert diesen Kanal.
Rückgabewerte
OT_ERROR_NOT_IMPLEMENTED
Die Funktion ist nicht implementiert
OT_ERROR_INVALID_ARGS
Der angegebene Kanal ist ungültig.
OT_ERROR_FAILED
Andere plattformspezifische Fehler
OT_ERROR_NONE
Maximale Übertragungsleistung wurde festgelegt.

OTPlatRadioSetCoexEnabled

otError otPlatRadioSetCoexEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Aktivieren Sie den Radiocoex.

Diese Funktion wird verwendet, wenn die Funktion OPENAUDIENCE_CONFIG_PLATFORM_RADIO_COEX_ENABLE aktiviert ist.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aEnabled
TRUE, um die Funkschnittstelle zu aktivieren, andernfalls FALSE.
Rückgabewerte
OT_ERROR_NONE
Erfolgreich aktiviert.
OT_ERROR_FAILED
Der Radiocoex konnte nicht aktiviert werden.

OTPlatRadioSetRegion

otError otPlatRadioSetRegion(
  otInstance *aInstance,
  uint16_t aRegionCode
)

Legen Sie den Regionscode fest.

Das Radioregionenformat entspricht der 2-Byte-ASCII-Darstellung des ISO-3166-Alpha-2-Codes.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aRegionCode
Die Radioregion.
Rückgabewerte
OT_ERROR_FAILED
Andere plattformspezifische Fehler
OT_ERROR_NONE
Der Regionscode wurde festgelegt.

OTPlatRadioSchlaf

otError otPlatRadioSleep(
  otInstance *aInstance
)

Stelle das Radio von „Empfangen“ auf „Ruhemodus“ um (Schalte das Radio aus).

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabewerte
OT_ERROR_NONE
Wechsel in den Ruhemodus abgeschlossen.
OT_ERROR_BUSY
Das Funkgerät wurde übertragen.
OT_ERROR_INVALID_STATE
Das Radio war deaktiviert.

Logo: otPlatRadioTransmit

otError otPlatRadioTransmit(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

Starten Sie die Übertragungssequenz auf dem Radio.

Der Aufrufer muss den IEEE 802.15.4-Frame im Zwischenspeicher bilden, der von otPlatRadioGetTransmitBuffer() bereitgestellt wird, bevor die Übertragung angefordert wird. Der Kanal und die Übertragungsleistung sind auch in der otRadioFrame-Struktur enthalten.

Die Übertragungssequenz besteht aus:

  1. Übertragung des Radios auf „Senden“ aus einem der folgenden Status:
    • Empfangen, wenn RX eingeschaltet ist, wenn das Gerät inaktiv ist, oder OT_RADIO_CAPS_SLEEP_TO_TX nicht unterstützt wird
    • Im Ruhezustand ist RX ausgeschaltet, wenn das Gerät inaktiv ist und OT_RADIO_CAPS_SLEEP_TO_TX unterstützt wird.
  2. Sendet die PSdu auf dem angegebenen Kanal und mit der angegebenen Übertragungsleistung.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aFrame
Ein Zeiger auf den zu übertragenden Frame.
Rückgabewerte
OT_ERROR_NONE
Es wurde auf „Senden“ umgestellt.
OT_ERROR_INVALID_STATE
Das Radio hatte nicht den Empfangsstatus.

OTPlatRadioTxFertig

void otPlatRadioTxDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otRadioFrame *aAckFrame,
  otError aError
)

Der Radiotreiber ruft diese Funktion auf, um OpenThread darüber zu informieren, dass der Übertragungsvorgang abgeschlossen ist. Dabei werden sowohl der übertragene Frame als auch der empfangene ACK-Frame angegeben.

Wenn die Funkfunktion OT_RADIO_CAPS_TRANSMIT_SEC bietet, aktualisiert die Funkplattformebene aFrame vom Sicherheits-Frame-Zähler und den vom Index beibehaltenen Schlüsselindexwerten.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aFrame
Ein Zeiger auf den übertragenen Frame.
[in] aAckFrame
Ein Zeiger auf den ACK-Frame, NULL, wenn kein ACK empfangen wurde.
[in] aError
OT_ERROR_NONE, wenn der Frame übertragen wurde, OT_ERROR_NO_ACK, wenn der Frame übertragen wurde, aber ACK nicht empfangen wurde, OT_ERROR_CHANNEL_ACCESS_FAILURE tx konnte aufgrund von Aktivitäten auf dem Kanal nicht ausgeführt werden, OT_ERROR_ABORT, wenn die Übertragung aus anderen Gründen abgebrochen wurde.

OTPlatRadioTxGestartet

void otPlatRadioTxStarted(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

Der Radiotreiber ruft diese Methode auf, um OpenThread darüber zu informieren, dass die Übertragung gestartet wurde.

Details
Parameter
[in] aInstance
Ein Verweis auf die OpenThread-Instanzstruktur.
[in] aFrame
Ein Zeiger auf den Frame, der übertragen wird.

otPlatRadioUpdateCslSampleTime

void otPlatRadioUpdateCslSampleTime(
  otInstance *aInstance,
  uint32_t aCslSampleTime
)

Aktualisieren Sie die CSL-Stichprobenzeit im Radiotreiber.

Die Stichprobenzeit wird im Radiotreiber als Kopie gespeichert, um die Phase beim Senden der Bestätigung über CSL IE zu berechnen.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aCslSampleTime
Die letzte Lesezeit.

Ressourcen

Die Themen der OpenThread API stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen oder Informationen, die Sie zu unserer Dokumentation beitragen können, finden Sie unter Ressourcen.