Konfiguracja radia
Ten moduł zawiera abstrakcję platformy na potrzeby konfiguracji radiowej.
Podsumowanie
Funkcje |
|
---|---|
otPlatRadioGetBusSpeed(otInstance *aInstance)
|
uint32_t
Przesyłaj prędkość magistrali między hostem a układem radiowym (w bitach/sekundę).
|
otPlatRadioGetCaps(otInstance *aInstance)
|
Korzystaj z funkcji radia.
|
otPlatRadioGetCcaEnergyDetectThreshold(otInstance *aInstance, int8_t *aThreshold)
|
Uzyskaj wartość progową CCA ED radia w dBm mierzoną na złączu anteny zgodnie ze standardem IEEE 802.15.4–2015, sekcja 10.1.4.
|
otPlatRadioGetFemLnaGain(otInstance *aInstance, int8_t *aGain)
|
Pobiera wzmocnienie LNA zewnętrznego urządzenia FEM w dBm.
|
otPlatRadioGetIeeeEui64(otInstance *aInstance, uint8_t *aIeeeEui64)
|
void
Pobiera przypisany fabrycznie IEEE EUI-64 dla tego interfejsu.
|
otPlatRadioGetNow(otInstance *aInstance)
|
uint64_t
Pobierz bieżący czas w mikrosekundach, przywołany ciągłym monotonicznym lokalnym zegarem radiowym (o szerokości 64 bitów).
|
otPlatRadioGetPromiscuous(otInstance *aInstance)
|
bool
sprawdzać stan trybu nasłuchiwania,
|
otPlatRadioGetReceiveSensitivity(otInstance *aInstance)
|
int8_t
Uzyskuj wartość czułości odbiornika radiowego.
|
otPlatRadioGetTransmitPower(otInstance *aInstance, int8_t *aPower)
|
Moc nadawania radiowej jest podawana w dBm.
|
otPlatRadioGetVersionString(otInstance *aInstance)
|
const char *
Pobieranie ciągu wersji radiowej.
|
otPlatRadioSetCcaEnergyDetectThreshold(otInstance *aInstance, int8_t aThreshold)
|
Ustaw próg CCA ED stacji radiowej w dBm mierzony na złączu anteny zgodnie ze standardem IEEE 802.15.4–2015, sekcja 10.1.4.
|
otPlatRadioSetExtendedAddress(otInstance *aInstance, const otExtAddress *aExtAddress)
|
void
Ustaw Rozszerzony adres na potrzeby filtrowania adresów.
|
otPlatRadioSetFemLnaGain(otInstance *aInstance, int8_t aGain)
|
Ustawia wzmocnienie Rx LNA zewnętrznego urządzenia FEM w dBm.
|
otPlatRadioSetMacFrameCounter(otInstance *aInstance, uint32_t aMacFrameCounter)
|
void
Ustawia bieżącą wartość licznika klatek MAC.
|
otPlatRadioSetMacFrameCounterIfLarger(otInstance *aInstance, uint32_t aMacFrameCounter)
|
void
Ustawia bieżącą wartość licznika klatek MAC tylko wtedy, gdy nowa podana wartość jest większa niż bieżąca.
|
otPlatRadioSetMacKey(otInstance *aInstance, uint8_t aKeyIdMode, uint8_t aKeyId, const otMacKeyMaterial *aPrevKey, const otMacKeyMaterial *aCurrKey, const otMacKeyMaterial *aNextKey, otRadioKeyType aKeyType)
|
void
Zaktualizuj klucze MAC i indeks kluczy.
|
otPlatRadioSetPanId(otInstance *aInstance, otPanId aPanId)
|
void
Ustaw identyfikator PAN na potrzeby filtrowania adresów.
|
otPlatRadioSetPromiscuous(otInstance *aInstance, bool aEnable)
|
void
Włącz lub wyłącz tryb nasłuchiwania.
|
otPlatRadioSetRxOnWhenIdle(otInstance *aInstance, bool aEnable)
|
void
Ustawia platformę radiową jako stan rx-on-when-brak.
|
otPlatRadioSetShortAddress(otInstance *aInstance, otShortAddress aShortAddress)
|
void
Ustaw krótki adres na potrzeby filtrowania adresów.
|
otPlatRadioSetTransmitPower(otInstance *aInstance, int8_t aPower)
|
Ustaw moc nadawania radiowej w dBm.
|
Funkcje
otPlatRadioGetBusSpeed
uint32_t otPlatRadioGetBusSpeed( otInstance *aInstance )
Przesyłaj prędkość magistrali między hostem a układem radiowym (w bitach/sekundę).
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Prędkość magistrali między hostem a układem radiowym (w bitach na sekundę). Zwraca wartość 0, gdy warstwa MAC i wyższa oraz warstwa Radio są w tym samym układzie scalonym.
|
otPlatRadioGetCaps
otRadioCaps otPlatRadioGetCaps( otInstance *aInstance )
Korzystaj z funkcji radia.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Wektor bitowy możliwości radiowych (patrz:
OT_RADIO_CAP_* definicje). |
otPlatRadioGetCcaEnergyDetectThreshold
otError otPlatRadioGetCcaEnergyDetectThreshold( otInstance *aInstance, int8_t *aThreshold )
Uzyskaj wartość progową CCA ED radia w dBm mierzoną na złączu anteny zgodnie ze standardem IEEE 802.15.4–2015, sekcja 10.1.4.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
otPlatRadioGetFemLnaGain
otError otPlatRadioGetFemLnaGain( otInstance *aInstance, int8_t *aGain )
Pobiera wzmocnienie LNA zewnętrznego urządzenia FEM w dBm.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
otPlatRadioGetIeeeEui64
void otPlatRadioGetIeeeEui64( otInstance *aInstance, uint8_t *aIeeeEui64 )
Pobiera przypisany fabrycznie IEEE EUI-64 dla tego interfejsu.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
otPlatRadioGetNow
uint64_t otPlatRadioGetNow( otInstance *aInstance )
Pobierz bieżący czas w mikrosekundach, przywołany ciągłym monotonicznym lokalnym zegarem radiowym (o szerokości 64 bitów).
Zegar radiowy NIE ZAwija się w trakcie działania urządzenia. Implementacje MUSZĄ więc identyfikować i kompensować wewnętrzne przepełnienia licznika. Zegar nie ma określonej epoki i NIE POWODUJE żadnych ciągłych ani nieciągłych korekt (np. sekund przestępnych). Implementacje MUSZĄ kompensować czas uśpienia urządzenia.
Implementacje MOGĄ regulować zegar radiowy i w jakikolwiek sposób kompensować czas snu (np. łącząc RTC o wysokiej precyzji i małej mocy z licznikiem o wysokiej rozdzielczości), pod warunkiem że prezentowany zegar łączony zapewnia ciągłą monotoniczną rozdzielczość w mikrosekundach zgodnie z limitami dokładności podanymi przez otPlatRadioGetCslAccuracy.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Bieżący czas w mikrosekundach. UINT64_MAX, gdy platforma nie obsługuje lub czas radiowy nie jest gotowy.
|
otPlatRadioGetPromiscuous
bool otPlatRadioGetPromiscuous( otInstance *aInstance )
sprawdzać stan trybu nasłuchiwania,
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
otPlatRadioGetReceiveSensitivity
int8_t otPlatRadioGetReceiveSensitivity( otInstance *aInstance )
Uzyskuj wartość czułości odbiornika radiowego.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Wartość czułości odbioru radiowego w dBm.
|
otPlatRadioGetTransmitPower
otError otPlatRadioGetTransmitPower( otInstance *aInstance, int8_t *aPower )
Moc nadawania radiowej jest podawana w dBm.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
otPlatRadioGetVersionString
const char * otPlatRadioGetVersionString( otInstance *aInstance )
Pobieranie ciągu wersji radiowej.
Jest to opcjonalna funkcja platformy radiowej sterownika. Jeśli nie jest dostępny przez sterownik radiowy platformy, OpenThread używa wersji OpenThread (
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Wskaźnik wersji radiowej OpenThread.
|
otGetVersionString()).
otPlatRadioSetCcaEnergyDetectThreshold
otError otPlatRadioSetCcaEnergyDetectThreshold( otInstance *aInstance, int8_t aThreshold )
Ustaw próg CCA ED stacji radiowej w dBm mierzony na złączu anteny zgodnie ze standardem IEEE 802.15.4–2015, sekcja 10.1.4.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
otPlatRadioSetExtendedAddress
void otPlatRadioSetExtendedAddress( otInstance *aInstance, const otExtAddress *aExtAddress )
Ustaw Rozszerzony adres na potrzeby filtrowania adresów.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
otPlatRadioSetFemLnaGain
otError otPlatRadioSetFemLnaGain( otInstance *aInstance, int8_t aGain )
Ustawia wzmocnienie Rx LNA zewnętrznego urządzenia FEM w dBm.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
otPlatRadioSetMacFrameCounter
void otPlatRadioSetMacFrameCounter( otInstance *aInstance, uint32_t aMacFrameCounter )
Ustawia bieżącą wartość licznika klatek MAC.
Jest używane, gdy radio zapewnia obsługę OT_RADIO_CAPS_TRANSMIT_SEC
.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
otPlatRadioSetMacFrameCounterIfLarger
void otPlatRadioSetMacFrameCounterIfLarger( otInstance *aInstance, uint32_t aMacFrameCounter )
Ustawia bieżącą wartość licznika klatek MAC tylko wtedy, gdy nowa podana wartość jest większa niż bieżąca.
Jest używane, gdy radio zapewnia obsługę OT_RADIO_CAPS_TRANSMIT_SEC
.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
otPlatRadioSetMacKey
void otPlatRadioSetMacKey( otInstance *aInstance, uint8_t aKeyIdMode, uint8_t aKeyId, const otMacKeyMaterial *aPrevKey, const otMacKeyMaterial *aCurrKey, const otMacKeyMaterial *aNextKey, otRadioKeyType aKeyType )
Zaktualizuj klucze MAC i indeks kluczy.
Jest używany, gdy radio zapewnia możliwość OT_RADIO_CAPS_TRANSMIT_SEC.
Szczegóły | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
otPlatRadioSetPanId
void otPlatRadioSetPanId( otInstance *aInstance, otPanId aPanId )
Ustaw identyfikator PAN na potrzeby filtrowania adresów.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
otPlatRadioSetPromiscuous
void otPlatRadioSetPromiscuous( otInstance *aInstance, bool aEnable )
Włącz lub wyłącz tryb nasłuchiwania.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
otPlatRadioSetRxOnWhenIdle
void otPlatRadioSetRxOnWhenIdle( otInstance *aInstance, bool aEnable )
Ustawia platformę radiową jako stan rx-on-when-brak.
Jest kilka sytuacji, w których radio może przejść w stan uśpienia, jeśli urządzenie jest w trybie rx-off, gdy jest nieaktywne, ale subMac jest trudny i kosztowny do rozpoznania takich sytuacji i instruowania radia w celu przejścia w tryb uśpienia:
- Finalizowanie zwykłego zadania rejestracji klatek, o ile:
- Ramka jest odebrana bez błędów i przechodzi filtrowanie. Nie jest to fałszywe potwierdzenie.
- Nie zażądano potwierdzenia lub przesłanie potwierdzenia nie jest możliwe z powodu warunków wewnętrznych.
- Finalizowanie transmisji klatki lub transmisji ramki potwierdzenia, gdy w przesyłanej ramce nie jest wymagane potwierdzenie.
- Sfinalizowanie operacji odbioru żądanego potwierdzenia z następujących powodów:
- Upłynął limit czasu potwierdzenia.
- Otrzymanie nieprawidłowej ramki potwierdzenia lub niepełnej ramki potwierdzenia.
- Odbiór prawidłowego potwierdzenia, chyba że przesyłana ramka była poleceniem żądania danych, a bit oczekującej ramki w odebranym potwierdzeniu ma wartość Prawda. W takim przypadku implementacja platformy radiowej POWINNO utrzymywać odbiornik do czasu, gdy upłynie czas oczekiwania, który aktywuje rozpoczęcie okresu bezczynności.Możesz też uznać, że
OPENTHREAD_CONFIG_MAC_DATA_POLL_TIMEOUT
jest w tym przypadku włączony.
- Finalizowanie samodzielnego zadania CCA.
- Finalizowanie operacji CCA z zajętym wynikiem podczas procedury CSMA/CA.
- Finalizowanie zadania wykrywania energii.
- Finalizowanie okna odbioru radiowego zaplanowanego na
otPlatRadioReceiveAt
.
Jeśli platforma obsługuje OT_RADIO_CAPS_RX_ON_WHEN_IDLE
, musi też obsługiwać OT_RADIO_CAPS_CSMA_BACKOFF
i obsługiwać okresy bezczynności po CCA w sposób opisany powyżej.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
otPlatRadioSetShortAddress
void otPlatRadioSetShortAddress( otInstance *aInstance, otShortAddress aShortAddress )
Ustaw krótki adres na potrzeby filtrowania adresów.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
otPlatRadioSetTransmitPower
otError otPlatRadioSetTransmitPower( otInstance *aInstance, int8_t aPower )
Ustaw moc nadawania radiowej w dBm.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
Zasoby
Tematy referencyjne interfejsu OpenThread API pochodzą z kodu źródłowego dostępnego w GitHub. Aby dowiedzieć się więcej lub dołączyć do naszej dokumentacji, skorzystaj z sekcji Zasoby.