RH850--U2A16 Bootloader
先配置下OPBT
- Option Bytes配置
OPBT3 - Operation Mode & Startup Area
如下图所示,若OPBT3的bit 0和bit 1都置为0,则表示MCU的Operating Mode为Normal Operating Mode, Startup area为User Area。当前将Bootloader放置在User Area 0,所以选择的Startup area即为User Area而非User Boot Area。
OPBT3: 0xF1FF FEFC
OPBT12 - Mapping Mode
当前选择的Mapping Mode为Double Map Mode,故将OPBT12的bit 0和bit 1均置位为0。
OPBT12: 0xFFFF FFFC
OPBT13 - Bank Mapping in Valid Area
当前选择将Bank A和Bank C映射至Valid Area,Bank B和Bank D映射至Invalid Area。故应将DBMAPSW0和DBMAPSW1均置为1。当然,当Bank B和Bank D上的程序都通过OTA更新完成后,需要进行Bank Switch时,则就要将DBMAPSW0和DBMAPSW1都修改为0,这样MCU重启后,Bank B和Bank D就会映射至Valid Area。
Before OTA Update: DBMAPSW0 = 1, DBMAPSW1 = 1
After OTA Update: DBMAPSW0 = 0, DBMAPSW1 = 0
需要注意的是,只有OPBT12设置为Double Map Mode,OPBT13的设置才会生效。
OPBT13 (Before OTA Update): 0xFFFF FFFF
OPBT13 (After OTA Update): 0xFFFF FFFC
对应的Code Flash (User Area) Map如下图所示: