View previous topic :: View next topic |
Author |
Message |
Skirmitt
Joined: 19 May 2009 Posts: 60
|
Adding about 300 KB memory/flash to a PIC18 |
Posted: Thu Sep 30, 2010 8:54 am |
|
|
I have a sound generator project that is finished based on a pic18f2685 that has 96K of flash. I stuffed it completely full with sounds that I play through portB (8 bit 16KHz). I send each byte with a delay and that works great.
I now store the sounds in an array that is included in a header file.
Now, I am limited in sounds by the 96K of flash and I want to add some more external flash on a relative easy way. I would send the sounds through the RS232 port to program/erase/renew them into the flash chip.
What solution would you guys choose ? I tought about an SD card but that has a pretty large footprint, is pretty complicated to program and I only need about 300 to 500KB of flash. |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19552
|
|
Posted: Thu Sep 30, 2010 9:07 am |
|
|
FRAM.
Not flash. Magnetic memory, but writes just like an EEPROM, but _fast_. Zero delays on writes or reads. Basically writes/reads data as fast as you can clock it in via SPI or I2C.
You wouldn't need a delay with this...
Single chip solution. Price more than EEPROM, but not by much.
Only question is what voltage you are working at?. The highest density parts (512KB, 1MB, 2MB, and 4MB), are low voltage, requiring 3.3v operation. A FM25V10, holds 1MB, and is a little SOIC8 package.
Best Wishes |
|
|
Skirmitt
Joined: 19 May 2009 Posts: 60
|
|
Posted: Thu Sep 30, 2010 9:10 am |
|
|
I'm currently running at 5V. If this chip would be THE solution I could arrange a 3.3V system of course.
Is there a driver for this chip available ? |
|
|
bkamen
Joined: 07 Jan 2004 Posts: 1615 Location: Central Illinois, USA
|
|
Posted: Thu Sep 30, 2010 5:10 pm |
|
|
In terms of reading, wouldn't FLASH EEPROM be ok?
Do the writes need to be fast like the reads? If so, I agree with Ttelmah. FRAM (good ol' core memory! hahaha - well not really) would be the way to go.
But if slow write is ok and fast read works, then isn't FLASH based ok too?
-Ben _________________ Dazed and confused? I don't think so. Just "plain lost" will do. :D |
|
|
FvM
Joined: 27 Aug 2008 Posts: 2337 Location: Germany
|
|
Posted: Thu Sep 30, 2010 11:50 pm |
|
|
Yes, if the number of intended total number rewrites is below a 10000 order of magnitude, serial flash, e.g. Numonyx/Micron 25P40 for a 512 kBit part or a larger device up to 2 or 8 MByte capacity, is the cheapest solution. These devices have generally 3.3V supply voltage, but the effort for SPI level translation is acceptable, I think. |
|
|
Skirmitt
Joined: 19 May 2009 Posts: 60
|
|
Posted: Fri Oct 01, 2010 12:49 am |
|
|
The writing doesn't have to be fast. As said, data for it will be delivered over the rs232 port so it will take some time to complete. |
|
|
bkamen
Joined: 07 Jan 2004 Posts: 1615 Location: Central Illinois, USA
|
|
Posted: Fri Oct 01, 2010 7:52 am |
|
|
Skirmitt wrote: | The writing doesn't have to be fast. As said, data for it will be delivered over the rs232 port so it will take some time to complete. |
The look at the company Microchip just acquired called SST.
They have parts that are nice. (I think they'll run 3.3V too)
I recently worked on a PIC32 design that used a 16Mb (2MB) 8pin SOIC SPI based storage that ran up to 80MHz SPI clock speeds.
-Ben _________________ Dazed and confused? I don't think so. Just "plain lost" will do. :D |
|
|
arunb
Joined: 08 Sep 2003 Posts: 492 Location: India
|
RE: |
Posted: Sat Oct 02, 2010 2:15 am |
|
|
Too bad you didn't like SD card, it may not be as complicated as you think, if you use only the basic read/write facility and not the FAT file system implementation.
Also the cards are easily available in any store, you don't need to buy them specially.
Just my suggestion.
thanks
a |
|
|
Skirmitt
Joined: 19 May 2009 Posts: 60
|
|
Posted: Tue Oct 05, 2010 12:14 pm |
|
|
Well after a long time I picked the SD code up again and I succeeded ! Although I still have some questions, I'll ask them in another thread. |
|
|
|