Files
banban/ql-application/threadx/common/include/ql_wifi_ble.h
T

93 lines
2.2 KiB
C

#ifndef QL_WIFI_BLE_H
#define QL_WIFI_BLE_H
#include "ql_type.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef void (*ql_ble_gatt_data_cb)(void *ctx);
typedef void (*ql_ble_gatt_link_cb)(void *ctx);
typedef enum
{
QL_WIFI_BLE_SUCCESS = 0,
QL_WIFI_BLE_EXECUTE_ERR = 1 ,
QL_WIFI_BLE_INVALID_PARAM_ERR,
QL_WIFI_BLE_INVALID_PARAM_LEN_ERR,
QL_WIFI_BLE_NO_MEM_ERR,
QL_WIFI_BLE_MEM_ADDR_NULL_ERR = 5,
} ql_wifi_ble_errcode_e;
typedef enum
{
QL_WIFI_BLE_MSG_CONNECTED = 0x01,
QL_WIFI_BLE_MSG_DISCONNECTED = 0x02,
QL_WIFI_BLE_MSG_MTU_UPDATED = 0x03,
QL_WIFI_BLE_MSG_DATA_RECEIVED = 0x04,
} ql_wifi_ble_msg_e;
#pragma pack(1)
typedef struct
{
ql_wifi_ble_msg_e msg;
uint8_t value[];
} ql_wifi_ble_gatt_link_ctx_s;
typedef struct
{
uint8_t uuid_len;
uint8_t uuid[16];
uint16_t data_len;
uint8_t *data;
} ql_wifi_ble_recv_data_info_s;
typedef ql_wifi_ble_recv_data_info_s ql_wifi_ble_send_data_info_s;
typedef struct
{
uint8_t uuid_len;
uint8_t uuid[16];
} ql_wifi_ble_service_info_s;
typedef struct
{
uint16_t data_len;
uint8_t data[20];
} ql_wifi_ble_data_info_s;
#pragma pack()
/*========================================================================
* function Definition
*========================================================================*/
ql_wifi_ble_errcode_e ql_wifi_ble_init(void *argv);
ql_wifi_ble_errcode_e ql_wifi_ble_deinit(void *argv);
ql_wifi_ble_errcode_e ql_wifi_ble_set_characteristic(void *argv);
ql_wifi_ble_errcode_e ql_wifi_ble_register_gatt_data_cb(ql_ble_gatt_data_cb cb);
ql_wifi_ble_errcode_e ql_wifi_ble_register_gatt_link_cb(ql_ble_gatt_link_cb cb);
ql_wifi_ble_errcode_e ql_wifi_ble_adv_start(void *argv);
ql_wifi_ble_errcode_e ql_wifi_ble_adv_stop(void *argv);
ql_wifi_ble_errcode_e ql_wifi_ble_sent_gatt_data(void *argv);
ql_wifi_ble_errcode_e ql_wifi_ble_set_adv_data(void *argv);
ql_wifi_ble_errcode_e ql_wifi_ble_set_name(void *argv);
ql_wifi_ble_errcode_e ql_wifi_ble_get_addr(char *addr, uint8_t inlen ,uint8_t *outlen);
ql_wifi_ble_errcode_e ql_wifi_ble_disconnect(void *argv);
#ifdef __cplusplus
} /*"C" */
#endif
#endif