cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F429 enable Dual Banks (DB1M)

Tom Moulton
Associate II
Posted on July 12, 2018 at 19:52

I have an STM32F429 and want to have dual banks.

From looking at the manual I tried this, but it does not seem to work.

Can anyone offer suggestions? (Solutions? )

if ((FLASH->OPTCR&FLASH_OPTCR_DB1M_Msk) == 0) {

printf(''Single Bank - Attempt to fix!\r\n'');

HAL_FLASH_Unlock();

HAL_FLASH_OB_Unlock();

FLASH->OPTCR |= FLASH_OPTCR_DB1M_Msk;

HAL_StatusTypeDef HAL_FLASH_OB_Launch(void);

HAL_FLASH_OB_Lock();

HAL_FLASH_Lock();

} else printf(''Dual Bank!\r\n'');

To be clear, I am not trying to set which bank to boot from, that is a different bit.

0690X0000060M9WQAU.png0690X0000060M9bQAE.png0690X0000060M9gQAE.png

#dual-bank #stm32f4-flash
2 REPLIES 2
Tom Moulton
Associate II
Posted on July 12, 2018 at 22:45

I tried the latest ST-Link utility and for the STM32F429ZIT it had the 'DUALBANK' option grayed out

Strange, it is a 2MB part

Andreas Bolsch
Lead II
Posted on July 15, 2018 at 09:29

You're using F429ZIT? This one has a 2 MByte flash. And for these devices, the RM clearly states it is *ALWAYS* dual-banked. Only for the 1 MByte devices there is an option to choose between single and dual-bank.

So in your case the DB*1M* (sic!) is simply a don't care.