BLE协议架构

来源:互联网 发布:长城交易软件下载 编辑:程序博客网 时间:2024/06/05 11:23

BLE 协议架构总体上分成3块,从下到上分别是:控制器(Controller),主机(Host) 和应用端(Apps);3者可以在同一芯片类实现,也可以分不同芯片内实现,控制器(Controller)是处理射频数据解析,接收和发送,主机(Host)是控制不同设备之间如何进行数据交换;应用端(Apps)实现具体应用。

  1. 控制器Controller
Controller实现射频相关的模拟和数字部分,完成最基本的数据发送和接收,Controller对外接口是天线,对内接口是主机控制器接口HCI(Host controller interface);控制器包含物理层PHY(physical layer),链路层LL(linker layer),直接测试模式DTM(Direct Test mode)以及主机控制器接口HCI;

  • 物理层PHY
GFSK信号调制,2402MHz~2480MHz,40个channel,每两个channel间隔2MHz(经典蓝牙协议是1MHz),数据传输速率是1Mbps。

  • 直接测试模式DTM
为射频物理层测试接口,射频数据分析之用。
  • 链路层LL
基于物理层PHY之上,实现数据通道分发,状态切换,数据包校验,加密等;链路层LL分2种通道:广播通道(advertising channels)和数据通道(data channels);广播通道有3个,37ch(2402MHz),38ch(2426MHz),39ch(2480MHz),每次广播都会往这3个通道同时发送(并不会在这3个通道之间跳频),为防止某个通道被其它设备阻塞,以至于设备无法配对或广播数据,只所以定3个广播通道是一种权衡,少了可能会被阻塞,多了加大功耗,还有一个有意思的事情是,三个广播通道刚好避开了wifi的1ch,6ch,11ch,所以在BLE广播的时候,不至于被wifi影响(冒出一个很邪恶想法,如果要干扰BLE广播数据,一个最最简单的办法,同时阻塞3个广播通道,哈哈);当BLE匹配之后,链路层LL由广播通道切换到数据通道,数据通道37个,数据传输的时候会在这37个通道间切换,切换规则在设备间匹配时候约定。
  • 主机Host/控制器controller接口HCI
HCI作为一种接口,存在于主机Host和控制器controller当中,控制器Host通过HCI发送数据和事件给主机,主机Host通过HCI发送命令和数据给控制器controller. HCI逻辑上定义一系列的命令,事件;物理上有UART,SDIO,USB,实际可能包含里面的任意1种或几种。
原创粉丝点击