I use a STM32L4 with a Micron N25Q032A (32 Mbit, 4Mx8). I have some Questions about this or similar Micron-Chips and hope to get here some Hints.
- After a PageWrite (Command 0x12 QUAD_IN_FAST_PROG) you have to poll the Status-Register until the WriteInProgress-Flag is getting from 1=busy to 0=ready. After this the Flash should be ready for next Command. But if I do not wait after this some more Time (1-2 ms) I will get Errors. I use FreeRTOS and so I use the osDelay. With 1ms there is a 10%-Chance that this will be not enough. With osDelay(2) I can write without further Problems. But why I have to wait here? This is not explained in the Datasheet of the QSPI-Flash ...
- This Variant is not supported by the ST-Link-Utility. To have a Solution out of the Box, for Instance a N25Q128 (8Mx16 with 16MB) could be used. This one is used for the STM32L476-Discovery-Board but it's not usable for my Project. But maybe someone has allready a new Driver / Plugin or a good and easy Howto to get the needed Plugin for the small 4-MB-Flash?
- Has anybody a Solution for Eclipse (System Workbench) how to integrate this Flash for XIP? Yeah, I have to define a Section, ok. And than? How I can tell the Eclipse (GCC / GPP) to generate one bin-File for Main-Project and a second one which I have to program into the QSPI-Flash? Is there a Solution to do this second program-Step with Eclipse so that I still can Debug even the Code executed from the QSPI-Flash?