Nordic--nRF52832(一)

架构

Nordic--nRF52832(一)_第1张图片

  • MBR向量表:0x00000000
  • SoftDevice向量表:0x00001000

简介

 一个包含蓝牙功能的固件,包含三个部分:

  • APP应用固件:nrf52832_xxaa.hex
    • 该固件是由一个工程生成的(自建工程)
  • Bootloader固件:nrf52832_xxaa_s132.hex
    • 该固件也是由一个工程生成的(自建工程,秘钥就在这里面)
  • SoftDevice协议栈固件:s132_nrf52_6.0.0_softdevice.hex
    • 该固件是从官网下载,一般由SDK和版本号决定,比如这个固件版本就是6.0.0

根据Combond打包的顺序,其实他的固件包的结构是这样的:

包名 解释
settings_S132_52832_QFAA.hex 由Application应用包生成的setting包
nrf52832_xxaa_s132.hex BootLoader包
nrf52832_xxaa.hex Application 应用包
s132_nrf52_6.0.0_softdevice.hex Software 协议栈包

基本符合内存架构图

编译

 需要两个keil工程:

  • app应用工程
  • BootLoader工程(加密)

烧录方式

 固件有三种下载方法,JLink下载最快

  • JLink下载
  • nRFgoStudio下载
  • DFU空中升级

JLink下载

Nordic--nRF52832(一)_第2张图片
编译工具文件夹下:

  • 第一步点击:z-setting.bat
    • 调用nrfutil.exe 程序并使用 nrf52832_xxaa.hex 文件生成 settings_S132_52832_QFAA.hex文件。
  • 第二步点击:Combond.bat
    • 打包脚本,调用mergehex程序并使用以s132_nrf52_6.0.0_softdevice.hexnrf52832_xxaa.hexnrf52832_xxaa_s132.hexsettings_S132_52832_QFAA.hex的顺序打包生成SoocareM2_all.hex文件
  • 第三步点击:z-NRF_PROG.bat
    • 擦除芯片上的数据,并将SoocareM2_all.hex文件下载到芯片中去。

要想实现以上操作,需要安装:nrfgostudio_win-64_1.21.2_installer.msi

还需要原料:

  • private.pem
    • 使用Python2.7生成的一个“私钥”,就像HTTPs的加密方式
  • nrf52832_xxaa.hex
  • nrf52832_xxaa_s132.hex
  • s132_nrf52_6.0.0_softdevice.hex

最终生成:

  • settings_S132_52832_QFAA.hex : 运行z-setting.bat之后生成的中间文件,这个名字也是在该.bat文件中配置的。
  • SoocareM2_all.hex :运行Combond.bat之后生成的打包好的文件,这个名字也是在该.bat文件中配置的。

nRFgoStudio

Nordic--nRF52832(一)_第3张图片

不推荐

术语

术语、缩略词 描述
APP 应用程序。注意在这里 APP 不是指的安卓手机上的 APP,而是NRF52832 固件程序中相对 Bootloader 而言的,是用户实现自己功能的程序
Bootloader 引导加载程序
DFU 全称为 Device Firmware Update,设备固件升级
MBR 全称为 Master Boot Record,主引导记录

你可能感兴趣的:(Nordic,nrf52832学习应用之路)