LAT1239
Local Application Tips
LAT1239 – Rev 1.0 – Feb. 2023
简谈 BlueNRG-LP 和-LPS 的代码空间优化
关键字:OTA,BlueNRG,静态协议栈, 协议栈裁剪,BLE
1.引言
客户在使用 BlueNRG-LP/LPS 芯片时,增加 OTA 服务后常常反馈说,编译代码区域超空间了,
需要帮忙优化一下。后文主要通过下列步骤进行分析和优化 BlueNRG-LP/LPS 的代码空间:
a. 通过分析 BlueNRG-LP/LPS 的 OTA 方式,让客户可以选择合适的方式;
b. 通过整体分析 BlueNRG-LP/LPS 的链接文件(*.icf/*.sct/*.ld)了解默认工程的存储分布;
c. 通过裁剪协议栈,选择合适的协议栈功能,优化 BlueNRG-LP/LPS 的代码空间;
d. 通过使用静态协议栈,进一步优化 BlueNRG-LP/LPS 的代码空间;
e. 其他方案;
总的来说通过两个维度来节省空间:
一个是协议栈的裁剪维度:主要是通过修改宏配置实现编译对应应用需要的协议栈。
另一个是 OTA 和静态协议栈的维度:OTA 和静态协议栈的选择流程图如下图所示。