软件架构
图 3展示了GR551x SDK的软件架构。
- Bootloader
引导程序,负责初始化芯片的软硬件环境,校验并启动应用程序。
- BLE Stack
低功耗蓝牙协议栈实现核心,由控制器(Controller)、主机控制接口(HCI)和主机(Host)协议组成(包括LL,HCI,L2CAP,GAP,SM,GATT),支持Broadcaster、Observer、Peripheral和Central角色。
- BLE SDK
软件开发工具包,提供易于使用的SDK BLE API和SDK System API。
- SDK BLE API包括L2CAP、GAP、SM和GATT API。
- SDK System API提供了对非易失性数据存储系统(NVDS)、Firmware升级(Device Firmware Update,DFU)、系统电源管理以及通用系统级访问接口的API定义。
- Application
在SDK包中,提供了丰富的蓝牙及外设示例工程,每个示例工程中都包含编译后的二进制文件,用户可以下载到芯片中运行和测试。对于大部分的蓝牙应用,SDK包中的安卓APP也提供了对应的功能,方便用户测试。
- Drivers
外设驱动部分的API定义及说明。关于Drivers的详细介绍,请参考GR551x HAL及LL驱动用户手册。