I am new to the forum and this is my first post so please excuse me if I am doing something wrong.
I am trying to read/write the 64 bytes OTP area on a Micron N25Q032A SPI flash using a script.
Following the device datasheet [1] there is a dedicated instructions for reading 4Bh (and for writing 42h) the OTP bytes.
The following statement in the "Read OTP array command" on page 54 is confusing and I can't figure out how to craft the script to read the OTP properly:
To initiate a READ OTP ARRAY command, S# is driven LOW. The command code is input on DQ0, followed by three bytes and dummy clock cycles.
How to issue/or simulate?/ the "dummy clock cycles" using the script?
I've bought several empty chips for experimenting. So I've tried the following scripts.
To write the OTP on a blank chip:
Code: Select all
#HARDWARE SETTINGS;
HW:SPI,3.3V,NORMAL;
#OPERATION;
SW:1,62,0,0,5,5,10,0,100,500;
INSTR:42;
DATA:FF,00,01,02,03,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF,FF;
To read the OTP:
Code: Select all
#HARDWARE SETTINGS;
HW:SPI,3.3V,NORMAL;
#OPERATION;
SW:0,0,1,63,5,5,10,0,100,500;
INSTR:4B;
The read command is returning 'FF' not the expected FF 00 01 02 03 FF ... bytes.
I've tried INSTR:4B,00,00,00,00 with the same result - all data is FFs.
Any help is welcome.
Best Regards,
Anton
[1]: https://media-www.micron.com/-/media/cl ... v_65nm.pdf