Flash memory range on STM32F429II

flashmemorynon-volatile-memorystm32stm32f4

I am reading the STM32F429II data sheet and looking at page 84, which shows the memory mapping. The chip has 2MB of internal flash memory, but the data sheet is general for all STM32F427xx/STM32F429xx chips.

I can see that internal flash memory range is from 0x0800 0000 to 0x081FF FFFF, which gives a maximum of 0x1FF FFFF = 2MB.

It also says that the STM32F4 devices with 2MB of internal flash has its memory divided in two banks of 1 MB each. This means it is possible to execute code from one bank, while at the same time erase/read/write from the other without halting the code execution (if I have understood it correctly).

On the specific chip I mentioned, is it safe to assume that the start address of bank 2 (program executes by default on bank1 I assume) is 0x100 0000? Where can I find this information? I have not seen it in the data sheet or the reference manual.

Best Answer

For greater detail on anything STM32F4 related you should refer to the STM32F4 Reference Manaul - it tells you everything you could ever need to know about anything.

For instance, in section 3, it tells you:

enter image description here

So you can see than bank 1 is 0x08000000 to 0x080FFFFF and bank 2 is 0x08100000 to 0x081FFFFF.