External SPI and QSPI memories #15534
Unanswered
gabsi-w
asked this question in
STM32 / Pyboard
Replies: 1 comment 3 replies
-
QSPI can be memory mapped but is is not required, you can use it as normal filesystem, SPI can not be mapped but can be mounted as a filesystem too with OS module, why use two flash if you have low pins available? As you are using F746NE, you have 512kb of internal flash including the two extenal flash and all of then can be used by micropython, read mboot.md on /mboot directory from mpy source with (few) instructions on how to setup you board firmware and some board definitions already have mboot configured for one or two external flash that you can copy |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello, I am porting Micropython to a custom hardware based on an STM32F746NE chip, which due to size constraints, not all pins are available, like the USB for example. The board is programmed through a segger j-link using J-Link commander, where I write direct in the memory the firmware bin files that I compiled through WSL. The whole system works just fine, I was able to connect to micropython via PUTTY and get an REPL. The microcontroller has two external 64Mb memories connected to it, one to QSPI bank 1 and another to SPI6 with a random GPIO pin as the chip select. I am checking the present examples to see how the other boards implement it, but since I am kinda new with it I have many questions, like what is the best approach, for example.
So, does it make sense to use the QSPI as the internal memory? Would I need to use the mboot in this case? Will mboot work without the USB?
And about the SPI, as I understood this one can't be used as internal memory as the SPI doens not support the memory mapping. So, to use it as a external memory, how could I address it since the SPI region in the memory does not have 64 Mb of space?
Last, but not the least, how should I work with the bdev, boardinit, mpcoonfigboard (.h and .k), what must I include or define in order to it to work?
Any help will be welcomed. Some exxamples that I am studying are: STM32F7/F769Disco, PyBoard v2 and Arduino Giga
Thank you!
Beta Was this translation helpful? Give feedback.
All reactions