117 views
in System Integration by

Hello

I was looking into LIZARBOARD drivers code that comes with the Package from EmbeddeWizard.

I was thinking to use the QSPI functions used in the LIZARD_qspi.c file to save some application variables in to flash.

 

Trying the LIZARD_QSPI_Write and LIZARD_QSPI_Read I always got QSPI_ERROR in return.

So calling the method LIZARD_QSPI_GetStatus, without even calling the writing or reading method, it return QSPI_ERROR.

 

When flashing to he board, I assume the quadspi is initialized because I see the programmer  writing on  external memory.

 

 

In ew_bsp_system.c the initialization call:

 

 

 

And in ewconfig.h the define

is there some sequence or something i am missing?

Thanks.

 

 

1 Answer

0 votes
by

Hello,

the QSPI flash is programmed by a flash loader routine that is loaded when the entire application is flashed to the target (for example in STM32CubeProgrammer a suitable external flash loader is used). During runtime the QSPI flash is accessed directly by the MCU so that the resources that are located into the QSPI flash can be accessed in the given address space.

In your case - if you want to write and read some private sections within the QSPI flash, you need to erase and program the desired sections. I'm not aware if the LIZARD_qspi.c file (located in /ThirdParty/ACTRON) can be used for that purpose.

Let me recommend to get in contact with ACTRON for further details.

Best regards,

Manfred.

by

Hello Manfred.

During runtime the QSPI flash is accessed directly by the MCU so that the resources that are located into the QSPI flash can be accessed in the given address space.

ACTRON mentioned that also to  me.

Looking at the code, they are the same functions like ST examples.

I'm assuming that the QSPI gets accessed by the MCU during the GUI runtime, so what could be a way to get acces to the memory in a way that does not get in confict with the GUI ? maybe a  separate thread?

Embedded Wizard Website | Privacy Policy | Imprint

...