在characteristic declaration, characteristic value,Client Characteristic Configuration 定义中,
1.Characteristic Declaration中指定GATT_PROP_READ| GATT_PROP_WRITE属性,同Characteristic Value定义中GATT_PERMIT_READ | GATT_PERMIT_WRITE有何区别?
2.Client Characteristic Configuration定义中如果指定Notification属性,和Characteristic Declaration中定义GATT_PROP_NOTIFY有何区别?
Yan:
nan,
1, Characteristic Declaration 中只是说明property, 属性, 而Characteristic Value, 则直接指明了这个值能被“允许” 干嘛。
2,Client Characteristic Configuration 是真正能说明我这个值是可以被“notify”的,Characteristic Declaration 只是说明属性。
总之,Characteristic Declaration 都叫了是“Declaration “ 了,所以只是”Declare“ 一下而已。
协议就是这么规定的哦。
hua huamao:
nan,
我对YAN的回答明朗化一下。
1.BLE协议栈规定(蓝牙技术联盟统一标准),特征值完整的包括三个部分:Declaration声明;value自身的值;Description描述。这三个部分的连接handle都不是一个地址的,可以理解成一个带前缀和后缀的值,所以各部分的读写属性是独立的,有区别的。
2.客户端的Client Characteristic Configuration才是真正说明 characteristic是通知类型的,配置成开启/禁止通知,声明同样可以理解成它的前缀。