打造一个通用性MCU架构,支持CX32/AT32/NRF51/NRF52等。 OS支持RTX4/RTX5/FreeRtos。 采用VsCode+GCC组合,VsCode+KEIL5,超强开发方式。 QQ群:524408033

LiSun

打造一个通用性MCU架构,支持CX32/AT32/NRF51/NRF52等。 OS支持RTX4/RTX5/FreeRtos。 采用VsCode+GCC组合,VsCode+KEIL5,超强开发方式。 QQ群:524408033

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

所需文件已经编译完毕,直接放入指定目录。

**\nRF5_SDK_17.0.2_d674dde\external\micro-ecc

micro-ecc.rar

BootLoader工程位置
xx\nRF5_SDK_17.0.2_d674dde\examples\dfu\secure_bootloader

使用keil编译完成后,直接烧录,是无法运行的,因为[mbr_nrf52_2.4.1_mbr.hex]引导文件没有烧录。

xx\nRF5_SDK_17.0.2_d674dde\components\softdevice\mbr\hex\mbr_nrf52_2.4.1_mbr.hex
将文件复制到工程根目录

写一个脚本,命名[program.bat]

@echo off

@echo eraseall
nrfjprog --eraseall

@echo program  boot.hex
nrfjprog --program .\out\nrf52_boot_usb_dfu.hex --verify

@echo program mbr_nrf52_2.4.1_mbr.hex
nrfjprog --program .\mbr_nrf52_2.4.1_mbr.hex --verify

@echo reset chip
nrfjprog --reset

=====================================================
APP部分,如何一次性烧录boot+mbr+app

  1. 生成settings文件
  2. 合并3个hex文件(boot+settings+app)
  3. 擦除芯片
  4. 烧录合并文件
  5. 烧录mbr_nrf52_2.4.1_mbr.hex
  6. 复位芯片

脚本如下:

@echo off
set app_hex=%1
set nrf_tool_path=..\..\..\..\tool\nrf_tool\nrf-command-line-tools
set nrf_tool_path1=..\..\..\..\tool\nrf_tool\
set nrf_boot_path=..\nrf52_boot\out\nrf52_boot_usb_dfu.hex

@echo nrfutil settings generate
%nrf_tool_path1%\nrfutil settings generate --family NRF52QFAB --application .\out\%app_hex%.hex --application-version 0 --bootloader-version 0 --bl-settings-version 2 ..\dfu\settings.hex

@echo merge file
%nrf_tool_path%\mergehex -m %nrf_boot_path% ..\dfu\settings.hex .\out\%app_hex%.hex -o ..\dfu\prog.hex

@echo eraseall
%nrf_tool_path%\nrfjprog --eraseall

@echo program  prog.hex
%nrf_tool_path%\nrfjprog --program ..\dfu\prog.hex --verify

@echo program mbr_nrf52_2.4.1_mbr.hex
%nrf_tool_path%\nrfjprog --program ..\dfu\mbr_nrf52_2.4.1_mbr.hex --verify

@echo reset chip
%nrf_tool_path%\nrfjprog --reset



posted on 2022-08-13 11:00  xuejianqiang  阅读(85)  评论(0编辑  收藏  举报
打造一个通用性MCU架构,支持CX32/AT32/NRF51/NRF52等。 OS支持RTX4/RTX5/FreeRtos。 采用VsCode+GCC组合,VsCode+KEIL5,超强开发方式。 QQ群:524408033