Does the DBANK bit should be activated while using firmware on one bank or firmware size over 256 KB ?
Hi everyone,
I have some misunderstanding about the use of the DBANK bit of the configuration bits.
I have a costomized SPI bootloader located at address 0x0800 0000 and an Application starting at 0x08005000. So both are located on the Bank1.
I made the choice to use only a single bank on my MCU because I don't need dual bank neither for updating or for changing boot bank. It is also because of the firmware size that can exceed 256KB.
During a firmware update the new Application is read from an external SPI flash and during system boot the font characters and language are also read from the same external flash. After a successful update the SPI is deinitialized and initialized again in Application.
Now the Issue:
When the DBANK is unchecked the upgrade can be proceeded but when the bootloader jumps to the application, it seems the SPI bus is not working correctly. I have no characters displayed on the LCD. I have to power OFF and ON for the MCU to read the SPI flash, then the display is correct
When the DBANK is checked the upgrade can be proceeded and the MCU boots OK. All characters are displayed correctly.
So what is the influence of DBANK on the SPI or probably interrupt vector ?
NB: before both tests the MCU is erased and reprogrammed.