蓝牙数据通信 GATT

本文介绍了蓝牙低功耗(BLE)的GATT协议,包括属性层ATT的定义、GATT的组成及操作,如服务发现、特性读写等。还详细解析了GATT profile的层次结构,并提供了Android BLE API的使用示例,如BluetoothGatt的连接、断开、服务发现和特性读取操作。
摘要由CSDN通过智能技术生成

ATT(Attribute Protocol)属性层是GATT和GAP的基础,它定义了BLE协议栈上层的数据结构和组织方式。

           BLE属性协议,它是处于L2CAP协议层与GATT之间的一层属性操作协议。

GATT(Generic Attribute Profile),通用属性协议,在GATT之上即是我们的应用程序,通过GATT统一属性格式和属性访问接口,对于APP开发来讲操作对象就变成了对一个个定义的属性进行读写。

主要由3部分组成:Handle、Attribute Type、Attribute Value其中Handle是作为索引的依据类似数组的下标,Attribute Type是根据UUID而定义的128bit标识(实际传输可以只传递16bit),Attribute Value即属性值

如何发现和使用服务的一些标准方法:

  • 发现规程
    • 发现服务:发现所有首要服务、按UUID发现首要服务、查找包含服务。
    • 发现特性:发现所有特性、发现所有特性描述符。
  • 客户端发起规程:读/写特性值、读/写特性描述符。
  • 服务端发起规程:通知/指示。

GATT profile的层次结构依次是:Profile—>Service—>characteristic

一个Service包含一个或者多个Characteristic(特征),也可以通过Include的方式,包含其它Service。

Characteristic则

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值