AN0003 中 EFM32PG/JG UART bootloader 的起始地址

开始者 <a href="http://community.silabs.com/t5/Welcome-and-Announcements/Community-Ranking-System-and-Recognition-Program/m-p/140490#U140490"><font color="#000000"><font size="2">Master Employee</font></font> </a> delu 修改时间 ‎04-11-2017 03:30 PM

问题

如何更改EFM32PG/JG UART bootloader 的起始地址?

答案

EFM32PG/JG 预烧录进设备的bootloader被放在地址0xFE100000开始的位置,该bootloader所在的flash位置可以被软件读取但是不可写。

 

如需定制bootloader,可以通过把config.h头文件中的起始地址从0xFE100000更改为0x0来实现。

 

初始设置:

#elif defined(_SILICON_LABS_32B_PLATFORM_2)
#define BOOTLOADER_SIZE         (10*1024)
#define BOOTLOADER_START_ADDR   (0x0FE10000)
#define APPLICATION_START_ADDR  (0)

 

定制设置(bootloader大小为4KB):

#elif defined(_SILICON_LABS_32B_PLATFORM_2)
#define BOOTLOADER_SIZE         (4*1024)
#define BOOTLOADER_START_ADDR   (0)
#define APPLICATION_START_ADDR  BOOTLOADER_SIZE

 

评论
修改者 <a href="http://community.silabs.com/t5/Welcome-and-Announcements/Community-Ranking-System-and-Recognition-Program/m-p/140490#U140490"><font color="#000000"><font size="2">Master Employee</font></font> </a> delu
修改时间 ‎04-11-2017 04:02 PM