BLE4.0教程二 蓝牙协议之服务与特征值分析
1.关于服务与特征值的简述
之前说到蓝牙的连接过程,那蓝牙连接之后具体是如何传数据的呢。这里做一下简要说明。
蓝牙4.0是以参数来进行数据传输的,即服务端定好一个参数,客户端可以对这个参数进行读,写,通知等操作,这个东西我们称之为特征值(characteristic),
但一个参数不够我们用,比如我们这个特征值是电量的值,另一个特征值是设备读取的温度值。
那这时候会有多个特征值,并且我们还会对它们分类,分出来的类我们称之为服务(service)。
一个设备可以有多个服务,每一个服务可以包含多个特征值。为了方便操作,每个特征值都有他的属性,例如长度(size),权限(permission),值(value),描述(descriptor),如下图。
2.ATT与GATT
我们刚才介绍服务与特征值,那具体我们是怎么去实现的呢.
蓝牙4.0版本推出了低功耗规范,引入了两个核心协议:ATT(Attribute Protocol)和GATT(Generic Attribute Protocol).这两个协议主要目标是BLE,但是也可以运行在传统蓝牙上