认识BLE 5协议栈 —— 主机控制器接口

HCI接口向Host提供了操控Controller的接口,Host对底层一切行为都通过HCI命令来实现。Controller完成命令后,向Host发送命令执行状态事件。HCI的命令和事件非常多,了解每个命令和事件的细节对一个普通开发者而言是一件不可能的事情。

认识BLE 5协议栈 —— 链路层

链路层定义了五种状态机,分别是广播状态、扫描状态、发起状态、连接状态和待机状态。围绕这几种状态机,实现了广播、扫描、连接等各种操作。广播和连接过程比较复杂,涉及到许多细致的分类,BLE 5对广播包进行了扩展,进一步增加了广播事件的复杂性。