1. BLE 广播示例
1.1. 功能说明
本示例演示如何使用 LISA Bluetooth 组件实现 BLE 广播功能。 主要功能包括:
自定义广播数据(Flags, Local Name)。
自定义扫描响应数据(Manufacturer Specific Data)。
自定义 GAP 配置(MAC 地址,设备名称)。
1.2. 硬件连接
无需外部连接,使用板载 BLE 功能。
1.3. 示例内容
初始化 NVS 和 射频校准。
初始化 LISA Bluetooth 组件。
系统自动开始广播。
1.4. 编译运行
./build.sh -C -S samples/bluetooth/ble_broadcaster -DBOARD=arcs_evb
1.5. 预期输出
[I][sample] === BLE Broadcaster Example ===
[I][lisa_bt] BLE Stack Initialized
[I][lisa_bt] Advertising started
...
1.6. 核心 API
API |
说明 |
|---|---|
|
初始化蓝牙协议栈 |
|
获取自定义广播数据(弱符号覆盖) |
|
获取自定义扫描响应数据(弱符号覆盖) |
|
自定义 GAP 配置(弱符号覆盖) |
1.7. 关键代码
/* 自定义广播数据 */
const uint8_t* lisa_bt_get_adv_data(uint8_t *len)
{
*len = sizeof(user_adv_data);
return user_adv_data;
}
/* 自定义 GAP 配置 */
void lisa_bt_gap_config(ble_gap_cfg_t *cfg)
{
// Set custom MAC address
uint8_t mac[6] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66};
memcpy(cfg->addr.addr, mac, 6);
// ...
}
1.8. 注意事项
MAC 地址: 示例中使用了固定的 MAC 地址,实际产品中应从 NVS 或其他存储中读取。
广播数据: 广播数据长度有限制(通常 31 字节),请注意不要溢出。