nrf528xx bootloader 模塊介紹

1. bootloader 的基本功能:

  • 啓動應用
  • 幾個應用之間切換
  • 初始化外設

nordic nrf52xxx的bootloader主要功能用來作DFU, 能夠經過HCI, UART 或BLE通訊的更新程序,然而從SDK 比較高的版本僅支持使用BLE來更新固件,若是採用UART/ HCI接口更新固件,請參考SDK11.0或之前版本的例子。html

2.   Bootloader 模塊架構

bootloader_modules.svg

        Bootloader moduler
 

3. 自舉程序(nrf_bootloader)

    bootloader 程序能夠擴張不少功能
  • 特定內存地址的應用程序
  • 若是設備應用尚未完成以前,能夠在bootloader 程序裏面作些設備硬件的測試
  • 若是你的內層足夠大,經過觸發外部事件,容許bootloader引導多個不一樣的應用程序

  

    Programming the bootloader

   nordic nrf系列自舉程序啓動過程編程

       若是系統安裝了bootloader, MBR負責引導bootloader, MBR 經過UICR.BOOTLOADERADDR來定位引導程序的位置,因此寫bootloader程序時,首先要寫入         UICR.BOOTLOADERADDR-程序地址架構

    編程bootloader的過程:

  • 刪除設備
  • 編程SoftDevice.
  • Compile the bootloader.
  • Program the bootloader and write to UICR.BOOTLOADERADDR

    Using Keil

You cannot write to UICR.BOOTLOADERADDR when using the default J-Link target driver in Keil. Therefore, you must configure Keil to use an external tool, nrfjprog. To do so, select Project > Options for Target 'xxx' and configure nrfjprog.exe as the tool for flash programming. nrfjprog.exe is installed with the nRF5 MDK and must be in the Windows system path. The following screenshot shows the required settings for nrfjprog.exe:app

keil_project_flash_tool_nrf52.png
Flash tool configuration in Keil

After configuring the flash command, program the bootloader as you would do with a normal application. If several J-Link emulators are connected, select the one that contains the nRF5 IC that you want to flash.svg

相關文章
相關標籤/搜索