cancel
Showing results for 
Search instead for 
Did you mean: 

How to swap banks using BOOT_ADD0

ced seg
Associate II
Posted on May 31, 2018 at 16:58

Hi everyone,

I have a STM32F7 Discovery board and I would like to upload new firmware on it.

I read AN2606 and AN4826, and I saw that it's possible to split the flash into two memory banks (nDBank = 0) and I can start either on one or the other bank using BOOT_ADD0.

I have downloaded the extended_cube_dbank_f7 file that provide an example of dual bank boot. I followed every steps, which isn't hard, but I am still not able to boot on the second bank whether I change BOOT_ADD0.

I have used STM32 Utility to configure my MCU (unchecked nDBank in Option Bytes, while nDBoot is still checked), I have programmed the two banks with different firmware @0x08000000 and 

@0x08100000.

The BOOT_ADD0 parameter, under Boot adress option bytes section, has no effect whether I use 0x0080 or 0x0081. I can boot @0x08000000 but it seems like something goes wrong when I try to start @0x08

1

00000!

I followed the tutorial step by step, did I miss something? 

Thanks for the help.

Ced.

#stm32f7 #dual-bank-boot
1 ACCEPTED SOLUTION

Accepted Solutions
Doug Kehn
Senior
Posted on June 01, 2018 at 14:00

Uncheck nDBoot. BOOT_ADD0 needs to be 0x2000 to boot from Bank0 or 0x2040 to boot from Bank1.

View solution in original post

3 REPLIES 3
Doug Kehn
Senior
Posted on June 01, 2018 at 14:00

Uncheck nDBoot. BOOT_ADD0 needs to be 0x2000 to boot from Bank0 or 0x2040 to boot from Bank1.

Posted on June 04, 2018 at 10:11

Hi Doug,

Thank you, you were right. I misunderstood the concept of nDBoot. I thought it was only useful to select BOOT_ADD0 or BOOT_ADD1 adresses through Boot0 pin.

Anyway, it works and I'm back on track.

Have a good day,

Ced.

Posted on June 04, 2018 at 10:20

Hi

cedric.seguin

,

https://community.st.com/0D50X00009bMM5DSAW

-Nesrine-