Co-Processor Jaringan

Modul ini mencakup fungsi yang mengontrol eksekusi stack Thread.

Ringkasan

Typedef

otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount) typedef
bool(*
Menentukan jenis delegasi (pointer fungsi) untuk mengontrol perilaku operasi intip/poke.
otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength) typedef
int(*
Pointer dipanggil untuk mengirim data NCP yang dienkode HDLC.

Fungsi

otNcpHdlcInit(otInstance *aInstance, otNcpHdlcSendCallback aSendCallback)
void
Melakukan inisialisasi NCP berdasarkan framing HDLC.
otNcpHdlcInitMulti(otInstance **aInstance, uint8_t aCount, otNcpHdlcSendCallback aSendCallback)
void
Melakukan inisialisasi NCP berdasarkan framing HDLC.
otNcpHdlcReceive(const uint8_t *aBuf, uint16_t aBufLength)
void
Dipanggil setelah data NCP yang dienkode HDLC diterima.
otNcpHdlcSendDone(void)
void
Dipanggil setelah pengiriman NCP selesai.
otNcpPlatLogv(otLogLevel aLogLevel, otLogRegion aLogRegion, const char *aFormat, va_list aArgs)
void
Menulis Log OpenThread menggunakan otNcpStreamWrite.
otNcpRegisterPeekPokeDelegates(otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
Mendaftarkan fungsi delegasi intip/poke dengan modul NCP.
otNcpSpiInit(otInstance *aInstance)
void
Melakukan inisialisasi NCP berdasarkan framing SPI.
otNcpStreamWrite(int aStreamId, const uint8_t *aDataPtr, int aDataLen)
Mengirim data ke host melalui aliran data tertentu.

Typedef

otNcpDelegateAllowPeekPoke

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

Menentukan jenis delegasi (pointer fungsi) untuk mengontrol perilaku operasi intip/poke.

Fungsi delegasi ini dipanggil untuk memutuskan apakah akan mengizinkan intip atau poke pada region memori tertentu. Digunakan jika dukungan NCP untuk perintah mengintip/poke diaktifkan.

Detail
Parameter
[in] aAddress
Alamat awal region memori.
[in] aCount
Jumlah byte untuk mengintip atau mencolok.
Hasil
TRUE untuk mengizinkan mengintip/poke area memori yang ditentukan, FALSE jika tidak.

otNcpHdlcSendCallback

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

Pointer dipanggil untuk mengirim data NCP yang dienkode HDLC.

Detail
Parameter
[in] aBuf
Pointer ke buffer dengan output.
[in] aBufLength
Panjang data output yang disimpan di buffer.
Hasil
Jumlah byte yang diproses oleh callback.

Fungsi

otNcpHdlcInit

void otNcpHdlcInit(
  otInstance *aInstance,
  otNcpHdlcSendCallback aSendCallback
)

Melakukan inisialisasi NCP berdasarkan framing HDLC.

Detail
Parameter
[in] aInstance
Struktur instance OpenThread.
[in] aSendCallback
Pointer fungsi yang digunakan untuk mengirim data NCP.

otNcpHdlcInitMulti

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

Melakukan inisialisasi NCP berdasarkan framing HDLC.

Detail
Parameter
[in] aInstances
Array pointer instance OpenThread.
[in] aCount
Jumlah elemen dalam array.
[in] aSendCallback
Pointer fungsi yang digunakan untuk mengirim data NCP.

otNcpHdlcReceive

void otNcpHdlcReceive(
  const uint8_t *aBuf,
  uint16_t aBufLength
)

Dipanggil setelah data NCP yang dienkode HDLC diterima.

Detail
Parameter
[in] aBuf
Pointer ke buffer.
[in] aBufLength
Panjang data yang disimpan dalam buffer.

otNcpHdlcSendDone

void otNcpHdlcSendDone(
  void
)

Dipanggil setelah pengiriman NCP selesai.

otNcpPlatLogv

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

Menulis Log OpenThread menggunakan otNcpStreamWrite.

Detail
Parameter
[in] aLogLevel
Level log.
[in] aLogRegion
Region log.
[in] aFormat
Pointer ke string format.
[in] aArgs
{i>va_list<i} yang cocok dengan aFormat.

otNcpRegisterPeekPokeDelegates

void otNcpRegisterPeekPokeDelegates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

Mendaftarkan fungsi delegasi intip/poke dengan modul NCP.

Fungsi delegasi dipanggil oleh modul NCP untuk menentukan apakah akan mengizinkan intip atau poke pada region memori tertentu. Jika pointer delegasi ditetapkan ke NULL, hal ini memungkinkan operasi mengintip/poke untuk alamat apa pun.

Detail
Parameter
[in] aAllowPeekDelegate
Mendelegasikan pointer fungsi untuk operasi intip.
[in] aAllowPokeDelegate
Mendelegasikan pointer fungsi untuk operasi poke.

otNcpSpiInit

void otNcpSpiInit(
  otInstance *aInstance
)

Melakukan inisialisasi NCP berdasarkan framing SPI.

Detail
Parameter
[in] aInstance
Struktur instance OpenThread.

otNcpStreamWrite

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

Mengirim data ke host melalui aliran data tertentu.

Mencoba mengirim data yang diberikan ke host menggunakan aStreamId yang diberikan. Hal ini berguna untuk melaporkan pesan error, menerapkan konsol debug/diagnostik, dan kemungkinan jenis aliran data lainnya.

Tulisan tersebut diterima secara keseluruhan atau ditolak. Penulisan parsial tidak dicoba.

Detail
Parameter
[in] aStreamId
ID numerik yang menjadi tujuan penulisan streaming. Jika disetel ke '0', streaming debug akan disetel secara default.
[in] aDataPtr
Pointer ke data yang akan dikirim di aliran data. Jika aDataLen bukan nol, parameter ini HARUS TIDAK NULL.
[in] aDataLen
Jumlah byte data dari aDataPtr yang akan dikirim.
Nilai Pengembalian
OT_ERROR_NONE
Data dimasukkan ke dalam antrean untuk dikirim ke host.
OT_ERROR_BUSY
Sumber daya tidak cukup untuk menyelesaikan permintaan ini. Hal ini biasanya bersifat sementara.
OT_ERROR_INVALID_ARGS
aStreamId yang diberikan tidak valid.

Referensi

Topik Referensi OpenThread API berasal dari kode sumber yang tersedia di GitHub. Untuk informasi selengkapnya, atau untuk berkontribusi pada dokumentasi kami, lihat Referensi.