2023-05-02 08:21 AM
I am using 70STM32H7 board and STM32H_IPS_QSPI_Loader_CM7 external loader.
I can program from the IDE but that doesnt affect images in external memory. So I tried programming from the programmer and it fails to write to external memory. Then I tried to delete the sectors manually and I can't understand how or why but that sometimes works and sometimes doesn't. Even when it does work, trying to program it afterwards results in an error again, even if I uncheck the option to erase sectors before writing.
nwrp0 -15 are all checked which sounds like they are not write protected but I have no idea if that is the correct thing to check.
btw when we did the initial test we managed to program ext flash correctly as all images were displayed nicely. I then started working on the actual project and when it was time to try it I saw this problem. I went back to the test project and could not make that one work either so I have no idea what could have changed in meantime or what I did differently.
2023-05-02 09:04 AM
2023-05-02 10:05 AM
Is this the Riverdi board? Suggest linking to specific product pages
2023-05-02 10:07 AM
Check things like clocks, if HSE or PLL changes
Possible to set protection bits in external memories if you mix/match BSP or STLDR on them.
Looks here to fail at initialization.
2023-05-06 03:03 PM
Thank you for responding and I appologize for my late response.
The board is https://riverdi.com/product/7-inch-lcd-display-stm32h7-rvt70hssnwn00/
I tried to follow the instructions from that other thread but had no success so I got frustrated and gave up for a while. I later managed to program the board from TouchGFX and the images appeared to be correct but I had to disable my custom code because I could not figure out how to include a library into GFX (I managed to do it for simulator earlier but have no idea how to do it for the target...). I hoped that after the images were successfully transferred I would be able to build code from IDE but I get a black screen now (device works otherwise because I see it sending data on uart).
I will try a process of elimination to see which part of my code is causing it somehow...
2023-05-06 03:56 PM
Would perhaps have your BSP code read the Micron QSPI Status Register, make sure one of the BPx (Block Protect) bits hasn't inadvertently been set. I seem to recall some of the Macronix loaders locking Micron parts, causing Erase, Mass Erase and Writes to fail if they fall within the protected regions.