2016-03-28 09:28 AM
I am confused about the boot setting in STM32F7xx series.
When the boot pin is low, it boots from flash on ITCM interface (0x0020 000) by default, as shown in the screenshot of the manual.However, in the IAR linker file, the AXIM interface is selected. The program runs ok when downloaded in the flash. So could you tell me is the CPU using ITCM or AXIM interface in this case?Edit:Hi ALL,The way to choose AXIM or ITCM flash interface in IAR is to configure the ROM address in the linker file.For AXIM, ROM starts from0x08000000,
for ITCM, ROM starts from0x00200000.
So the BOOT_ADD0 setting is not working? #stm32f7-axim-itcm-flash-interfac2016-03-29 03:47 AM
In true you will not see effect of this settings directly. As I mention this is only memory mapping. When you program will be compiled for AXIM, and when you boot from ITCM this will be still work. But any read (const data, funtions literals will be done by axim) but code will be executed by ITCM.
If in IAR setting rom to 0x00200000 work with programing and debuging so good. Check pointer value to some function or constant data. This is not verifed information. ITCM interface is enabled at power on by setting booting from them. If you change boot to AXIM, and program will be compiled to work on ITCM this will not work. But ST maybe implement that ITCM is always ON. This i will check later.