【教程】小安派BW21-CBV-Kit——BLE 扫描

[复制链接]
查看42 | 回复0 | 2025-1-14 17:00:33 | 显示全部楼层 |阅读模式

用料


示例

简介

本示例将 BW21-CBV-Kit 配置为蓝牙中心设备,使用扫描功能扫描其他蓝牙设备,并将结果打印到串口监视器上。

步骤

  1. 打开示例,依次选择 “文件” -> “示例” -> “AmebaBLE” -> “BLEScan”

image.png

  1. 上传代码并在上传完成后按下 BW21-CBV-Kit 的重置按钮。
  2. 打开 Arduino 串口监视器,你应该可以看到附近蓝牙设备的扫描结果,已格式化并打印出来。

image.png

如果你安装了蓝牙应用 nRF Connect,也可以用它发送蓝牙广告,让 BW21-CBV-Kit 接收。

代码参考

  • setScanMode(GAP_SCAN_MODE_ACTIVE) 用于设置扫描模式。主动扫描会在找到设备时请求额外的扫描响应数据包,而被动扫描只会查看广告数据,而不请求额外数据。
  • setScanInterval()setScanWindow() 用于设置扫描的频率和持续时间(以毫秒为单位)。扫描将在每个间隔时间启动,每次扫描持续扫描窗口时间。扫描窗口持续时间应该小于或等于扫描间隔。设置较短的间隔时间可以快速发现设备,设置较长的间隔时间可以节省电池电量。
  • setScanCallback(scanFunction) 用于注册一个函数,当接收到扫描结果时调用。可以用来设置用户自定义函数处理扫描数据,例如查找特定设备。如果没有注册函数,扫描结果将默认格式化并打印到串口监视器。
  • beginCentral(0) 用于启动蓝牙堆栈并进入中心模式。参数 0 用于指示没有客户端在中心模式下运行。
  • startScan(5000) 用于启动扫描过程,扫描时间为 5000 毫秒。扫描将根据设置的扫描间隔和扫描窗口值重复进行。5000 毫秒后,扫描过程将停止,准备重新启动。
用心做好保姆工作
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则