為什麼peripheral的example還會分blank和mbr
\SDK\nRF5_SDK_17.1.0_ddde560\examples\peripheral\blinky\pca10056
MBR (Master boot record)主引導磁區
以S140 SoftDevice的架構為例,MBR 根據MBR Parameter
storage的內容決定系統跟要跳轉到
SoftDevice,Bootloader還是Application
MBR位於記憶體位置0x0000起始處,佔記憶體容量0x1000
(檔案位于\SDK\nRF5_SDK_17.1.0_ddde560\components\softdevice\mbr\hex)
對Application來說,差別就在于hex的起始位置,mbr的project會為MBR預留位置而從0x1000開始
在SES裡為MBR預留記憶體設定 Options > Code > Linker > Section
Placement Macros
FLASH_START=0x1000
🔔 如果是要打包成DFU (Zip)檔要選用 blank
參考Nordic文件 Master boot record and bootloader