ผู้ประมวลผลเครือข่าย

โมดูลนี้มีฟังก์ชันที่ควบคุมการดำเนินการของสแต็กเทรด

สรุป

Typedef

otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount) typedef
bool(*
กำหนดประเภทผู้รับมอบสิทธิ์ (ตัวชี้ฟังก์ชัน) เพื่อควบคุมพฤติกรรมของการดำเนินการแอบดู/เพ็ก
otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength) typedef
int(*
จะมีการเรียกตัวชี้ให้ส่งข้อมูล NCP ที่เข้ารหัส HDLC

ฟังก์ชัน

otNcpHdlcInit(otInstance *aInstance, otNcpHdlcSendCallback aSendCallback)
void
เริ่มต้น NCP โดยอิงตามการจัดเฟรม HDLC
otNcpHdlcInitMulti(otInstance **aInstance, uint8_t aCount, otNcpHdlcSendCallback aSendCallback)
void
เริ่มต้น NCP โดยอิงตามการจัดเฟรม HDLC
otNcpHdlcReceive(const uint8_t *aBuf, uint16_t aBufLength)
void
ถูกเรียกหลังจากได้รับข้อมูล NCP ที่เข้ารหัส HDLC
otNcpHdlcSendDone(void)
void
ถูกเรียกหลังจากที่ส่ง NCP เสร็จ
otNcpPlatLogv(otLogLevel aLogLevel, otLogRegion aLogRegion, const char *aFormat, va_list aArgs)
void
เขียนบันทึก OpenThread โดยใช้ otNcpStreamWrite
otNcpRegisterPeekPokeDelegates(otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
ลงทะเบียนฟังก์ชัน peek/poke มอบสิทธิ์ด้วยโมดูล NCP
otNcpSpiInit(otInstance *aInstance)
void
เริ่มต้น NCP ตามเฟรม SPI
otNcpStreamWrite(int aStreamId, const uint8_t *aDataPtr, int aDataLen)
ส่งข้อมูลไปยังโฮสต์ผ่านสตรีมที่ระบุ

Typedef

otNcpDelegateAllowPeekPoke

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

กำหนดประเภทผู้รับมอบสิทธิ์ (ตัวชี้ฟังก์ชัน) เพื่อควบคุมพฤติกรรมของการดำเนินการแอบดู/เพ็ก

เราจะเรียกใช้ฟังก์ชันการมอบสิทธิ์นี้เพื่อตัดสินใจว่าจะอนุญาตการแอบดูหรือโผล่ขึ้นมาบริเวณหน่วยความจําหนึ่งๆ หรือไม่ ซึ่งจะใช้เมื่อเปิดใช้การรองรับ NCP สำหรับคำสั่ง peek/poke

รายละเอียด
พารามิเตอร์
[in] aAddress
ที่อยู่เริ่มต้นของภูมิภาคหน่วยความจำ
[in] aCount
จำนวนไบต์ที่จะแอบหรือโผล่ขึ้นมา
การส่งคืน
"TRUE" เพื่ออนุญาตการดูตัวอย่าง/แสดงของพื้นที่หน่วยความจำที่ระบุ "FALSE" หากไม่เป็นเช่นนั้น

otNcpHdlcSendCallback

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

จะมีการเรียกตัวชี้ให้ส่งข้อมูล NCP ที่เข้ารหัส HDLC

รายละเอียด
พารามิเตอร์
[in] aBuf
ตัวชี้ไปยังบัฟเฟอร์ที่มีเอาต์พุต
[in] aBufLength
ความยาวของข้อมูลเอาต์พุตที่จัดเก็บไว้ในบัฟเฟอร์
การส่งคืน
จำนวนไบต์ที่ประมวลผลโดยโค้ดเรียกกลับ

ฟังก์ชัน

otNcpHdlcInit

void otNcpHdlcInit(
  otInstance *aInstance,
  otNcpHdlcSendCallback aSendCallback
)

เริ่มต้น NCP โดยอิงตามการจัดเฟรม HDLC

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aSendCallback
ตัวชี้ฟังก์ชันที่ใช้ส่งข้อมูล NCP

otNcpHdlcInitMulti

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

เริ่มต้น NCP โดยอิงตามการจัดเฟรม HDLC

รายละเอียด
พารามิเตอร์
[in] aInstances
อาร์เรย์ตัวชี้อินสแตนซ์ OpenThread
[in] aCount
จำนวนองค์ประกอบในอาร์เรย์
[in] aSendCallback
ตัวชี้ฟังก์ชันที่ใช้ส่งข้อมูล NCP

otNcpHdlcReceive

void otNcpHdlcReceive(
  const uint8_t *aBuf,
  uint16_t aBufLength
)

ถูกเรียกหลังจากได้รับข้อมูล NCP ที่เข้ารหัส HDLC

รายละเอียด
พารามิเตอร์
[in] aBuf
ตัวชี้ไปยังบัฟเฟอร์
[in] aBufLength
ความยาวของข้อมูลที่จัดเก็บไว้ในบัฟเฟอร์

otNcpHdlcSendDone

void otNcpHdlcSendDone(
  void
)

ถูกเรียกหลังจากที่ส่ง NCP เสร็จ

otNcpPlatLogv

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

เขียนบันทึก OpenThread โดยใช้ otNcpStreamWrite

รายละเอียด
พารามิเตอร์
[in] aLogLevel
ระดับการบันทึก
[in] aLogRegion
ภูมิภาคของบันทึก
[in] aFormat
ตัวชี้ไปยังสตริงรูปแบบ
[in] aArgs
va_list กับ aFormat

otNcpRegisterPeekPokeDelegates

void otNcpRegisterPeekPokeDelegates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

ลงทะเบียนฟังก์ชัน peek/poke มอบสิทธิ์ด้วยโมดูล NCP

โมดูล NCP จะเรียกใช้ฟังก์ชันมอบสิทธิ์เพื่อตัดสินใจว่าจะอนุญาตการแอบดูหรือโผล่ขึ้นมาเหนือพื้นที่หน่วยความจำหนึ่งๆ หรือไม่ หากตั้งค่าตัวชี้ผู้รับมอบสิทธิ์เป็น NULL จะอนุญาตการดำเนินการ Peek/Poke สำหรับที่อยู่ใดก็ได้

รายละเอียด
พารามิเตอร์
[in] aAllowPeekDelegate
มอบสิทธิ์ตัวชี้ของฟังก์ชันสำหรับการดำเนินการแอบดู
[in] aAllowPokeDelegate
มอบสิทธิ์ตัวชี้ฟังก์ชันสำหรับการดำเนินการ Poke

otNcpSpiInit

void otNcpSpiInit(
  otInstance *aInstance
)

เริ่มต้น NCP ตามเฟรม SPI

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread

otNcpStreamWrite

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

ส่งข้อมูลไปยังโฮสต์ผ่านสตรีมที่ระบุ

พยายามส่งข้อมูลที่ระบุไปยังโฮสต์โดยใช้ aStreamId ที่ระบุ ซึ่งมีประโยชน์ในการรายงานข้อความแสดงข้อผิดพลาด การใช้คอนโซลแก้ไขข้อบกพร่อง/การวินิจฉัย และสตรีมข้อมูลประเภทอื่นๆ

การเขียนจะได้รับการยอมรับทั้งหมดหรือถูกปฏิเสธ ไม่ได้พยายามเขียนเพียงบางส่วน

รายละเอียด
พารามิเตอร์
[in] aStreamId
ตัวระบุที่เป็นตัวเลขสำหรับเขียนสตรีม หากตั้งค่าเป็น "0" สตรีมการแก้ไขข้อบกพร่องจะมีค่าเริ่มต้นเป็น
[in] aDataPtr
ตัวชี้ไปยังข้อมูลที่จะส่งในสตรีม หาก aDataLen ไม่ใช่ 0 พารามิเตอร์นี้ต้องไม่เป็น NULL
[in] aDataLen
จำนวนไบต์ของข้อมูลจาก aDataPtr ที่จะส่ง
แสดงผลค่า
OT_ERROR_NONE
ข้อมูลอยู่ในคิวเพื่อส่งไปยังโฮสต์
OT_ERROR_BUSY
มีทรัพยากรไม่เพียงพอที่จะดำเนินการตามคำขอนี้ ภาวะนี้มักเป็นภาวะชั่วคราว
OT_ERROR_INVALID_ARGS
aStreamId ที่ระบุไม่ถูกต้อง

แหล่งข้อมูล

หัวข้ออ้างอิง API ของ OpenThread จะมาจากซอร์สโค้ดซึ่งพร้อมใช้งานใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารประกอบของเราได้ที่แหล่งข้อมูล