白话BLE技术 第九篇 举个例子

前面一直都是在说理论上的内容,比较枯燥,在这一章,我们举个例子来进行具体说明

 

在这个例子里,我们用心率服务来说明,心率服务的数据如何发送给监控设备。

在这个图中,是一个设备上的心率服务,当然在这个设备上不只这一个服务,这个图可以看做是这个设备上服务的一小部分。客户端可以访问这里的数据。

可以看到属性由4个部分构成,分别是句柄,UUID,权限和数值。

服务有服务属性,特性有特性属性,描述符有描述符的属性。内容都不一样。

首先来看第一行的属性。

句柄为0x0021,这个属性包含了服务的声明,声明了一个HRS,Heart Rate Service,表示自己是一个心率的服务。UUID使用了标准的16位UUID,值使用了16位的UUID值,这个值是已经被定义好的,专门指心率服务。

然后看第二行的属性

第二行是一个特性,包含了特性声明,特性声明中包含了一下的内容

UUID也是一个标准的16位数值,表示这个属性是一个特性声明,也就是0x2803。数值部分是用来通知的,所以权限是只读。

再看第三行的属性

这个属性包含了特性值,在这个例子中,也就是心跳测试仪自己本身,所以特性值属性的组成是:UUID就是特性定义中的数值部分。全新是不可以读也不可以写,数值部分是心跳测试仪。

接下来看第四个属性,这个属性包含了一个CCCD。CCCD属性的组成为:UUID为CCCD的固定UUID。权限是可以被读取也可以被写入。数值部分是一个位,被设置为需要通知的。

然后是第五个属性,句柄值为0x002A,这个属性包含了特性声明,在这个例子里,保存了身体传感器位置BSL Body Sensor Location的特性。组成如下:UUID是一个标准的16位的UUID,用于特性声明。数值是只读的,特性值是002C.

最后是第六个属性,属性包含了特性值,就是身体传感器的位置。

有一些工具可以读取类似的表格。具体的使用方法会在后面的章节中介绍。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值