No exact or substring matches. trying for part
PICList
Thread
'Re i2c memory'
1994\08\24@094449
by
crocontroller discussion list
Sounds great!
could you fax me some details...
max no. of write cycles
max clock speed
prices for full range of memory capacities
ordering details and stockists
Thanks,
Bryan
--
---------------------------------
BRYAN CROTAZ - spam_OUTb.crotazTakeThisOuT
ic.ac.uk
---------------------------------
TECHNICAL MANAGER
Student Television Of Imperial College
Beit Quad, Prince Consort Road
London SW7 2BB
Tel. 071-594-8104
Fax. 071-225-2309 attn. STOIC
'AW: I2C Memory'
1998\03\02@083639
by
A. Voigt
Any ideas, the datasheet doesn't say so but is the I2C memory
open-collector and as such must put in some pull-up resistors???
You DO have to use pullups on BOTH I2C lines, usually 10k - 100k, depending on
speed.
Andreas
'Large I2C memory ???'
1999\05\03@181916
by
Chris Lauren
part 0 658 bytes
<META content=text/html;charset=iso-8859-1 http-equiv=Content-Type>
<META content='"MSHTML 4.72.3110.7"' name=GENERATOR>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2>
<P>Hello there,</P>
<P>I am working on a PIC data logger and I need to store 1 to 2 MB (by 8 bit
word) of data in a non volatile memory, I can use several I2C devices, but I
wonder if anyone out there have seen any large capacity serial EE proms or
serial battery backed up ram chips ? (Access speed is not an issue)</P>
<P>Chris</P></FONT></DIV></BODY></HTML>
</x-html>
1999\05\03@195625
by
Gordon Varney
part 0 16 bytes
</x-html>
1999\05\03@200256
by
ryan pogge
got any links to flash memory manufacturers?
Check out flash memory. 16 and 32 meg is nothing and will act much
like EEprom. Erasing is preformed in banks (1k or more), not bytes,
however you can use pointers to update data locations and change byte
info on the fly. There are techniques out there for doing this.
Gordon Varney
----- Original Message -----
From: Chris Lauren
To: .....PICLISTKILLspam
@spam@MITVMA.MIT.EDU
Sent: Monday, May 03, 1999 5:07 PM
Subject: Large I2C memory ???
Hello there,
I am working on a PIC data logger and I need to store 1 to 2 MB (by
8 bit word) of data in a non volatile memory, I can use several I2C
devices, but I wonder if anyone out there have seen any large capacity
serial EE proms or serial battery backed up ram chips ? (Access speed
is not an issue)
Chris
1999\05\03@201855
by
William K. Borsum
|
<x-rich>At 08:07 AM 5/4/99 +1000, you wrote:
>>>>
<excerpt>
Hello there,
I am working on a PIC data logger and I need to store 1 to 2 MB (by 8 bit
word) of data in a non volatile memory, I can use several I2C devices,
but I wonder if anyone out there have seen any large capacity serial EE
proms or serial battery backed up ram chips ? (Access speed is not an
issue)
Chris
</excerpt>
Yup. They are called Camera memory Chips and a number of folks
manufacture them. Either I2C or SPI interfaces. We build a series of OEM
data loggers and have built in an interface, but haven't gotten around to
implementing it yet since most of our clients don't need more than a few
thousand scans of data. There are also some serial interface PCMCIA
cards out, but I am only going on rumor at this point.
Would appreciate some feedback when you find/implement a solution.
Will have a high speed version implemented in static ram up sometime in
the next couple of months for a new client needing 10K scans per second
for a few minutes of 24-bit data.
Existing systems are on our web page, but the new stuff isn't. All our
stuff is available at the board level if something fits.
kelly
********************************************************************************
****
All legitimate attachments to this email will be clearly identified in the text.
Please note our new address and phone numbers.
William K. Borsum, P.E.
DASCOR
P.O.Box 462885
Escondido, CA 92046-2885
V&M&F) 760-796-7785
Direct) 760-796-7788
<<borsum
KILLspamdascor.com>
</x-rich>
1999\05\03@224345
by
Mark Willis
|
Use an array of scads of 24LC256's, is one possibility? (Eww, I know
<G>) (Scary that there're no datasheets on the Microchip text web site
for these, yet Digi-Key has them for sale...)
Another possibility, not I2C but possibly will help; Take a look at
the Atmel AT45D081 and/or AT45D161, off of:
(D081): http://www.atmel.com/atmel/acrobat/doc0871.pdf
(D161): http://www.atmel.com/atmel/acrobat/doc1081.pdf
Both are available in 5V and 2.7V versions, paged, 10+ mHz serial
clocking rate, basically designed for SPI not I2C but you can get at
them with just 5 PIC pins easily enough, and you can get samples;
$10ish for the D081. They're in "megabit" sizes, so the D081 is 8
megabit i.e. 1 megabyte; 264 bytes/page so you have room for Error
Correction or the like, if desired. And two nice 264 byte registers in
there for your use as buffers. (The D161 may be faster & have larger
pages, IIRC, I'm not using it though.) I can talk to you more off-list
on it.
Mark
{Quote hidden}> Chris Lauren wrote:
>
> Hello there,
>
> I am working on a PIC data logger and I need to store 1 to 2 MB (by 8
> bit word) of data in a non volatile memory, I can use several I2C
> devices, but I wonder if anyone out there have seen any large capacity
> serial EE proms or serial battery backed up ram chips ? (Access speed
> is not an issue)
>
> Chris
1999\05\04@011835
by
Lynx {Glenn Jones}
Atmel has 2Mbyte (if i remember right) that use SPI. They are flash.
------------------------------------------------------------------------------
A member of the PI-100 Club:
3.1415926535897932384626433832795028841971693993751
058209749445923078164062862089986280348253421170679
On Tue, 4 May 1999, Chris Lauren wrote:
> Hello there,
>
> I am working on a PIC data logger and I need to store 1 to 2 MB (by 8 bit word
) of data in a non volatile memory, I can use several I2C devices, but I wonder
if anyone out there have seen any large capacity serial EE proms or serial batte
ry backed up ram chips ? (Access speed is not an issue)
>
> Chris
>
>
1999\05\04@110838
by
Andy Kunz
part 0 958 bytes
x-html>
At 08:07 AM 5/4/99 +1000, you wrote:
Hello there,
I am working on a PIC data logger and I need to store 1 to 2 MB (by 8 bit
word) of data in a non volatile memory, I can use several I2C devices,
but I wonder if anyone out there have seen any large capacity serial EE
proms or serial battery backed up ram chips
Atmel has a Serial DataFlash product which can fill the bill, except it
is SPI rather than I2C. Several megs per chip, though, and the
price is good.
Andy
==================================================================
==================================================================
1999\05\04@123059
by
Craig Lee
Shame Andy for that HTML post!
I'm more interested in a removable module like Sandisks or something PCMCIA.
Has anyone seen, not just heard the rumours, of something like this?
Craig
{Original Message removed}
1999\05\04@164211
by
Mark Willis
For 2Mb Compact Flash modules for $15 apiece or so, look on eBay, I
don't see the guy right now but one guy's had bunches of them (I bought
4, can find his e-mail address, use them instead of Floppy disks for the
PC110's here.) Many other people sell 2Mb and larger CF modules.
CF can be used in a PCMCIA slot, CF's a lot smaller & will run 3.3V or
5V, which is NICE. 50-pin interface, though, not quite as simple as SPI
(basically an IDE interface, I have the pinout here somewhere.) Will
happily talk more off-list about it if you want!
Mark
Craig Lee wrote:
>
> Shame Andy for that HTML post!
>
> I'm more interested in a removable module like Sandisks or something PCMCIA.
>
> Has anyone seen, not just heard the rumours, of something like this?
>
> Craig
>
> {Original Message removed}
1999\05\04@171608
by
Andy Kunz
At 10:27 AM 5/4/99 -0600, you wrote:
>Shame Andy for that HTML post!
Sorry Craig, but my e-mailer doesn't originate HTML. I turned it off. If
somebody SENT me e-mail, it might have replied that way, though, so go
smack him instad.
>I'm more interested in a removable module like Sandisks or something PCMCIA.
>
>Has anyone seen, not just heard the rumours, of something like this?
You can buy Sandisk connectors, so why don't you plunk one of them and an
Atmel Serial DataFlash on it?
Andy
==================================================================
Montana Design Tech Support - http://www.montanadesign.com
==================================================================
'[PICLIST] I2C Memory'
2001\09\26@031654
by
Adlam Frank
I just want to know if anyone knows of a manufacturer that manufactures a
64K byte I2C (or larger) EEPROM with enable lines. I know ST
Microelectronics will start producing the M24512 at the end of this year,
but I need the memory before then.
Frank Adlam
Senior Lecturer
Faculty of Electrical and Mechanical Engineering
Port Elizabeth Technikon
Port Elizabeth
South Africa
--
http://www.piclist.com hint: The PICList is archived three different
ways. See http://www.piclist.com/#archives for details.
'[PIC]: 64kb I2C Memory available?'
2001\09\26@043234
by
Adlam Frank
I just want to know if anyone knows of a manufacturer that manufactures a
64K byte I2C (or larger) EEPROM with enable lines. I know ST
Microelectronics will start producing the M24512 at the end of this year,
but I need the memory before then. Maybe somebody used it in a current
project. Thanks for the help.
Frank Adlam
Senior Lecturer
Faculty of Electrical and Mechanical Engineering
Port Elizabeth Technikon
Port Elizabeth
South Africa
--
http://www.piclist.com hint: The PICList is archived three different
ways. See http://www.piclist.com/#archives for details.
'[PICLIST] I2C Memory'
2001\09\26@043246
by
Peter Grey
At 09:08 AM 9/26/2001 +0200, you wrote:
Have a look at the Atmel range. They do a 1 megabit EEPROM.
Peter
{Quote hidden}>I just want to know if anyone knows of a manufacturer that manufactures a
>64K byte I2C (or larger) EEPROM with enable lines. I know ST
>Microelectronics will start producing the M24512 at the end of this year,
>but I need the memory before then.
>
>Frank Adlam
>Senior Lecturer
>Faculty of Electrical and Mechanical Engineering
>Port Elizabeth Technikon
>Port Elizabeth
>South Africa
>
>--
>
http://www.piclist.com hint: The PICList is archived three different
>ways. See
http://www.piclist.com/#archives for details.
>
--
http://www.piclist.com hint: The PICList is archived three different
ways. See http://www.piclist.com/#archives for details.
2001\09\26@050220
by
Martin Hill
Not in I2C they don't, although they do in SPI. They do a 512kb i2c, which
is the largest I have seen.
Martin
{Original Message removed}
2001\09\26@113425
by
Bryan
2001\09\27@035228
by
Adlam Frank
Is the part in production? We just need about four pieces for prototyping
purposes. Do IIC and SPI devices in 1 M-bit. Will ask for samples - Thanks
all!
{Original Message removed}
'[EE:] [PIC:] CCS - Auto baudrate && I2C memory tim'
2003\11\28@093454
by
Yofumo Mimoto
Hello !
Here i am again ! :-D Well, the thing is that i am trying to build an
iso 7816 data analyzer, so, when communications start baudrate is 9600
to get the ATR, but in ATR is negociated a new baudrate, then if i want
to log i need to change baudrate, so could i do this using CCS, how ?
The question is that i am able to change baudrate from usart while
program is running, and how to do it ?
Other question is that let's say i am working with a 28800 bauds, and
i want all data that comes in by usart to storage it into a i2c memory
(24LC512) this things are slow, and usart works slow, but would there be
enough time to sample and storage before next sample ?
Thank you very much !
--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads
2003\11\28@153818
by
Paul Hutchinson
To change baud in CCS "C" simply issue a new "#use rs232" directive in the
code.
As to the EEPROM write speed vs. UART speed problem, yes, it may be a
problem. You will need to do the math to determine if it is a problem.
Buffering the data in RAM and then using the page write mode of the EEPROM
may be enough to overcome speed differences.
Paul
> {Original Message removed}
'[SX] 24LC16B I2c memory interface'
2005\08\14@031837
by
jgjonolan/a
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, jgjonola wrote:Hey all, am I correct in thinking that i can only put 1 24LC16B eeprom chip on a i2c bus? Since I noticed that on the datasheet (after i ordered the chips), the A0-A3 pins are not connected. If this is true, I cant see a way to add anything else to this bus. If so, how would i send or recieve data from a specific chip or device? Is there a place that has more info on this? Right now, while I am learning, I am using the Virtual Perf I2CMM_UART_TMR.src... (attached)
Thanks,
John Gjonola
---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
2005\08\14@044344
by
g_daubachn/a
|
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, g_daubach wrote:Hey,
you can find the datasheet for the 24LC16 here: http://ww1.microchip.com/downloads/en/DeviceDoc/21703E.pdf
The A2...A0 pins allow to communicate with up to eight 24LC16 devices, all connected to the same I²C bus. Addressing of the devices is performed by sending a control byte via the bus.The control byte is composed by the fixed bits 1010, followed by three address bits, followed by the read/*write bit. A 24CL16 with all three address pins connected to Vss would acknowledge the control byte 1010000x, and one with A0 connected to Vcc and A1, A2 connected to Vss would acknowledge the control byte 1010001x, etc. As long as you only have one EEPROM on the bus, simply connect all address pins to Vss, and send 1010000x as the control byte.
---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290#m84297
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
2005\08\14@055345
by
naten/a
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, nate wrote:Gunther,
Page 11 of said datasheet states that A0, A1, and A2 are not connected in this device. This would indicate to me that the chip address feature of IC2 cannot be used with this device. Please correct me if I'm wrong.
This doesn't mean that you couldn't use more than 1 chip, simply that you cannot use the multiple IC2 address protocall. You could use a decoder chip and wrtie some code that would select the proper memory chip.
Nate
---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290#m84300
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
2005\08\14@090106
by
g_daubachn/a
|
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, g_daubach wrote:Nate,
this is strange. I did not use the 24LC16 so far but "smaller" devices, like the 24LC02. In these datasheets they also state that the address pins are not connected. But I could successfully verify that the chips decode the status of the address pins. Although, I'm using 24LC02s made by ST and not by Microchip. Maybe, this explains the difference.
On the other hand, on page 6 where the control byte is explained, they say that the three bits in the control byte are used to select one of the eight 256 word blocks of the memory. As the address following the control byte is only 8 bits wide, three additional bits are required to cover the fill address space of 2048 bytes. Seems as if there actually can only be one 24LC16 on a bus.
Perhaps you consider using 24LC64 chips instead. They definitely allow for eight devices on a bus, and they have two address bytes following the control byte in order to address the full range of the memory. In the end, this solution my be even cheaper as one 24LC64 replaces four 24LC16 chips, and there is no need for some "tricky" decoding. I use the 24LC64 in some of my SX applications with no problems.
---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290#m84318
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
2005\08\14@091346
by
g_daubachn/a
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, g_daubach wrote:Nate,
I was just curious, and got the ST datasheet for their 24C01...16 EEPROMs from http://www.st.com/stonline/products/literature/ds/5067/m24c16-w.pdf. Their 01 and 02 devices actually have the three address bits decoded, the 04 device has two bits decoded, the 08 device just one, and the 16 device none at all. Where none of the Micochip equivalents do address decoding at all.---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290#m84321
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
2005\08\14@121654
by
jgjonolan/a
|
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, jgjonola wrote:So that means, not only is it limited to only one of those devices, but only one of any device, right? Let's say I have an sx set up as a slave on that same bus, and i would like to send some info to only the sx, I could set the address to some abritrary number, but the eeprom would answer to any address, correct? So it would be getting all of the bytes sent to it also. I realise that i could probably set the write protect pin of the eeprom, but i would rather just get a different chip. I am looking to have possible 4 sx's set up as slaves, and 1 eeprom and one rtc all set up on the same i2c bus (if thats possible). Thanks for your help!
John Gjonola
---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290#m84345
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
2005\08\14@132423
by
g_daubachn/a
|
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, g_daubach wrote:John,
fortunately, this is not the case. The first four bits in the EEPROM's control word are 1010, so let your slave SXes just decode some other bit pattern that is unique on the bus, i.e. not decoded by any other device plus three bits with patterns unique to each SX, for example 1111000x 1111001, 1111010, up to 1111111x, and you can have eight SXes acting as slaves on the bus when the master sends a control byte starting with 1111 in this example. The EEPROM will not answer because it only "listens" to commands starting with 1010.
A while ago, I have developed a system similar to this with up to 5 SXes on one bus. In this system, each of the SXes could act as master and slave, therefore I also had to handle bus arbitration but it worked nicely in the end.
---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290#m84355
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
2005\08\14@133956
by
naten/a
|
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, nate wrote:John,
The bottom line is: If you want to use an IC2 bus with more than one device (SX or EEPROM) and use the defined IC2 protocall, all the devices on the bus need to be able to decode the address part of the IC2 protocall. Using the write protect pin of the memory will not prevent the memory from distorting bus data when a slave SX is asked to do a read function.
From Gunther's ST information, you could have maximum (4) 2KB EEPROM devives and (4) slave SX devices on the same bus using strictly the IC2 protocall (which only gives you 8KB of memory).
An alternative would be to use the IC2 protocall, but have 2 busses. This obviously will take a little more work the coding department.
Just out of curiosity, why so many SX slaves?
Nate
---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290#m84358
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
2005\08\14@201033
by
jgjonolan/a
In SX Microcontrollers, SX/B Compiler and SX-Key Tool, jgjonola wrote:Beautiful! That sounds great. Thanks guys!
John Gjonola
---------- End of Message ----------
You can view the post on-line at:
http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=84290#m84383
Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com
The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2005 (http://www.dotNetBB.com)
'[EE] 3V, fast I2C memory'
2005\09\14@063929
by
Vasile Surducan
Hi piclisters,
I need a fast 3V, 512kb (or 1Mb) serial (preferable I2C memory).
I found 24FC512, with 5mS write cicle. Do you know something available
with a faster writting cycle ? Maybe a serial SRAM ?
thank you,
Vasile
2005\09\14@080005
by
Mike Harrison
On Wed, 14 Sep 2005 13:39:29 +0300, you wrote:
>Hi piclisters,
>
>I need a fast 3V, 512kb (or 1Mb) serial (preferable I2C memory).
>I found 24FC512, with 5mS write cicle. Do you know something available
>with a faster writting cycle ? Maybe a serial SRAM ?
>
>thank you,
>Vasile
You may find faster parts in SPI - e.g. ST M25P serial flash parts - 256 byte page write in 1.5ms
Beware long erase times though.
2005\09\14@082425
by
Michael Rigby-Jones
|
>-----Original Message-----
>From: piclist-bounces
spam_OUTmit.edu [@spam@piclist-bouncesKILLspam
mit.edu]
>Sent: 14 September 2005 11:39
>To: Microcontroller discussion list - Public.
>Subject: [EE] 3V, fast I2C memory
>
>
>Hi piclisters,
>
>I need a fast 3V, 512kb (or 1Mb) serial (preferable I2C
>memory). I found 24FC512, with 5mS write cicle. Do you know
>something available
>with a faster writting cycle ? Maybe a serial SRAM ?
>
>thank you,
>Vasile
FRAM is the way to go for fast (zero wait) writes:
http://www.ramtron.com/doc/Products/serial.asp
Regards
Mike
=======================================================================
This e-mail is intended for the person it is addressed to only. The
information contained in it may be confidential and/or protected by
law. If you are not the intended recipient of this message, you must
not make any use of this information, or copy or show it to any
person. Please contact us immediately to tell us that you have
received this e-mail, and return the original to us. Any use,
forwarding, printing or copying of this message is strictly prohibited.
No part of this message can be considered a request for goods or
services.
=======================================================================
2005\09\14@083329
by
Stef Mientki
hi Vasile,
look for ferro ram, e.g.
www.ramtron.com/doc/Products/overview.asp
they are really fast: no write delay !!
cheers,
Stef
Vasile Surducan wrote:
{Quote hidden}>Hi piclisters,
>
>I need a fast 3V, 512kb (or 1Mb) serial (preferable I2C memory).
>I found 24FC512, with 5mS write cicle. Do you know something available
>with a faster writting cycle ? Maybe a serial SRAM ?
>
>thank you,
>Vasile
>
>
>
2005\09\14@083817
by
Marc Nicholas
I'm waiting for some samples right now of both the I2C and SPI...can't
wait as lots of people see to say good things about the Ramtron parts! :-)
-marc
On Wed, 14 Sep 2005, Stef Mientki wrote:
{Quote hidden}> hi Vasile,
>
> look for ferro ram, e.g.
> www.ramtron.com/doc/Products/overview.asp
> they are really fast: no write delay !!
>
> cheers,
> Stef
>
>
> Vasile Surducan wrote:
>
>> Hi piclisters,
>>
>> I need a fast 3V, 512kb (or 1Mb) serial (preferable I2C memory).
>> I found 24FC512, with 5mS write cicle. Do you know something available
>> with a faster writting cycle ? Maybe a serial SRAM ?
>>
>> thank you,
>> Vasile
>>
>>
> --
2005\09\14@101745
by
Bob Axtell
Vasile Surducan wrote:
>Hi piclisters,
>
>I need a fast 3V, 512kb (or 1Mb) serial (preferable I2C memory).
>I found 24FC512, with 5mS write cicle. Do you know something available
>with a faster writting cycle ? Maybe a serial SRAM ?
>
>thank you,
>Vasile
>
>
>
I think you are not studying the specs closely. For the 24LC512, the 5mS
is MAX; I get
about 3mS normally.
The other thing is that you can place 128 bytes into a write buffer so
that 3mS is needed
for the whole 128 bytes. So It writes faster than you think.
If you have room, use two RAMTRON SPI memories, they are 32Kx8 each, so
you can reach
65K without ANY waits to flash the parts.
--Bob
--
Note: To protect our network,
attachments must be sent to
KILLspamattachKILLspam
engineer.cotse.net .
1-866-263-5745 USA/Canada
http://beam.to/azengineer
'[EE] Re: 3V, fast I2C memory'
2005\09\15@014753
by
Vasile Surducan
On 9/14/05, Bob Axtell <RemoveMEengineerTakeThisOuT
cotse.net> wrote:
> Vasile Surducan wrote:
>
> >Hi piclisters,
> >
> >I need a fast 3V, 512kb (or 1Mb) serial (preferable I2C memory).
> >I found 24FC512, with 5mS write cicle. Do you know something available
> >with a faster writting cycle ? Maybe a serial SRAM ?
> >
> >thank you,
> >Vasile
> >
> >
> >
> I think you are not studying the specs closely. For the 24LC512, the 5mS
> is MAX; I get about 3mS normally.
Normally in the extended temperature range or at 20-30 C ? I'm
affraid about the malfunctions at 50-60C where probably will need to
work.
>
> The other thing is that you can place 128 bytes into a write buffer so
> that 3mS is needed
> for the whole 128 bytes. So It writes faster than you think.
This is a good ideea indeed. I've seen some 1Mb-32Mb SPI devices
working like this with an internal SRAM buffer.
> If you have room, use two RAMTRON SPI memories, they are 32Kx8 each, so
> you can reach
> 65K without ANY waits to flash the parts.
>
Thank you all,
Vasile
'[PIC]24LC64 I2C memory?'
2006\04\10@221818
by
Pat Smith
Ayone got any example code to read and write to this 64K memory.
This is a home learning project for fun.
2006\04\10@224647
by
Jinx
> Ayone got any example code to read and write to this 64K memory.
> This is a home learning project for fun.
Using what ? Bit-bang or MSSP ?
2006\04\10@232709
by
Pat Smith
2006\04\10@235101
by
Herbert Graf
On Mon, 2006-04-10 at 21:18 -0500, Pat Smith wrote:
> Ayone got any example code to read and write to this 64K memory.
> This is a home learning project for fun.
My carmon project reads and writes to a 24 series EEPROM in bit bang
mode:
http://repatch.dyndns.org:8383/pic_stuff/carmon
Thanks, TTYL
2006\04\11@001209
by
Bob Axtell
Here is a piece of working bit-banged code for FM24C256 (32X x 8).
This came from PIC16F88 but it will work anywhere. Ripped right
out of active code.
; general equates
SDA equ 1
SCL equ 2
; slave address
FRAM equ h'A0' ;FM24CL64 slave address
; bunch of temp registers
tmp8, etc etc
;*******************************************
; I2C Routines: Note: operates in MAIN
; 1. tries 4 times before abandoning the pass
; 2. Works on any PIC12/PIC16/PIC18 port
; that uses TRIS?
; 3. This is idealized for RAMTRON devices; for
; MicroChip EEROM devices, allow 4mS after
; writing the byte or group of bytes. There
; are restrictions about how many bytes can
; be written, and what the addresses have to
; be. Read datasheet closely or use Ramtron
; devices.
;*******************************************
;*******************************************
; I2C Write Routines
;*******************************************
f2wrn:
movwf tmp8
movlw FRAM ;FRAM Selection Bits
movwf sadr
movf FSR,w
movwf h24fsr
movf tmp8,w
;*******************************************
; write w bytes fr @FSR to device @HL_bytes
;*******************************************
bank0
bsf flags,i2cFLG ;tells interrupt that I am using SCK
clrwdt
movwf i2cnt
call Bstrtx ; Generate START bit
goto i2wry
i2wlp:
call restart
bcf flags,i2
i2wry:
movf sadr,W
call TX ; Output SLAVE data address
btfsc flags,i2 ; Check for error
goto i2wlp ; wait until write cycle done
movf INTCON,w
movwf tmp8
bcf INTCON,GIE
movf H_byte,w ; Put internal HI address onto bus
call TX ; Output WORD address. Check ACK.
btfsc flags,i2 ; Check for error
goto BSTOPw ; Generate STOP bit
movf L_byte,w ; Put internal LO address onto bus
call TX ; Output WORD address. Check ACK.
btfsc flags,i2 ; Check for error
goto BSTOPw ; Generate STOP bit
movf i2cnt,w
movwf h24cnt
i2wr1:
movf INDF,w ; Move DATA
call TX ; Output DATA and detect acknowledgement
btfsc flags,i2 ; Check for error
goto BSTOPw ; Generate STOP bit
incf FSR,f
decfsz h24cnt,f
goto i2wr1
call BSTOP ; Generate STOP bit
goto i2exit
;********************************************
; I2C Read Routines
;********************************************
f2rdn:
movwf tmp8
movlw FRAM ;FRAM select
movwf sadr
movf tmp8,w
;********************************************
; read w bytes to @FSR fr device @H_byte/L_byte
;*******************************************
i2rdn:
bank0
bcf flags3,write
bsf flags,i2cFLG
clrwdt
movwf i2cnt
call Bstrtx ; Generate START bit
goto i2rdy
i2rlp:
call restart
bcf flags,i2
i2rdy:
movf sadr,w
call TX ; Output SLAVE data address
btfsc flags,i2 ; Check for error
goto i2rlp ; wait until write cycle done
movf INTCON,w
movwf tmp8
bcf INTCON,GIE
movf H_byte,w ; Put HI data address onto bus
call TX ; Output WORD address. Check ACK.
btfsc flags,i2 ; Check for error
goto BSTOPr ; Generate STOP bit
movf L_byte,w ; Put HI data address onto bus
call TX ; Output WORD address. Check ACK.
btfsc flags,i2 ; Check for error
goto BSTOPr ; Generate STOP bit
;
call restart
movf sadr,w ; slave adr
iorlw 1 ; Specify READ mode (R/W = 1)
call TX ; Output SLAVE address
btfsc flags,i2 ; Check for error
goto BSTOPr ; Generate STOP bit
movf i2cnt,w
movwf h24cnt
i2rd1:
; RECEIVE eight data bits subroutine
; exit = w has data
bsf tmp2,3 ; 8 bits of data
RXLP:
call BITIN ; get data
rlf tmp,f ; install bit, LS last
decfsz tmp2,f ; 8 bits?
goto RXLP
clrwdt
bsf status,c ; try no ack
decfsz h24cnt,w ; last one?
bcf status,c ; needs ack
call BITOUT
movf tmp,w ; data ready
movwf indf ; Save data into buffer
incf fsr,f ; next char
decfsz h24cnt,f
goto i2rd1
call BSTOP ; Generate STOP bit
i2exit:
btfsc tmp8,GIE
bsf INTCON,GIE
return
; TRANSMIT 8 data bits subroutine in tmp
TX:
movwf tmp
bsf tmp2,3 ; 8 bits of data
TXLP:
rlf tmp,f ; Shift data bit out.
call BITOUT ; Serial data out
decfsz tmp2,f ; 8 bits done?
goto TXLP ; No.
clrwdt
call BITIN ; Read acknowledge bit
btfsc status,c ; acknowledgement?
bsf flags,i2 ; not received
return
; Single bit receive from I2C to PIC
; data in carry
BITIN:
bank1
bsf trisa,SDA ; Set SDA for input
bk0
bsf porta,SCL ; Clock high
bcf status,c ; def=0 (has ack)
btfsc porta,SDA ; Read SDA pin, for ACK low
bsf status,c ; no ack detected
call wt_
bcf porta,SCL ; finish bit in case
goto wt_
; Single bit data transmit from PIC to I2C
; Input= carry bit
BITOUT:
btfss status,c
goto BIT0
bsf porta,SDA ;drive it high
goto CLK1
BIT0:
bcf porta,SDA ;drive low
CLK1:
bank1
bcf trisa,SDA ; Output bit 0
bk0
bsf porta,SCL
call wt_
bcf porta,SCL ;on low
goto wt_
; start but also set loop count
Bstrtx:
clrf h24lp
bsf h24lp,2 ;4x max
Bstrty:
bcf flags,i2 ;no error yet
clrf tmp2
; START bit generation routine
;Generate START bit (SCL is high while SDA goes from high to low transition)
; quiscent state is both high....
BSTART:
bsf porta,SCL ;in case not high
bank1
bcf trisa,SDA ;both driven
bk0
call wt_
bcf porta,SDA ;SDA=lo = START CDX
call wt_
bcf porta,SCL
; for 8Mhz clock... For 4Mhz, remove the first one;
; for 20Mhz clock, double the this wait
wt_:
goto $+1
goto $+1
return
; HALFSTART
RESTART:
; a RESTART, i.e. no STOP, followed by START
; upon entry SCL is always low.
bsf porta,SDA ;force hi
bank1
bcf trisa,SDA ;no stop condx
bank0
bsf porta,SCL ;both now hi
call wt_
bcf porta,SDA
call wt_
bcf porta,SCL ;SDA lo then SCL lo START
goto wt_
; write stop with test first
BSTOPw:
call BSTOP
movf h24lp,f
btfsc status,z
goto i2exit
decf h24lp,f
movf h24fsr,w
movwf FSR
call Bstrty
goto i2wry
; read stop with test first
BSTOPr:
call BSTOP
movf h24lp,f
btfsc status,z
goto i2exit
decf h24lp,f
movf h24fsr,w
movwf FSR
call Bstrty
goto i2rdy
; STOP bit generation routine
;Generate STOP bit (SDA goes from low to high during SCL high state)
;and check bus conditions.
BSTOP:
; SCL is now low, always.
bcf porta,SDA ;force low
bank1
bcf trisa,SDA
bk0 ;both low
call wt_
bsf porta,SCL ;scl high
call wt_
bsf porta,SDA ;SDA=hi = STOP CDX
call wt_
bk1
bsf trisa,SDA ;SDA=OC
bk0
bcf flags,i2cFLG
return
HOLLER if you missed anything.
--Bob
Pat Smith wrote:
{Quote hidden}>Bit bang
>
>-----Original Message-----
>From:
RemoveMEpiclist-bounces
TakeThisOuTmit.edu [
piclist-bouncesEraseME
.....mit.edu] On Behalf Of
>Jinx
>Sent: Monday, April 10, 2006 9:46 PM
>To: Microcontroller discussion list - Public.
>Subject: Re: [PIC]24LC64 I2C memory?
>
>
>
>
>
>>Ayone got any example code to read and write to this 64K memory.
>>This is a home learning project for fun.
>>
>>
>
>Using what ? Bit-bang or MSSP ?
>
>
More... (looser matching)
- Last day of these posts
- In 2006
, 2007 only
- Today
- New search...