美文网首页
蓝牙4.0BLE中协议栈详解

蓝牙4.0BLE中协议栈详解

作者: 随波逐流007 | 来源:发表于2017-01-20 11:54 被阅读250次

    蓝牙4.0BLE协议栈介绍

    问题:什么是BLE协议栈?BLE协议栈与BLE协议的关系?

    顾名思义,人类之间需要一种语言才能沟通,机器之间,电子之间也有一个标准,也就是作为通讯标准,也就是通讯协议。

    协议:定义了一系列通讯标准,通讯双方都按照这一标准,进行数据通讯。

    协议栈:协议的具体实现形式,实现的函数库,固件库。

    把个个协议集合到了一起,以函数库的形式实现,并用这些给用户提供一些应用层的API接口,用户可以进行一些调度。

    问题:如何使用BLE协议栈进行开发?

    三个步骤:

    1.不需要具体了解BLE协议栈的具体复杂的过程,只需要知道它的数据从哪里来,需要到哪里去就行了。

    2.根据BLE协议栈调用它里面的函数,实现自己的一些功能。

    3.可以自己编写一些函数,实现自己需要特定的功能。

    协议结构图

    第一层:physicallayer(物理层)

    信道带宽提供2M,提供三个广播信道1M。

    第二层:link layer(链路层)

    执行一些基带协议,底层的数据包管理协议。

    第三层:host controller interface(主机控制接口层)

    提供主机与控制层的通讯方式,以及命令格式,重用蓝牙标准,比如一些串口,USB等等。

    第四层:L2CAP(逻辑链路于适配器协议层)

    为它上层提供数据业务,提供端到端的逻辑数据通信。

    第五层:security manager(SM)安全管理层

    层与层之间会有通信,它是建立数据交换安全方面的数据知识。

    第六层:attribute protocol(ATT)通用接入层

    定义了一些通用接口,供应用层和底层之间的调用,比如你要调底层的硬件模块的东西,就需要这个层的底层的驱动模块去实现它的一些功能,所以它会同时封装一些API的函数设置。

    第七层:generic attribute profile(GATT)(属性协议层)

    允许设备以属性的形式向外设备暴露它的一些数据,就像广播者与观察者之间,它一直在广播自己的属性,数据出去。观察者观察到了它以后就可以把它的属性提取出来。

    第八层:generic access profile(GAP)通用属性剖面

    具体属性协议的应用框架,应用了属性协议的应用架构,通过这个层,可以在里面开发一些应用的东西,这里做好了一些应用的框架,可以在上面写一些开发。

    原文链接:http://www.maiziedu.com/wiki/bluetooth/stack/

    相关文章

      网友评论

          本文标题:蓝牙4.0BLE中协议栈详解

          本文链接:https://www.haomeiwen.com/subject/vamwbttx.html