[ English | 简体中文 ]
蓝牙 BLE 扫描 API
openvela 蓝牙 BLE 扫描接口,用于发现周围的 BLE 设备和广播数据。
头文件:#include "bt_le_scan.h"
openvela 实现说明
- 扫描模式:支持被动扫描和主动扫描
- 过滤器:支持按名称、地址、UUID 等条件过滤扫描结果
- 回调通知:通过回调函数异步返回扫描结果
同步接口
bt_le_stop_scan
void bt_le_stop_scan(bt_instance_t* ins, bt_scanner_t* scanner);
停止 BLE 扫描。
参数:
scanner扫描器实例。ins蓝牙客户端实例, 参见 bt_instance_t.
返回值:
bt_le_scan_is_supported
bool bt_le_scan_is_supported(bt_instance_t* ins);
查询操作。
参数:
ins蓝牙客户端实例。
返回值:
bt_le_scan_is_supported 操作。
异步接口
bt_le_start_scan_async
bt_status_t bt_le_start_scan_async(bt_instance_t* ins, const scanner_callbacks_t* scan_cbs, bt_le_start_scan_cb_t cb, void* userdata);
开始BLE 扫描(异步版本)。
参数:
ins蓝牙客户端实例。scan_cbs扫描回调函数集合。cb回调函数。userdata用户数据。
bt_le_start_scan_settings_async
bt_status_t bt_le_start_scan_settings_async(bt_instance_t* ins, ble_scan_settings_t* settings, const scanner_callbacks_t* scan_cbs, bt_le_start_scan_cb_t cb, void* userdata);
异步版本。
参数:
ins蓝牙客户端实例。settings设置。scan_cbs扫描回调函数集合。cb回调函数。userdata用户数据。
bt_le_start_scan_with_filters_async
bt_status_t bt_le_start_scan_with_filters_async(bt_instance_t* ins, ble_scan_settings_t* settings, ble_scan_filter_t* filter, const scanner_callbacks_t* scan_cbs, bt_le_start_scan_cb_t cb, void* userdata);
开始操作(异步版本)。
参数:
ins蓝牙客户端实例。settings设置。filter过滤条件。scan_cbs扫描回调函数集合。cb回调函数。userdata用户数据。
bt_le_stop_scan_async
bt_status_t bt_le_stop_scan_async(bt_instance_t* ins, bt_scanner_t* scanner, bt_le_stop_scan_cb_t cb, void* userdata);
停止扫描(异步版本)。
参数:
ins蓝牙客户端实例。scanner扫描器实例。cb回调函数。userdata用户数据。
bt_le_scan_is_supported_async
bt_status_t bt_le_scan_is_supported_async(bt_instance_t* ins, bt_bool_cb_t cb, void* userdata);
查询是否支持 BLE 扫描(异步版本)。
参数:
ins蓝牙客户端实例。cb回调函数。userdata用户数据。