Skip to main content
Visitor II
February 20, 2024
Solved

Data is not stored in the FIFO when FSEL is 1

  • February 20, 2024
  • 1 reply
  • 1109 views

What I want to do is send Write Enable instruction to external Flash and erase.
The environment is as follows.

Use Board : nucleo l4r5zi
IDE : Atollic TrueSTUDIO® for STM32, Built on Eclipse Neon.1a.(Version: 9.3.0)
FLASH : W25Q64JV

The connection diagram of the board and FLASH is shown below.

Myasu1_0-1708448593094.png

I want to send Write Enable instruction to 「W25Q64JV 2」.
The registers are set as follows.

●OCTOSPI

Myasu1_1-1708448757561.png

●OCTOSPIM

Myasu1_2-1708449526837.png

I send Write Enable instruction and then the Read Status instruction. 0 is always stored in the FIFO. (Of course I make sure the FTF is set before reading the data register)

I assume that the setting on the microcontroller side is wrong because when I check IO5 with an oscilloscope, I get the expected waveform.

For your information, when I set FSEL to 0 and communicated with 「W25Q64JV 1」 using IO0~IO3, the data was stored in the FIFO as expected.

If there are any settings that are missing, I would like to know.

    This topic has been closed for replies.
    Best answer by Myasu.1

    Hello,

    I changed the IO5 pin from PC2 to PG11 and now the data is stored in the FIFO as expected.

    The problem has been solved and is closed.

    1 reply

    Myasu.1AuthorAnswer
    Visitor II
    February 23, 2024

    Hello,

    I changed the IO5 pin from PC2 to PG11 and now the data is stored in the FIFO as expected.

    The problem has been solved and is closed.