cancel
Showing results for 
Search instead for 
Did you mean: 

How to load Touchgfx files to external flash

Btovi.1
Associate II

I have W95Q64 flash memory and STM32F429 custom board. I want to load Touhgfx files to external flash memory. For this purpose, firstly I added below declarations into FLASH.id file as;

SPIFLASH    (r)    : ORIGIN = 0x9000000,   LENGTH = 8M

and

ExtFlashSection :
  {
    *(ExtFlashSection ExtFlashSection.*)
    *(.gnu.linkonce.r.*)
    . = ALIGN(0x4);
  } >SPIFLASH
  
  FontFlashSection :
  {
    *(FontFlashSection FontFlashSection.*)
    *(.gnu.linkonce.r.*)
    . = ALIGN(0x4);
  } >SPIFLASH
  
  TextFlashSection :
  {
    *(TextFlashSection TextFlashSection.*)
    *(.gnu.linkonce.r.*)
    . = ALIGN(0x4);
  } >SPIFLASH

after compilation in CubeIde, the memory is created as shown below;

0693W000006Eu2GQAS.pngMy problem is that I dont know how to download all those files to my board. As far as I know, I need to use external loader in debugger section but there is no convenient option in the tab which is exactly match with my configuration.

0693W000006Eu67QAC.pngit will be appreciated if someone explain what to do additionally and explain all procedures step by step.

Note: I include the library and called W25qxx_Init() in the main block. The connection pins; CS -> PG3; CLK -> PB3; MOSI -> PB5; MISO -> PB4;

4 REPLIES 4

You'd have to write an external loader suitable for your part and board wiring choices. Not really a paint-by-numbers process.

If you've already coded something to initialize, erase, read and write the memory, you could integrate that into your application, allowing you to detect that the SPI isn't filled, and provide a method to download binary content via UART using say X-MODEM or Y-MODEM type protocol.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Btovi.1
Associate II

Thank you so much for the guidance ...

But it is a bad news for me 🙂 I need to see a couple of similar examples in order to do it by myself.

Ok at least I now know what to search 🙂

if any ST member reads here :

Please add a video to demonstrate how to create communication between touchgfx and external memories (including sd card) as a coming part of this video. Coz you know internal memories are quite limited and not enough for developing larger projects although touchgfx is really very powerful tool for that purpose. I know it is not easy to write an interface to communicate with a not addressable thing in order to automatize that procedure but please illustrate us how to do it manually. Yes I read explanations in your website but an application example will be more helpful if you can. Thanks..

Do you have a data sheet for this "W95Q64" memory?

Do you currently have a viable driver, you will need something working/tested before proceeding to an external loader

This is attached to a SPI bus, it won't be mapped into the STM32's address space.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Btovi.1
Associate II

is this a good example for this aim?