|
SDK สำหรับ TESAIoT Dev Kit
คู่มืออ้างอิง API และ Tutorial (MTB & µPython)
|
WEAK hook 5 ตัวที่ผู้ใช้ไลบรารีเป็นฝ่ายนิยาม — และห้ามเรียก คอมไพล์เฉพาะเมื่อ ENABLE_PAGE_BENTO_BUDDY=1 (ค่าตั้งต้นคือ 0, proj_cm33_ns/Makefile:64, :305) ให้ build ใหม่หลังจาก make getlibs — ดู Flag gate (อ่านก่อน)
ชื่อทั้งห้านี้คือรายการใน template/lib/ble_nus/overridable.txt ทั้งหมดพอดี archive ส่งออกชื่อเหล่านี้เป็นแบบ WEAK และ bento_secure_undeclared.h บันทึกไว้ว่า "Define your own; yours wins at link time." ผู้ใช้ไลบรารีเป็นฝ่าย นิยาม ชื่อเหล่านี้ และห้ามเรียกมัน — radio scheduler ที่อยู่ใน archive เป็นฝ่ายเรียกเข้ามาเอง ไม่มี header ใน dist/ble_nus/include ที่ส่งมอบจริงตัวใดประกาศชื่อเหล่านี้ prototype ด้านล่างมาจาก template/proj_cm33_ns/wifi_init.h และนิยามแบบ strong อยู่ใน template/proj_cm33_ns/wifi_init.c (มีอยู่ในทั้งสอง zip) การจับคู่หมายเลขบรรทัดของนิยามเหล่านั้น ตามที่ตัดสินไว้ในการทบทวนแบบ: :193 = app_wifi_connect_direct, :248 = app_wifi_disconnect, :256 = app_wifi_get_ipv4, :261 = lfs_save_wifi_creds, :304 = lfs_load_wifi_creds (ตัวเลขเป็นค่า ณ การทบทวนครั้งนั้น marker tag ด้านล่างคือการอ้างอิงที่คงทนกว่า) การที่ทั้งห้าชื่อมี "0 template call sites" เป็นค่าที่ถูกต้องและเป็นไปตามที่คาดไว้
ข้อกำหนดการเรียกใช้ (สิ่งที่นิยามของผู้ใช้ไลบรารีต้องทำ) เริ่มต้น WCM ถ้าจำเป็น แล้วเรียก cy_wcm_connect_ap โดยลองซ้ำ 3 ครั้ง คืน 0 เมื่อสำเร็จ คืนค่าที่ไม่ใช่ศูนย์ (cy_rslt_t) เมื่อล้มเหลว การเขียนทับที่ส่งมอบจริงพิมพ์บรรทัด [wifi-glue] ออกมาทุกครั้งที่ลอง — เป็นสิ่งที่สังเกตได้จริง (wifi_init.c ไม่ได้ถูกปิดเสียง printf)
ข้อกำหนดการเรียกใช้ รื้อ link ที่ทำงานอยู่ทิ้ง คืน 0 เมื่อสำเร็จ และต้องปลอดภัยเมื่อไม่ได้เชื่อมต่ออยู่
ข้อกำหนดการเรียกใช้ ค่า IPv4 ปัจจุบันเรียงแบบ network byte order คืน 0 เมื่อไม่มี link — scheduler คัดลอกค่านี้ไปไว้ใน radio_status_t::ipv4
ข้อกำหนดการเรียกใช้ บันทึกข้อมูลรับรองลง LittleFS คืน 0 เมื่อสำเร็จ คืนค่าที่ไม่ใช่ศูนย์เมื่อการเขียนล้มเหลว ข้อมูลรับรองเดิมของ SSID เดียวกันจะถูกเขียนทับ ข้อควรระวังเรื่อง lock: นิยามที่ส่งมอบจริงเป็น read-modify-write บนไฟล์ LFS โดยตรง โดยไม่มี wifi_creds_lock — มันข้าม g_boot_wifi_creds ไป และอาจชิงกับ lfs_wifi_creds_write ที่ทำงานพร้อมกันบนไฟล์เดียวกันได้ (ไม่มี lock ระดับไฟล์อยู่เลยนอกเหนือจาก bs_lock() ของ mtb-only) ถูกเรียกโดย radio_scheduler_set_wifi_creds() ที่อยู่ใน archive
ข้อกำหนดการเรียกใช้ คืน true เมื่อมีข้อมูลรับรองอยู่และไม่ว่างเปล่า พร้อมกับเติมบัฟเฟอร์ผลลัพธ์ให้ปิดท้ายด้วย NUL และตัดสั้นลงเหลือ cap - 1 บน mtb-only ชื่อนี้คลี่ไปยังที่เก็บข้อมูลรับรองฝั่ง C การตัดสินตอนบูตของ scheduler อ่านค่านี้ (เลือก Wi-Fi ถ้ามีข้อมูลรับรองบันทึกไว้ ภายใต้ RADIO_BOOT_AUTO)