NORDIC BLE SoC 开发环境 – 烧录
烧录器
Nordic半导体推出的BLE SoC都是基于ARM® Cortex™ 内核的,使用标准的SWD协议,比如我们常见的Jlink (需支持SWD协议)就可以使用,大家可以在淘宝上购买。
值得一提的是,Nordic官方开发板可以烧录外部芯片,并且开发板使用的是正版Jlink,烧录体验好,支持Jlink固件的更新。
如下图所示,是nRF52832的最小系统,图上标明了nRF52的4个烧录时用的引脚:VDD,GND,SWDIO,SWCLK 。 待烧录IC需要上电。
下图是nRF52832的官方开发板PCA10040,图中标出了烧录外部IC时使用的引脚,注意VTG是外部IC烧录使能(及烧录电平检测)脚,需要被供电,通常接到待烧录IC的电源上。注意绝大部分nRF5x芯片供电范围是1.8v-3.6v。
研发期间的烧录
研发期间的烧录方式非常灵活,可以使用 编译器 、nRFgo Studio 、nRF Connect 、nRFutil 、J-Flash 等方式烧录。编译器的使用不在此赘述。
用nRFgo Studio烧录
打开nRFgo Studio后,首先点击左侧“Segger xxxxxxx” 栏目选择Jlink ,即可看到如下图界面。
- 擦除。当需要更换协议栈 等情况时,点击“Erase all”擦除整个芯片。
- 如果需要烧录协议栈,先点击“Program SoftDevice”选项卡,再选择协议栈文件路径,最后点击“Program”烧录。
- 如果需要烧录应用程序,先点击“Program SoftDevice”选项卡,再选择应用固件路径,最后点击“Program”烧录。
- 需要校验、读回固件等操作参考上面步骤,对应使用功能即可。
用nRF Connect烧录
打开nRF Connect的Programmer程序如下图,会弹出烧录界面。
- 首先选择Jlink。
- 擦除。当需要更换协议栈 等情况时,点击“Erase all”擦除整个芯片。
- 点击“Add HEX file”选择需要烧录的文档。
- 点击“Write”烧录固件
- 也可以根据需要选择烧录、读回、储存等功能。
用编译器-KEIL烧录
SDK默认的BLE例程中,可以使用KEIL烧录协议栈和应用。协议栈和应用的切换如下图所示,烧录按图上的操作即可。
擦除芯片可以用KEIL擦除(菜单栏Flash->Erase),可以使用nRFgoStudio擦擦,可以用命令行擦除,等等。
使用nrfjprog命令烧录
比如在命令行中输入命令:
将芯片nRF52832还原,擦除所有内容: nrfjprog.exe –family NRF52 –eraseall
给nRF52832烧录sd_app.hex文件并校验,烧录之后复位芯片: nrfjprog.exe –family NRF52 –program sd_app.hex –verify –reset
生产时的烧录
非常遗憾,Nordic官方没有推出任何量产烧录工具,任何宣称是官方量产烧录工具的都是假的。
用户可以使用Jlink+PC软件在线烧录,或者购买离线烧录器烧录。