Propeller newbie using eeproms
scochar
Posts: 2
Hi I am working on an application that currently uses microsd cards to play .wav files - would like to eliminate using micro sd cards and use large eproms instead. Total data could be formatted to be less than 8 megabyte total (making 2GB+ SD cards overkill).
Is there a filesystem in place already for eeproms that can be used?
Thanks, scott
Is there a filesystem in place already for eeproms that can be used?
Thanks, scott
Comments
Using ordinary EEPROMs, you can attach up to 512K per pair of I/O pins and use any of several drivers. There was a very simple file system that was part of the Propeller OS mentioned in Graham Stabler's Good Thread Index here. This provided for files up to 32K in size with 8.3 file names. It could handle several pairs of I/O pins for I2C busses.
There are Flash SPI chips available which do 8MB. IIRC the W25X64 is one such chip and is available from either DigiKey or Future Electronics (not Futurelec).
I am unsure if a FAT16 driver for SPI chips has been done. However, it should not be too difficult to match the FAT16 driver to a SPI device instead of the SD device as they are usually handled by different objects. You can check out Kye's driver "SD 2.0 ..." http://forums.parallax.com/showthread.php?t=122991
and ask there if it does not support it. IIRC Kye was thinking about supporting SPI chips. Another possibility is to check the OBEX (object exchange) for a driver. Maybe Mike Green may chime in as he has done work in this area too.
I've decided to stick with SD cards for now, since one of the threads talks about being able to use 2.0 to open 2 files at once for read, which is what I really need to do - at a hobbyist level I don't mind having 2 sd card slots, etc. but this design is for other people to build, too, and I'm trying to keep the overall cost/complexity down.
Now, I'm having a problem where [I think] the SD read engine is crashing (have not upgraded to 2.0 yet) - anytime multiple requests in a short time occur. I'm going to add some debug code so I can see what's going on (I've got 8 LEDs to show me some status)
thanks, scott