Recommendations for external flash?

Status
Not open for further replies.

neltnerb

Well-known member
I want to add external flash to a project based on the Teensy LC and am wondering what people's preferences are or if there are some chips people love.

Something like this seems perfect to add 32Mbit of NV storage, and since it's SPI I'm sure I can write a library for it:
https://www.digikey.com/product-det...ogies/AT25SF321-SSHD-T/1265-1279-1-ND/6827527

But I am curious about whether there are alternative control methods that will use less processor overhead, is DMA a thing I should be thinking about? The datasheet says it supports "dual and quad output read" and I notice the LC has 2 SPI ports, but only one has FIFO buffer so I'm not entirely sure the best approach for this processor.

The intent is mostly for storing complex control scripts so write infrequently read frequently (and ideally read quickly, but this isn't intended to be ultra high end).

I've never programmed a DMA using program; short of reading the datasheet for the microcontroller, is there a tutorial or forum post that's a good intro? Can I configure it to automagically copy received data from two SPI ports into onboard RAM without wasting CPU cycles? Or am I overthinking things?
 
Read down this page to Optional Memory Chip(s): pjrc.com/store/teensy3_audio.html

It has a place to put on a supported 128 Mbit - 16 MB flash chip. The one linked is 4 MB?

There are threads on used/supported chips in addition to that indicated W25Q128FV flash memory chip
 
Oh! That's beautiful, I had no idea the audio shield had more than an SD slot. Thanks so much, I'll just use that chip configured to the same data lines.
 
Posted this on another thread - see the Prop Shield … if 8 MB is enough

Missed your reply . . . just posted this

That shows one of the more commonly used 16 MB Flash chips. The link there to audio boards shows a 256 MB RAM chip too.

Not sure about read speed - it seems it should be similar if not faster than SD as it can maintain full SPI speed IIRC.

Either of the PJRC Prop Shields come with 'Flash Memory - 8 Mbyte storage for images, sound clips, and data logging.' That version is read to run for less than $9.
 
Posted this on another thread - see the Prop Shield … if 8 MB is enough

Oh, I can't quite copy exactly. That 128Mbit chip was obsoleted but it looks like plenty of others work. I just put it on my PCB with the same pinout and checked that the datasheet pin assignments were the same. Seems to be a standard pinout so I expect I can swap in other sizes or brands if need be =)

Now what did take a while was figuring out the deal with the SerialFlash library, there's not much info on the web. I only found the example code by downloading it through the Arduino IDE Library Manager, but now that I have I'm not too worried. I just connected it to the standard SPI lines instead of the alternates used on the audio shield so that I could align a 7-bit wide parallel interface with PTD to get faster digital writing and reading.

Here's a vote for adding SerialFlash to the library list on the pjrc website! Even searching the forums was hard to find info about it.
 
Status
Not open for further replies.
Back
Top