This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

µVision tries to flash in RAM-area

Hello,
I'm working on a project using STM32F765.
Everything works fine when I use Compiler V5.06.
I can compile the project using V6.7 without any warnings and errors, but when I try to flash the controller I get
"No algorithm found for: 2000000H - 2000008BH"
I use the file system component, and this adress area is used for the file system buffers
In FS_Config_MC_0.h there is

#define MC0_CACHE_ADDR          0x20000000
#define MC0_CACHE_SIZE          16
#define MC0_FAT_JOURNAL         0

#define __AT_MC0  __arm_at(MC0_CACHE_ADDR)
...
/* MC0 Cache Buffer for Data and FAT Caching */
  static uint32_t mc0_cache[(MC0_CACHE_SIZE+1) * 256 + MC0_FAT_JOURNAL * 128] __AT_MC0;

In the map file I see

 Load Region LR$$.ARM.__AT_0x20000000 (Base: 0x20000000, Size: 0x00004400, Max: 0x00004400, ABSOLUTE, COMPRESSED[0x0000008c])

    Execution Region ER$$.ARM.__AT_0x20000000 (Exec base: 0x20000000, Load base: 0x20000000, Size: 0x00004400, Max: 0x00004400, ABSOLUTE, UNINIT, COMPRESSED[0x0000008c])

    Exec Addr    Load Addr    Size         Type   Attr      Idx    E Section Name        Object

    0x20000000   COMPRESSED   0x00004400   Data   RW         2539    .ARM.__AT_0x20000000  fs_config.o

The compressed size (0x8C) seems to match the area that the flasher wants to flash ...0 to ..8B

I also see this in the map file

 fs_config.o(.text.fs_config) refers to fs_config.o(.ARM.__AT_0x20000000) for [Anonymous Symbol]

I don't see anything like this in the map-file when I use V5 compiler.

Does anyone have an idea how to avoid this?

Thank you.

  • I suggest that you create an reproducer project and contact Keil support since compiler 6 toolchain is relatively new and it might still contain some glithes. This looks very unusual so there might be some configuration issue.