|
SDK สำหรับ TESAIoT Dev Kit
คู่มืออ้างอิง API และ Tutorial (ModusToolbox)
|
#include <stdbool.h>#include <stdint.h>Go to the source code of this file.
Data Structures | |
| struct | radio_status_s |
| struct | radio_scheduler_config_t |
Typedefs | |
| typedef struct radio_status_s | radio_status_t |
| typedef void(*) | radio_boot_mode_persist_fn_t(radio_boot_mode_t mode) |
| typedef bool(*) | radio_boot_mode_load_fn_t(radio_boot_mode_t *out) |
| typedef void(*) | radio_scheduler_on_state_fn_t(const radio_status_t *st) |
Enumerations | |
| enum | radio_mode_t { RADIO_MODE_UNKNOWN = 0 , RADIO_MODE_BLE_ADV , RADIO_MODE_BLE_PAIRED , RADIO_MODE_SWITCHING_TO_WIFI , RADIO_MODE_WIFI_ACTIVE , RADIO_MODE_SWITCHING_TO_BLE , RADIO_MODE_WIFI_FAILED } |
| enum | radio_boot_mode_t { RADIO_BOOT_AUTO = 0 , RADIO_BOOT_FORCE_BLE = 1 , RADIO_BOOT_FORCE_WIFI = 2 } |
Functions | |
| bool | radio_scheduler_init (const radio_scheduler_config_t *cfg) |
| สร้างตัวชี้ขาด (arbiter) เรียกก่อน scheduler เริ่มทำงานได้ คืน true ทั้งเมื่อสำเร็จและเมื่อ init ซ้ำ | |
| bool | radio_scheduler_request_mode (radio_mode_t target) |
| จัดคิวการเปลี่ยนโหมดแบบอะซิงโครนัส ให้ยืนยันผลผ่าน hook หรือด้วยการวนถามค่าโหมด | |
| bool | radio_scheduler_set_wifi_creds (const char *ssid, const char *password, const char *security, bool auto_switch) |
| บันทึกข้อมูลรับรอง Wi-Fi ผ่าน hook LFS ของผู้ใช้ไลบรารี และจัดคิวการสลับโหมดต่อไปด้วยก็ได้ | |
| radio_mode_t | radio_scheduler_get_mode (void) |
| อ่านโหมดโดยไม่ต้องจับ lock — เป็นตัวกัน (guard) มาตรฐานของความเป็นเอกสิทธิ์ระหว่าง Wi-Fi กับ BLE บน RF เดียว | |
| void | radio_scheduler_get_status (radio_status_t *out) |
| snapshot สถานะเต็มชุดภายใต้ mutex ของ scheduler มี timeout 50 ms ต้องคัดลอก ssid ออกมา | |
| void | radio_scheduler_set_boot_mode (radio_boot_mode_t mode) |
| คงค่าโหมดบูตที่ต้องการไว้ผ่าน hook สำหรับการคงค่า ถ้า hook เป็น NULL จะไม่มีอะไรรอดข้ามการบูตใหม่ | |
| radio_boot_mode_t | radio_scheduler_get_boot_mode (void) |
| โหมดบูตที่คงค่าไว้ เมื่อ hook เป็น NULL ตามที่ส่งมอบจริง ทุกการบูตจะโหลดเป็น AUTO | |
| void | radio_scheduler_set_on_state (radio_scheduler_on_state_fn_t cb) |
| ติดตั้ง hook ของสถานะ ต้องเรียกก่อน radio_scheduler_init() มิฉะนั้นจะพลาดการเปลี่ยนสถานะครั้งแรก | |
| const char * | radio_mode_str (radio_mode_t m) |
| ตารางแปลงโหมดเป็นสตริงล้วน ๆ คืน literal แบบ static ค่านอกช่วงคืน "invalid" — ใช้กับ s ได้อย่างปลอดภัย | |
| typedef struct radio_status_s radio_status_t |
| typedef void(*) radio_boot_mode_persist_fn_t(radio_boot_mode_t mode) |
| typedef bool(*) radio_boot_mode_load_fn_t(radio_boot_mode_t *out) |
| typedef void(*) radio_scheduler_on_state_fn_t(const radio_status_t *st) |
| enum radio_mode_t |
| enum radio_boot_mode_t |