Jam Algılama

Bu modül, sinyal sıkışma algılama özelliğine ilişkin işlevleri içerir.

Özet

Bu modüldeki işlevler, Jam algılama özelliği (OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE) etkinleştirildiğinde kullanılabilir.

Typedefs

otJamDetectionCallback)(bool aJamState, void *aContext) Typedef
void(*
Sinyal sıkışması algılama etkinse ve bir jam tespit edilirse işaretçi çağrılır.

İşlevler

otJamDetectionGetBusyPeriod(otInstance *aInstance)
uint8_t
Jam Algılama Yoğunluk Süresini (saniye cinsinden) alın
otJamDetectionGetHistoryBitmap(otInstance *aInstance)
uint64_t
Mevcut geçmiş bit eşlemini alın.
otJamDetectionGetRssiThreshold(otInstance *aInstance)
int8_t
Jam Algılama RSSI Eşiği'ni (dBm olarak) alın.
otJamDetectionGetState(otInstance *aInstance)
bool
Jam Algılama Durumu'nu öğrenin.
otJamDetectionGetWindow(otInstance *aInstance)
uint8_t
Jam Algılama Penceresi'ni (saniye cinsinden) edinin.
otJamDetectionIsEnabled(otInstance *aInstance)
bool
Jam Algılama Durumunu Alma (etkin/devre dışı)
otJamDetectionSetBusyPeriod(otInstance *aInstance, uint8_t aBusyPeriod)
Jam Algılama Hareketli Dönemi'ni (saniye cinsinden) ayarlayın.
otJamDetectionSetRssiThreshold(otInstance *aInstance, int8_t aRssiThreshold)
Jam Algılama RSSI Eşiği'ni (dBm olarak) ayarlayın.
otJamDetectionSetWindow(otInstance *aInstance, uint8_t aWindow)
Jam Algılama Algılama Penceresi'ni (saniye cinsinden) ayarlayın.
otJamDetectionStart(otInstance *aInstance, otJamDetectionCallback aCallback, void *aContext)
Sıkışma algılamayı başlatın.
otJamDetectionStop(otInstance *aInstance)
Sıkışma algılamayı durdurun.

Typedefs

otJamDetection Geri Arama

void(* otJamDetectionCallback)(bool aJamState, void *aContext)

Sinyal sıkışması algılama etkinse ve bir jam tespit edilirse işaretçi çağrılır.

Ayrıntılar
Parametreler
[in] aJamState
Mevcut jam durumu (jam'in algılanması durumunda true, aksi takdirde false).
[in] aContext
Uygulamaya özel bağlama işaretçisi.

İşlevler

otJamDetectionGetBusyPeriod

uint8_t otJamDetectionGetBusyPeriod(
  otInstance *aInstance
)

Jam Algılama Yoğunluk Süresini (saniye cinsinden) alın

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
İadeler
Jam Algılama Hareketli Dönemi.

otJamDetectionGetHistoryBitmap

uint64_t otJamDetectionGetHistoryBitmap(
  otInstance *aInstance
)

Mevcut geçmiş bit eşlemini alın.

Bu değer, izleme/hata ayıklama için jam sıkışma algılama modülünün mevcut durumu hakkında bilgi sağlar. Her bir bitin, en son aralık için bit 0 ve en eski aralıklar (63 saniye önce) için 63 ile başlayan bir saniyelik aralığa karşılık geldiği bir 64 bit değeri döndürür. Sıkıştırma algılama modülü, ilgili bir saniyelik zaman aralığı boyunca yüksek sinyal düzeyini gözlemlediyse/algıladıysa bit 1 olarak ayarlanır.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
İadeler
Mevcut geçmiş bit eşlemi.

otJamDetectionGetRssiThreshold

int8_t otJamDetectionGetRssiThreshold(
  otInstance *aInstance
)

Jam Algılama RSSI Eşiği'ni (dBm olarak) alın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
İadeler
Jam Algılama RSSI Eşiği.

otJamDetectionGetState

bool otJamDetectionGetState(
  otInstance *aInstance
)

Jam Algılama Durumu'nu öğrenin.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
İadeler
Jam Algılama durumu (true jam tespit edildi, aksi takdirde "false").

otJamDetection AlmaPenceresi

uint8_t otJamDetectionGetWindow(
  otInstance *aInstance
)

Jam Algılama Penceresi'ni (saniye cinsinden) edinin.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
İadeler
Jam Algılama Penceresi.

otJamDetectionIsEtkin

bool otJamDetectionIsEnabled(
  otInstance *aInstance
)

Jam Algılama Durumunu Alma (etkin/devre dışı)

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
İadeler
Jam Algılama durumu (etkinleştirilirse doğru, aksi takdirde yanlış).

otJamDetectionSetBusyPeriod

otError otJamDetectionSetBusyPeriod(
  otInstance *aInstance,
  uint8_t aBusyPeriod
)

Jam Algılama Hareketli Dönemi'ni (saniye cinsinden) ayarlayın.

Algılama penceresinde tetikleme işleminin RSSI eşiğinin üzerinde olması gereken toplam saniye sayısı.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aBusyPeriod
Jam Algılama yoğun dönem (sıfır olmamalıdır ve Jam Algılama Aralığı'ndan küçük veya ona eşit olmalıdır)
Döndürülen Değerler
OT_ERROR_NONE
Pencere başarıyla ayarlandı.
OT_ERROR_INVALID_ARGS
Girilen değer geçerli aralıkta değil.

otJamDetectionSetRssiThreshold

otError otJamDetectionSetRssiThreshold(
  otInstance *aInstance,
  int8_t aRssiThreshold
)

Jam Algılama RSSI Eşiği'ni (dBm olarak) ayarlayın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aRssiThreshold
RSSI eşiği.
Döndürülen Değerler
OT_ERROR_NONE
Eşik başarıyla belirlendi.

otJamDetectionSetPenceresi

otError otJamDetectionSetWindow(
  otInstance *aInstance,
  uint8_t aWindow
)

Jam Algılama Algılama Penceresi'ni (saniye cinsinden) ayarlayın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aWindow
Jam algılama aralığı (geçerli aralık 1-63 arasındadır)
Döndürülen Değerler
OT_ERROR_NONE
Pencere başarıyla ayarlandı.
OT_ERROR_INVALID_ARGS
Belirtilen giriş parametresi geçerli bir aralıkta (1-63) değil

otJamDetectionStart

otError otJamDetectionStart(
  otInstance *aInstance,
  otJamDetectionCallback aCallback,
  void *aContext
)

Sıkışma algılamayı başlatın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
[in] aCallback
Çalışma durumu değişikliğinin bildirilmesi için çağrılan bir işlevin işaretçisi.
[in] aContext
Uygulamaya özel bağlama işaretçisi.
Döndürülen Değerler
OT_ERROR_NONE
Sıkıştırma algılama başarıyla başlatıldı.
OT_ERROR_ALREADY
Jam algılama işlemi daha önce başlatıldı.

otJamDetectionStop

otError otJamDetectionStop(
  otInstance *aInstance
)

Sıkışma algılamayı durdurun.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğini işaret eder.
Döndürülen Değerler
OT_ERROR_NONE
Sıkıştırma algılama başarıyla durduruldu.
OT_ERROR_ALREADY
Jam algılama işlemi zaten durduruldu.

Kaynaklar

OpenThread API Referans konuları, GitHub'da bulunan kaynak koddan gelir. Daha fazla bilgi edinmek veya dokümanlarımıza katkıda bulunmak için Kaynaklar sayfasına göz atın.