当前文档版本为 NDK-v0.7.0,您可以访问当前页面的 开发中 版本以获取最近可能的更新。

NDK Chip Migration

本文主要阐述 PAN107x 和 PAN101x 芯片的不同点以及移植的一般方法。

1. 芯片之间的差异

芯片\features

RAM

Controller

flash

OTA 支持

功耗

PAN101x

16K

支持 广播,丛机

256K

支持 2.4G OTA,USB dfu,UART dfu

较低

PAN107x

48K

支持 广播,扫描,丛机,主机

512K

支持蓝牙OTA,2.4G OTA,USB dfu,UART dfu

极低

由于资源的限制 PAN101x 使用单连接丛机,且不带蓝牙OTA 的方案,例如 USB 接收器

PAN107x 可以用于丛机,主机,多连接的方案(2主3丛),支持蓝牙 OTA

2. 芯片工程的迁移

芯片的迁移主要丛如下几个方面进行阐述,第一个方面是工程配置方面,第二个方面是资源优化和时钟选择方面,资源优化方面通过 sdk_config.h 进行优化的,详情参考 NDK Configuration 开发指南

2.1 工程配置

  1. 芯片信号选择,分别是IP_101x 和 IP_107x , 其中 107芯片请在下图的位置写入 IP_107x, 101 芯片请写入 IP_101x

images

chip 配置选择示意图

  1. Controller lib 文件的选择

​ pan107x 的芯片选择 **ble_spark_107x.lib ** 或者 **ble_spark_107x_rd.lib **,pan101芯片选择 ble_spark_101x.lib,路径 nimble\lib 下,下图举一个 pan101x 芯片加载 lib 的配置示意图,加载方法参考keil mdk 操作

images

  1. flash 的划分,请在 sdk_config.h 选择 flash Map 一栏选择,详情参考 NDK Configuration 开发指南

    PAN101x 选择 256,101x 不能选择 Support Back-up area in OTA model,因为 flash 不足以留下备份区

    PAN107x 选择 512

images

​ 上图展示 pan107x的芯片 flash 大小选择

2.2 时钟选择和资源优化

在 sdk_config.h 选择 soc platform 主要配置芯片的时钟和优化 ram

image

soc platform configuration

  1. System Clock 选择系统时钟,107x 默认是 32M,也可选择 48M,101x 请选择48M

  2. Enable RAM Function 107x 建议勾上,101x建议不勾,勾上增加 ram,提高关键代码运行速度

  3. Remap Vector Table to SRAM 107x 建议勾上,101x建议不勾,勾上增加 ram,提高关键代码运行速度