nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写

前言

  • nrf52832 想要开启 蓝牙功能,比如蓝牙主从机功能,需要额外烧写 蓝牙协议栈的固件:softdevice,换句话说,蓝牙协议栈等代码是不开放的,只提供一个 二进制文件。

  • 也就是 nrf52832 Flash 与 RAM 要分区了,第一部分是 蓝牙协议栈固件 softdevice,第二部分是 用户程序部分,分区不能重叠。

烧写蓝牙协议栈固件 softdevice 烧写方法

  • 烧写方法大概有三种:win7 系统上(很少见了),可以使用 nrfgo studio,可惜 win10 上 nrfgo studio 无法工作

  • win10 上烧写可以使用 第二种: J-Flash 烧写,也就是使用 J-Link J-Link-OB 烧写 hex 或者 bin 文件

  • 第三种烧写方法:使用 Nordic 提供的 nRF Connect 提供的 Programmer,这个 Programmer 还需要额外安装(github 下载),可能容易失败

J-Flash 烧写流程

  • 本篇记录如何使用 J-Flash 烧写 nrf52832 蓝牙协议栈固件: softdevice

  • nrf52832 具体型号:nrf52832_xxAA 512KFlash/64K SRAM

  • J-Flash 来自 SEGGER J-Link 的驱动,可以单独安装,https://www.segger.com/downloads/jlink/

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第1张图片

  • 【备注】J-Link 驱动版本能用即可,无须选择最新版本,最新版本对 J-Link 有要求,比如你的 J-Link 不是正版

打开J-Flash

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第2张图片

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第3张图片

  • 选择 Nordic nrf52832的型号:当前是 nrf52832_xxAA,注意后缀 AA 表示 512K Flash 64K SRAM,这需要根据实际的硬件调整

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第4张图片

  • SWD 默认链接
    nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第5张图片

打开要烧写的文件

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第6张图片

  • 蓝牙协议栈固件的选择:这里需要注意有好几种蓝牙协议栈,对于 nrf52832来讲,有两种常见的常见,只用于蓝牙从机,蓝牙主从机一体。

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第7张图片

  • 建议烧写 S132,也就是蓝牙主从机一体的

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第8张图片

  • 链接 J-Link,开始烧写

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第9张图片
nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第10张图片

  • 烧写完成:注意 hex 的文件,本身有烧写地址,如果是 bin 文件,需要手动指定烧写地址

nrf52832 开发板入手笔记:J-Flash 蓝牙协议栈烧写_第11张图片

小结

  • nrf52832 需要额外烧写蓝牙协议栈固件: softdevice,推荐烧写 蓝牙主从机一体的 s132nrf52720

  • 蓝牙协议栈固件与用户应用程序烧写时不能重叠,也就是分区域烧写

  • 一般蓝牙协议栈固件不经常烧写,如果被无意擦除,可以使用 J-Flash 烧写,默认烧写地址就是 Flash 的起始地址

你可能感兴趣的:(nrf52832,nrf52832,J-Flash,softdevice,烧录)