El proceso general de establecimiento de la conexión BLE



El proceso general de establecimiento de la conexión BLE

1. Antes de comenzar a conectarse con el cliente

1. ESP_GATTS_REG_EVT			注册
2. ESP_GATTS_CREATE_EVT			创建
3. ESP_GATTS_START_EVT 			启动
4. ESP_GATTS_ADD_CHAR_EVT 		添加特征
5. ESP_GATTS_ADD_CHAR_DESCR_EVT	添加特征描述 

1) Registro: ESP_GATTS_REG_EVT

Llamar esp_ble_gap_set_device_name(char *)para establecer el nombre del dispositivo Bluetooth;

Llame esp_ble_gap_config_adv_data(esp_ble_adv_data_t *adv_data)para configurar los datos de transmisión;

Finalmente, llame a la suma esp_ble_gatts_create_service(esp_gatt_if_t gatts_if, esp_gatt_srvc_id_t *service_id, uint16_t num_handle)especificada para crear el servicio (la capa inferior implementa la creación del servicio y la llamada de la función de devolución de llamada mediante una llamada). Cuando se crea el servicio, se activa la función de devolución de llamada para informar el estado y la identificación del servicio. Para adiciones posteriores y todos deben usarse. El evento se activa al mismo tiempo .gatts_ifservice_idbtc_transfer_context()
profileService_idincluded serivcescharacteristics/descriptor
ESP_GATTS_CREATE_EVT


2) ESP_GATTS_CREATE_EVT

Llame esp_ble_gatts_start_service(uint16_t service_handle)para iniciar el servicio;

Vuelva esp_ble_gatts_add_char(uint16_t service_handle, esp_bt_uuid_t *char_uuid, esp_gatt_perm_t perm, esp_gatt_char_prop_t property, esp_attr_value_t *char_val, esp_attr_control_t *control)a llamar para agregar características (UUID de característica, permiso de atributo de descriptor de valor de característica, atributo de característica, valor de característica, byte de control de respuesta de atributo).
Desencadenantes ESP_GATTS_START_EVTy ESP_GATTS_ADD_CHAR_EVTeventos.


3) ESP_GATTS_START_EVT

(ligeramente)


4) ESP_GATTS_ADD_CHAR_EVT

Obtenga una llamada de valor de función esp_err_tesp_ble_gatts_add_char_descr(uint16_t service_handle, esp_bt_uuid_t *descr_uuid, esp_gatt_perm_tperm, esp_attr_value_t *char_descr_val, esp_attr_control_t *control)para agregar un descriptor de función.


5) ESP_GATTS_ADD_CHAR_DESCR_EVT

(ligeramente)


2. Después de comenzar a conectarse con el cliente

1. CONNECT_EVT			连接
2. ESP_GATTS_MTU_EVT	
3. GATT_WRITE_EVT 		(client)写(server)事件
4. ESP_GATTS_CONF_EVT 	配置事件
5. GATT_READ_EVT		(client)读(server)事件

Referencia

https://blog.csdn.net/zhejfl/article/details/85136102#comments_14573948

Supongo que te gusta

Origin blog.csdn.net/weixin_39591031/article/details/112785326
Recomendado
Clasificación