cancel
Showing results for 
Search instead for 
Did you mean: 

Error: Data mismatch found at address 0x9000000D (byte = 0xFC instead of 0x00)

JIN3473
Associate II

Hello,

I recently created a custom board using the STM32F746. I'm encountering an issue with the QSPI interface. The problem arose when I replaced the external flash from the MT25QL128ABA model to the IS25LP128F model. I have checked the data sheet and adjusted the QSPI parameters accordingly, but I'm still facing the issue as shown in the attached image. I would appreciate your help with this.

(I haven't changed the code; I only adjusted the QSPI parameters in the .ioc file after generating the code from TouchGFX Designer.)

 

JIN3473_1-1723790182005.pngJIN3473_0-1723790084319.png

 

1 ACCEPTED SOLUTION

Accepted Solutions

Hello @JIN3473 ,

 

Could you please refer to MOOC - External QSPI loader how to - YouTube and follow the steps. This Mooc can help you to create an external QSPI loader.

I hope this help you to find the issue.

 

Thank you.

Kaouthar

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

7 REPLIES 7
KDJEM.1
ST Employee

Hello @JIN3473 ,

 

Could you please check the dummy cycles because timing issues can often cause data mismatches. For that please refer to IS25LP128F and choose the correct timing values. 

May AN4760 can help you.

 

Thank you.

Kaouthar

 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

I studied 'dummy' and applied it based on your advice.

So I tried debugging by adding the following code to void MX_QUADSPI_Init(void)

JIN3473_0-1724026363180.png


However, I still get the following error

JIN3473_1-1724026397288.png

 

Probably an issue with the External Loader that you're using to do the writing in to the memory

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

As you suggested, I found the existing External Loader related to the external flash and removed it

JIN3473_1-1724033948623.png

After that, an error occurred at MX_TouchGFX_Init() -> touchgfx_init() -> Texts::setLanguage(0) -> currentLanguageTypedText = typedTextDatabaseArray[id];

 

JIN3473_2-1724034347535.png

"After adding this function, it seems like there are no more errors, but my board doesn't work. When I press suspend, it stops at

JIN3473_3-1724034396616.png

There is no progress after this.

It seems that the error occurs at MX_TouchGFX_Process(); -> touchgfx_taskEntry() -> OSWrappers::isVSyncAvailable() -> return vsync_sem;

JIN3473_0-1724035084619.png

 

Hello @JIN3473 ,

 

Could you please refer to MOOC - External QSPI loader how to - YouTube and follow the steps. This Mooc can help you to create an external QSPI loader.

I hope this help you to find the issue.

 

Thank you.

Kaouthar

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Ok, well a couple of things going on here.

The error about the mismatch is coming from the loader writing the content to memory, it's not related to any of your application code.

Your application code, or more generally the boot loader that calls it, needs to bring up the system clocks and external memory interfaces so you can memory map and use the external memory from your application.

You have to get the memory IC into the state suitable for access, and the when Memory Mapping provide it with a Read Memory template suitable for the operational mode of the memory.

I'd suggest getting your QSPI BSP code tested and working completely in a boot loader, where you can test and confirm it is reading memory properly, and you can see the content and get the settings correct and optimal. I'd generally advise against reinitializing the clocks and memory interfaces a second time. Do properly ONCE, and contract with the Application the conditions you anticipate at hand-over.

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

Thank you, everyone, for your answers. I had followed the instructions in 

https://mcu.eetrend.com/files/2021-01/wen_zhang_/100060910-119089-tongguostm32cubemxzhizuowaibuflashdeshaoxiequdong.pdf

but it didn’t work well for me. After watching a video, I realized what I had missed, and it worked well afterward.

 

JIN3473_0-1724373690387.png

I underlined my mistake in blue, and you need to uncheck the box. I hope that anyone reading this doesn't make the same mistake as I did.