概述
主机协议层:
主机协议层包括 L2CAP-逻辑连接控制和适配层,ATT-属性协议层,GATT-通用属性配置层,GAP-通用访问文件配置层,SMP-安全协议层
一般关注的为GAP,GATT,以及ATT层。
GAP-通用访问文件配置层
主要进行广播adv,比如大家熟悉的GAPRole_SetParameter(),
GATT
为了进行数据传输,首先要知道什么数据可以传输,在这里引入术语:GATT Server,GATT Client,大部分主设备一般为GATT Client,从设备作为GATT Server,当然一个设备同时可以有GATT Server 和 GATT Client。那么GATT Client怎么知道GATT Server有数据呢?在这里就要引入 GATT Table,每个元素就是一个属性,每个属性有一个handle,一个uuid,一个value。handle作为在设备上特殊熟悉的一个参考,每个handle在设备上都是独一无二的,UUID反应属性是什么类型的数据。
更加详细点的如下图,标注了哪些是GATT Server哪些是GATT Client
UUID,128-bit 长度,作为属性类型的识别 包括Base和Alias两部分,Alias是Base中的一个16bit的部分,UUID的Base部分好像是随机产生的,Alias是需要添加的????。
所有的bluetooth SIG标准组织中 services和characteristics使用相同的格式 0000XXXX-0000-1000-8000-00805F9B34FB
上面有个误区,其实Service 不只是GATT层有,Service还有可能是 GAP Service,GATT Service,Battery State Service,Thermometer Humidity Service等,而每个Service可以有多个characteristics,如下图先左的红色箭头即为Service,橙色左箭头即为Service下的characteristics。
最后
以上就是光亮故事为你收集整理的蓝牙4.0BLE各个协议层简述的全部内容,希望文章能够帮你解决蓝牙4.0BLE各个协议层简述所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复