cancel
Showing results for 
Search instead for 
Did you mean: 

Problem STM32H743IIT QSPI with W25Q128J and External Loader

Sany
Associate III

Hey,

 

I have a STM32H743IIT Board with an QSPI W25Q128J Flash, i use LTDC and LVGL.

I want to store my pictures in the Flash Memory, but i have some Problems with the External Loader or the Mapping, or something.

The Flash workes fine, when i Write a buffer and Read a Buffer from the Program itself.
I'am a little confused, in the reference guide from the STM32H743IIT, is the Bank 1 located at 0x60000000, but in some examples, are the address 0x90000000 used.

I tried with the CubeProgrammer and the Loader "M29W128GL_STM32H743I-EVAL", here is the Pagesize 0x10, and Startaddress 0x60000000, with these can i erase the complete external memory without errors, but the Pagesize of the W25Q128J is 0x100 (256) ....

Download from STMCubeIDE don't work, i get the Error:

[224.387] spawnCubeProgrammer():  19:46:26:421 w ap 0 @0x24033710 : 0x0002D690 bytes, Data 0xFFFFFFFF...
[224.387] spawnCubeProgrammer():  19:46:26:421 W B2 in RAM @0x24042E80 size 0x0002D690: 1247ms
[224.387] spawnCubeProgrammer():  19:46:56:000 Wait W B1 in Flash @0x60000000 size 0x0002D690: 29579ms
[224.387] spawnCubeProgrammer():  19:47:56:000 Write elapsed time: 91993ms
[224.387] spawnCubeProgrammer():  19:47:56:000 
[224.387] spawnCubeProgrammer():  
[224.387] spawnCubeProgrammer():  19:47:56:000 Error: failed to download  Sector[0]
[224.387] spawnCubeProgrammer():  19:47:56:000 Error: failed to download the File

my .FLASH:

MEMORY
{
  FLASH (rx)     : ORIGIN = 0x08000000, LENGTH = 2048K
  QSPI (r)       : ORIGIN = 0x60000000, LENGTH = 16M
  AREA1 (rx)	 : ORIGIN = 0x081E0000, LENGTH = 128K
  DTCMRAM (xrw)  : ORIGIN = 0x20000000, LENGTH = 128K
  RAM_D1 (xrw)   : ORIGIN = 0x24000000, LENGTH = 512K
  RAM_D2 (xrw)   : ORIGIN = 0x30000000, LENGTH = 288K
  RAM_D3 (xrw)   : ORIGIN = 0x38000000, LENGTH = 64K
  ITCMRAM (xrw)  : ORIGIN = 0x00000000, LENGTH = 64K
}

 

my test file to upload is ca 32 kb...:

const __attribute__((section(".extFlash"))) uint8_t img_logo_map[] = {
0x1a,0x17,0x15,0xff,0x1a,0x17,0x15,0xff,0x1a,0x17,0x15,0xff,0x1a,0x17,0x15,0xff,0x1a,0x17 .......};

Is there a W25Q128J Loader for the STM32H743 with QSPI ?

1 REPLY 1

>>I'am a little confused, in the reference guide from the STM32H743IIT, is the Bank 1 located at 0x60000000, but in some examples, are the address 0x90000000 used.

Yeah, 0x60000000 is FMC Bank 1 for Parallel NOR Flash, the QSPI NOR FLASH will be at 0x90000000. Perhaps you can show the RM page/diagram you're talking about..

>>Is there a W25Q128J Loader for the STM32H743 with QSPI ?

Got all sorts of parts and pin configurations

https://github.com/cturvey/stm32extldr/tree/main/h7_w25q128

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