cancel
Showing results for 
Search instead for 
Did you mean: 

Build For Internal SRAM

belair55
Associate III

Hi,

I am trying to reconfigure my project based off the STM32H750B-DK to run on the same part but from a custom PCB. I am using IAR and EWARM. I have configured my icf file based on what I would like for a memory map. The project builds okay, and I can verify what I am looking for with the map file, but for some reason after flashing the board my device screen is pure white (as if it was looking at initialized memory). Is there something in a source file that could be fighting with what I am trying to tell the linker/locator to do or am I missing a MAKE option? I have attached two map files to this message. The first map file is for an external SRAM build and uses the linker script included with the project; this is the working version. I have another map file which is using my custom linker script to build for internal SRAM (this version gives the white screen). Any help with this would be greatly appreciated.

3 REPLIES 3
belair55
Associate III

We are also trying to figure out how to get Designer to allow us to build for 8bpp. The preprocessor statements seem to indicate that only 24 and 16 are available but 4.12 advertises 8bpp. Is there a way to regenerate the necessary source files to allow the 8bpp option?

belair55
Associate III

I think I may have found the answer. I noticed that the debugger is throwing a hard fault in the bootloader. I am guessing this is because BOOT_ADD0 is not configured to the correct address. The question I now have is where do I make the correct change for this? I noticed there are HAL functions to program the boot option and address, but if the bootloader gets called on startup how would application code be able to affect a change? My understanding is that the bootloader would run through its peripheral checks and then use BOOT_ADD0 to jump to application. Does the bootloader require that peripherals are initialized prior to its execution? If so is there a main function that I would be able to call the flash programming options from so the bootloader jumps to the correct address? This is my first time in the ring with using bootloaders so I am trying to figure this all out. Any help would be appreciated.

belair55
Associate III

Okay I have touchgfx running in internal SRAM on the STM32H750B-DK. I am including here the run down on what on what can be done in order to make this new configuration possible.

I am using EWARM so the linkerscript (*.icf) file needed to be modified to allow for mapping the frame buffer into AXI SRAM (512KB) and using DTCMRAM for readwrite, stack and heap. I changed the frame buffer number 1 in boardconfiguration.cpp.