luat_wlan.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #include "luat_base.h"
  2. #include "luat_msgbus.h"
  3. #include "luat_malloc.h"
  4. typedef struct luat_wlan_config
  5. {
  6. uint32_t mode;
  7. }luat_wlan_config_t;
  8. typedef struct luat_wlan_conninfo
  9. {
  10. char ssid[36];
  11. char password[64];
  12. char bssid[8];
  13. uint32_t authmode;
  14. uint32_t auto_reconnection;
  15. uint32_t auto_reconnection_delay_sec;
  16. }luat_wlan_conninfo_t;
  17. typedef struct luat_wlan_apinfo
  18. {
  19. char ssid[36];
  20. char password[64];
  21. }luat_wlan_apinfo_t;
  22. enum LUAT_WLAN_MODE {
  23. LUAT_WLAN_MODE_NULL,
  24. LUAT_WLAN_MODE_STA,
  25. LUAT_WLAN_MODE_AP,
  26. LUAT_WLAN_MODE_APSTA,
  27. LUAT_WLAN_MODE_MAX
  28. };
  29. typedef struct luat_wlan_scan_result
  30. {
  31. char ssid[33];
  32. char bssid[6];
  33. int16_t rssi;
  34. int8_t ch;
  35. }luat_wlan_scan_result_t;
  36. int luat_wlan_init(luat_wlan_config_t *conf);
  37. int luat_wlan_mode(luat_wlan_config_t *conf);
  38. int luat_wlan_ready(void);
  39. int luat_wlan_connect(luat_wlan_conninfo_t* info);
  40. int luat_wlan_disconnect(void);
  41. int luat_wlan_scan(void);
  42. int luat_wlan_scan_get_result(luat_wlan_scan_result_t *results, int ap_limit);
  43. // 配网相关
  44. // --- smartconfig 配网
  45. enum LUAT_WLAN_SC_TYPE {
  46. LUAT_SC_TYPE_STOP = 0,
  47. LUAT_SC_TYPE_ESPTOUCH,
  48. LUAT_SC_TYPE_AIRKISS,
  49. LUAT_SC_TYPE_ESPTOUCH_AIRKISS,
  50. LUAT_SC_TYPE_ESPTOUCH_V2
  51. };
  52. int luat_wlan_smartconfig_start(int tp);
  53. int luat_wlan_smartconfig_stop(void);
  54. // 数据类
  55. int luat_wlan_get_mac(int id, char* mac);
  56. int luat_wlan_set_mac(int id, char* mac);
  57. // AP类
  58. int luat_wlan_ap_start(luat_wlan_apinfo_t *apinfo);