Skip to main content
Visitor II
January 9, 2023
Solved

Program S25FL064L trough STM32F446 by STM32CubeProgrammer

  • January 9, 2023
  • 2 replies
  • 2811 views

Dear, I have a STM32F446 connect trough QSPI the S25FL064L .

I ask if there is the possibility using STLINK and STM32CubeProgrammer to program the S25FL064L .

Tell me if there are other solutions to program the external memory trought the STM32F446 by a external programmer .

Thanks

0693W00000Y7gecQAB.jpg 

    This topic has been closed for replies.
    Best answer by Andreas Bolsch

    OpenOCD comes with stmqspi driver for QSPI- and OctoSPI-interfaces, this one works for F4 parts, too. The package includes sample config for this board: http://www.st.com/en/evaluation-tools/32f412gdiscovery.html, which uses N25Q128A flash. Its command set is rather similar to S25FL064L (in particular, both support QPI mode). For entering QPI mode and switching flash from 3-byte address to 4-byte address see e.g. stm32f769i-disco.cfg (which comes with OpenOCD). There a MX25L51245G is used, but still similar enough.

    2 replies

    Super User
    January 9, 2023

    Segger J-Flash is a wonderful tool for programming QSPI flash.

    Their recent version only needs to know the QSPI pins of the MCU (in case there are several variants). Then it will detect the flash chip automatically, even a new one for which no other "external loaders" exist yet.

    IlConteAuthor
    Visitor II
    January 9, 2023

    Thanks, but in the vendor list i don't find the S25FL064L memory

    Graduate II
    January 9, 2023

    Parts which are 128Mbit (16MB) are 24-bit / 3-byte addressing, tend to be relatively similar, especially in 1-bit modes. Perhaps there is a generic option, or JEDEC one.

    Complications tend to occur when you start enabling pins or quad modes.

    I think the part you have might look sufficiently like a Winbond or Macronix part to be programmed.

    Unfortunately I've not built loaders for the F4 families as QSPI was added relatively late in the game, and it's not a platform that caches.

    Explorer II
    January 9, 2023

    OpenOCD comes with stmqspi driver for QSPI- and OctoSPI-interfaces, this one works for F4 parts, too. The package includes sample config for this board: http://www.st.com/en/evaluation-tools/32f412gdiscovery.html, which uses N25Q128A flash. Its command set is rather similar to S25FL064L (in particular, both support QPI mode). For entering QPI mode and switching flash from 3-byte address to 4-byte address see e.g. stm32f769i-disco.cfg (which comes with OpenOCD). There a MX25L51245G is used, but still similar enough.