蓝牙的基础知识
1.蓝牙的分类:
1.低功耗蓝牙:BLE
2.经典蓝牙
3.高速蓝牙
2.常见的蓝牙设备类型:
1.单模蓝牙:只支持蓝牙低功耗
2.双模蓝牙:即支持双模蓝牙,又支持低功耗蓝牙
3.BLE的三大组成部分:控制器、主机、应用程序
4.蓝牙的使用频率为2.4G,被分为40RF通道,其中37,38,39作为蓝牙的广播通道,其余通道作为蓝牙的数据通道(自适应跳频)
5.控制器的组成:
1.物理层(PHY)
2.数据链路层(LL)
1.就绪态:上电后进入并保持此状态,直到主机接收到命令
2.广播态:发送报文和扫描响应(一般为从机广播,主机扫描)
3.扫描态:监听其他广播设备
4.发起态:发起建立连接
5.连接态:建立连接后,可用数据通道传输数据(数据通道唯一使用到的状态)
3.主机控制器接口(HCI):
为主机和控制器之间提供一个标注化的接口(一般使用uart,usb,spi等硬件接口控制)
6.主机的组成:
1.逻辑链路控制基于适配协议(L2CAP):
2.安全管理层(SM):提供密钥和配对(广播数据时使用)
3.属性协议层(ATT):规定客户端的读写规定
4.属性配文协议(GATT):定义角色
1.服务器:为客户端提供数据服务
2.客户端:从服务器读写数据
5.通用访问配置文件(GAP):负责设备发现,链路链接,链路终止和实现绑定
7.应用层:
1.characteristic(特征)
1.具有通用识别码:UUID
2.主从机之间传输的数据实际上就是特征值
2.service(服务)
3.profile(配置文件)
(一个配置文件可用为设备提供一个或多个服务,一个服务具有一个或多个特征)
8.BLE的连接过程:
1.广播事件(从机,即客户端):
1.通用广播:可用被扫描,也可以被连接(需要连接请求)
2.定向广播:会占用整个广播信道
3.不可连接广播:广播数据(不可连接即不进入连接态,不是没有连接
4.可发现广播:不可连接,但会响应扫描
(广播事件有两种,一种是广播自身,供主机扫描以建立连接,另外一种是广播数据,此时不会进入连接态(正常是先连接,再发送数据))
5.广播间隔:两次广播事件的间隔时间(0-10ms)
2.扫描事件(主机,即服务器):
1.扫描窗口:可以理解为扫描周期
2.扫描间隔:两个扫描窗口之间起始时间差(包括休息时间)
3.连接事件:
所有数据交换都是通过连接事件完成(单次连接可进行多次数据传输
1.连接间隔:1.25ms的倍数(7.5-4000ms)
2.从机延时:跳过连接事件
3.监督超时:10ms的倍数(100-3200ms)