Importing Cube example programs: F7-discovery
Glad that you succeed.
Regarding the ELF file, I do the same.
On my projects it was not necessary to include stm32_hal_legacy.h file. Maybe when you will have time you can compare your project with the project that I put it on Bitbucket at this link:
https://bitbucket.org/csalageanu/stm32f7_disco_test.git
The project could be Cloned on local pc or downloaded as zip.
On my CubeMX project (.ioc file) the clock is set to 168 MHz (SYSCLK). It was the default value when I created the project for this board. I didn’t want to change something before a test.
Let us know the results of testing to the max clock speed and the result of enabling the L1 chace and ART accelerator.
Just for info: there are some commits to OpenOCD related to F7 series (few days ago). I think those are not in OpenOCD version used by SW.
If you observe something strange while debugging you may want to look at this changes.
For reference here is the link: http://openocd.zylin.com/#/c/2940/,
and the changes are:
stm32f2x.c: Add STM32F74x handling - Aug 27
stm32f2x: Add memory barrier needed for STM32F7 flashing - Aug 19
===
IMO flashing a LED on such “very high-performance MCU” is a big step. There are no other microcontrollers with such an impressive resources and peripherals.
From what I know no other microcontroller has an L1 cache memory.
Here is an article on eetimes about Cortex-M7: ARM Cortex-M7: Abundance of Memory or Not Enough?.