打开 libwifi.h 文件,该文件是基于 atcmd 实现的对我司的wifi模组进行适配,提供 MQTT 的连接,自动重连,配置,订阅,退订,发布等功能的集成(注:wifi连接通过APP完成),接口列表及说明如下:
* 初始化 libwifi:
```
int libwifi_init(void);
```
* 反初始化 libwifi:
```
void libwifi_deinit(void);
```
* 复位 wifi 模组:
```
int libwifi_reset(void);
```
* 获取 MQTT 状态:
```
int libwifi_get_mqtt_status(void);
```
* 设置 MQTT 连接的 URL:
```
int libwifi_set_mqtt_url(const char *url);
```
* 设置 MQTT Client Id:
```
int libwifi_set_mqtt_client_id(const char *client_id);
```
* 设置 MQTT 用户名:
```
int libwifi_set_mqtt_username(const char *username);
```
* 设置 MQTT 密码:
```
int libwifi_set_mqtt_password(const char *password);
```
* 设置命令响应回调函数:
```
void libwifi_on_responsed_callback(void (*on_responsed)(uint8_t cmd, uint8_t code));
```
* 设置 WiFi 成功连接回调函数:
```
void libwifi_on_ip_ready_callback(void (*on_ip_ready)(void));
```
* 设置 MQTT 连接成功回调函数:
```
void libwifi_on_mqtt_connected_callback(void (*on_mqtt_connected)(void));
```
* 设置 MQTT 断开连接回调函数:
```
void libwifi_on_mqtt_disconnected_callback(void (*on_mqtt_disconnected)(void));
```
* 设置 MQTT 自动重连回调函数:
```
void libwifi_on_mqtt_reconnecting_callback(void (*on_mqtt_reconnecting)(void));
```
* 设置 MQTT 订阅成功回调函数:
```
void libwifi_on_mqtt_subscribed_callback(void (*on_mqtt_subscribed)(uint16_t msgid));
```
* 设置 MQTT 退订成功回调函数:
```
void libwifi_on_mqtt_unsubscribed_callback(void (*on_mqtt_unsubscribed)(uint16_t msgid));
```
* 设置 MQTT 数据发布成功回调函数:
```
void libwifi_on_mqtt_published_callback(void (*on_mqtt_published)(uint16_t msgid));
```
* 设置 MQTT 接收到数据的回调函数:
```
void libwifi_on_mqtt_message_callback(void (*on_mqtt_message)(const char *topic, const uint8_t *payload, uint16_t len));
```
* 创建 MQTT,配置完成后进行创建:
```
int libwifi_mqtt_establish(void);
```
* 订阅 MQTT 主题:
```
int libwifi_mqtt_subscribe(const char *topic);
```
* 退订 MQTT 主题:
```
int libwifi_mqtt_unsubscribe(const char *topic);
```
* 设置发送数据的 MQTT 主题(不修改时仅需设置一次即可):
```
int libwifi_mqtt_set_topic_to_publish(const char *topic);
```
* 发布 MQTT 消息:
```
int libwifi_mqtt_publish(const uint8_t *data, uint16_t len);
```
<br/>
- 框架介绍
- Main 函数
- HAL 函数接口说明
- hal_system.h
- hal_systick.h
- hal_idt.h
- hal_ioctl.h
- hal_flash.h
- hal_lpm.h
- hal_rtc.h
- hal_iwdg.h
- hal_uart.h
- hal_i2c.h
- hal_led.h
- hal_button.h
- hal_vht2x.h
- hal_lcd.h
- Services 函数接口说明
- svc_system.h
- svc_database.h
- svc_hid.h
- svc_msg.h
- svc_humiture.h
- svc_log.h
- Tasks 说明
- task_system.c
- task_example.c
- Libs 函数接口说明
- mathlib.h
- json.h
- atcmd.h
- atcmd_proxy.h
- libwifi.h
- libs1.h