【教程】小安派BW21-CBV-Kit——BLE 电量客户端

[复制链接]
查看35 | 回复0 | 4 天前 | 显示全部楼层 |阅读模式

用料

示例

介绍

BLE 连接使用服务器-客户端模型。服务器包含重要的数据,而客户端连接到服务器以读取数据。通常,蓝牙外设设备充当服务器,而蓝牙中心设备充当客户端。服务器可以包含多个服务,每个服务包含一组数据。客户端可以发送请求来读取或写入一些数据,并且还可以订阅通知,以便服务器可以将数据更新发送到客户端。

在这个示例中,BW21-CBV-Kit 蓝牙堆栈上设置了一个基本的电池客户端。客户端连接到另一个运行相应 BLE 电池服务的 BW21-CBV-Kit 开发板,以读取电池电量数据。

流程

  1. 在第一块 BW21-CBV-Kit 开发板上,上传 BLEBatteryService 示例代码并运行。
  2. 对于第二块 BW21-CBV-Kit 开发板,打开以下示例:“文件” -> “示例” -> “AmebaBLE” -> “BLEBatteryClient”

image.png

  1. 上传代码后,按下 BW21-CBV-Kit 开发板上的复位按钮。
  2. 打开串口监视器,观察日志信息。你会看到 BW21-CBV-Kit 开发板作为电池客户端扫描、连接并从另一块运行电池服务的 BW21-CBV-Kit 开发板读取数据。

image.png

说明

  • ·如图中黄色高亮所示,电池客户端的 BW21-CBV-Kit 开发板首先扫描广播的 BLE 设备,寻找广告设备名称为“AMEBA_BLE_DEV”和广告服务 UUID 为 0x180F(表示电池服务)的设备。
  • ·找到目标设备后,电池客户端的 BW21-CBV-Kit 开发板与目标设备建立 BLE 连接,并在连接的设备上查找电池服务,如图中蓝色高亮部分所示。
  • ·客户端连接到服务后,电池客户端开始通过常规数据读取和通知读取数据,如图中绿色高亮部分所示。

代码参考

  • BLEClient 用于创建一个客户端对象,以便在连接的设备上发现服务和特征。
  • setNotifyCallback() 用于注册一个回调函数,该函数将在接收到电池电量通知时被调用。
  • BLE.configClient() 用于配置蓝牙堆栈以支持客户端操作。
  • addClient(connID) 用于创建一个新的 BLEClient 对象,该对象与连接的设备相对应。
用心做好保姆工作
回复

使用道具 举报

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

本版积分规则