From 0635e611ba1f83c5fab031eb81884d3ca668b97a Mon Sep 17 00:00:00 2001 From: hcj <1224667075@qq.com> Date: Mon, 21 Oct 2024 11:06:06 +0800 Subject: [PATCH] =?utf8?q?=E5=A2=9E=E5=8A=A0=E8=93=9D=E7=89=99=E6=9B=B4?= =?utf8?q?=E6=94=B9=E5=B9=BF=E6=92=AD=E5=8F=82=E6=95=B0=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../ble_service/bleservice/bleService.c | 31 +++++++++++++++++++ .../ble_service/bleservice/bleService.h | 2 ++ 2 files changed, 33 insertions(+) diff --git a/code/sdk/application/wearable/service/ble_service/bleservice/bleService.c b/code/sdk/application/wearable/service/ble_service/bleservice/bleService.c index 999a37fa5..30c3bf7a4 100644 --- a/code/sdk/application/wearable/service/ble_service/bleservice/bleService.c +++ b/code/sdk/application/wearable/service/ble_service/bleservice/bleService.c @@ -378,6 +378,37 @@ static void svr_ble_adv_data_set(int adv_id) } +void svr_ble_adv_factory_test_start_param(void) +{ + errcode_t ret = 0; + int adv_id = BLE_ADV_ID; + if (ble_adv_falg == 1) { //已经开始广播了,不需要重复开启广播 + ret=gap_ble_stop_adv(adv_id); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ble adv need restart , gap_ble_stop_adv ret %x\n",ret); + osDelay(50); + } + + gap_ble_adv_params_t adv_para; + memset_s(&adv_para, sizeof(gap_ble_adv_params_t), 0, sizeof(gap_ble_adv_params_t)); + + adv_para.min_interval = 0x64;//0x640; + adv_para.max_interval = 0x64; + adv_para.adv_type = GAP_BLE_ADV_CONN_SCAN_UNDIR; + //adv_para.tx_power=20; + adv_para.channel_map = 0x07; + adv_para.duration = 0; + + gap_ble_set_adv_param(adv_id, &adv_para);//设置广播参数 + gap_ble_set_local_appearance(GAP_BLE_APPEARANCE_TYPE_GENERIC_WATCH);//仅是手表 + svr_ble_adv_data_set(adv_id);//开始广播和扫描数据 + ble_adv_falg = 1; + ret = gap_ble_start_adv(adv_id); + if (ret) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "svr_ble_adv_start bt gap_ble_start_adv1 ret = 0x%x", ret); + } + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "svr_ble_adv_start bt gap_ble_start_adv2 ret = 0x%x", ret); +} + void svr_ble_adv_start_param(void) diff --git a/code/sdk/application/wearable/service/ble_service/bleservice/bleService.h b/code/sdk/application/wearable/service/ble_service/bleservice/bleService.h index 1a0f42923..ba3154460 100644 --- a/code/sdk/application/wearable/service/ble_service/bleservice/bleService.h +++ b/code/sdk/application/wearable/service/ble_service/bleservice/bleService.h @@ -44,6 +44,8 @@ void get_phone_addr(bd_addr_t *addr,uint16_t conn_id); void svr_ble_adv_start_param(void);//开始蓝牙广播 +void svr_ble_adv_factory_test_start_param(void);//特殊版蓝牙广播 + void srv_ble_server_register_gap_ble_callbacks(void); bool ble_gatts_cmp_uuid(const bt_uuid_t *tgt_uuid, const bt_uuid_t *src_uuid); void srv_ble_server_register_gatt_callbacks(void); -- 2.17.1