- 添加BLE相关模块:ble_adv_ctrl_module、ble_adv_uuid16、ble_bas_module、 ble_hid_module - 新增电池状态事件(bat_state_event)用于监控电池电量、充电状态 - 在多个事件中添加HID_TRANSPORT_BLE支持,包括hid_led_event、 set_protocol_event等 - 更新配置文件prj.conf以启用蓝牙功能、HID服务和设置系统 - 修改电池模块以计算并报告电池SOC百分比 - 集成CAF设置加载器以管理蓝牙配对信息
24 lines
506 B
C
24 lines
506 B
C
#include <zephyr/bluetooth/uuid.h>
|
|
|
|
#include <bluetooth/adv_prov.h>
|
|
|
|
static int get_data(struct bt_data *sd, const struct bt_le_adv_prov_adv_state *state,
|
|
struct bt_le_adv_prov_feedback *fb)
|
|
{
|
|
static const uint8_t data[] = {
|
|
BT_UUID_16_ENCODE(BT_UUID_HIDS_VAL),
|
|
BT_UUID_16_ENCODE(BT_UUID_BAS_VAL),
|
|
};
|
|
|
|
ARG_UNUSED(state);
|
|
ARG_UNUSED(fb);
|
|
|
|
sd->type = BT_DATA_UUID16_ALL;
|
|
sd->data_len = sizeof(data);
|
|
sd->data = data;
|
|
|
|
return 0;
|
|
}
|
|
|
|
BT_LE_ADV_PROV_SD_PROVIDER_REGISTER(uuid16_all, get_data);
|