I am having some issues with requesting the status of the S25FL128S QSPI-flash chip on the TWR-VF65GS10 dev-kit. I initialize the chip in MQX in the following manner:
Open device
Set single IO mode
Get virtual memory base offset
Get total memory length
Get sector size
At first status request, reading status1 on S25FL128S gives:
[INFO ] QSPI0 status code: 0xAA
[INFO ] ... Write in progress ............... : False
[INFO ] ... Write enable latch .............. : True
[INFO ] ... Block protection 1 .............. : False
[INFO ] ... Block protection 2 .............. : True
[INFO ] ... Block protection 3 .............. : False
[INFO ] ... Erase error occurred ............ : True
[INFO ] ... Programming error occurred ...... : False
[INFO ] ... Status register Write Disable ... : True
This happens even after I have done a hard-reset prior to loading my program. After doing any operation (typically erase or write), the next status code is "0xFF"
I based my QSPI driver on the bundled MQX example and the MQX IO User Guide. My status read function is in the following manner:
Build flash command: QuadSPI_READ_STATUS1, QuadSPI_READ_DATA(QuadSPI_SINGLE_PAD, 1), QuadSPI_LOOKUP_STOP
Write command
Read 1 byte
Does anyone have any input on this?