'I2C-memory larger than 2048 bytes (previous: No su'
|> Van: John Duncan <BOM.GOV.AU> j.duncan
> Aan: MITVMA.MIT.EDUPICLIST
> Datum: dinsdag 4 mei 1999 6:49
Please don't forget to specify a Subject when writing something ... I had
to use 1.34 seconds to scan the _contents_ of your message to see if it
would interrest me :-).
But on with the show :
> I am writing a program to read and write data to a Microchip 24LC64. I
> wish to use the random read/write mode. I have the spec sheet for the
> device and I thought I would base my code on the Microchip app note AN567
> . The spec sheet for the EEPROM device shows that the 2 bytes sent after
> the byte containing the address and direction bit byte are the high order
> and low order bytes of the eeprom location to be addresses. However it
> appears that the code presented in the app note sends only 1 byte for the
> address. Can anyone shed any light on this for me please.
You are reading documentation regarding Memory-devices larger than 2048
bytes. Most routines are written for devices _upto_ 2048 bytes. Those can
be handled by the lower 3 bits that specify a I2C device ( ID ) plus the 8
bits that must be send as an adress (totals 11 bits for an internal
adress). For devices with an address-range larger than 2048 bytes this
approach does not work anymore. So, 2 bytes has to be send to address a
specific memory-cell (of 8 bits).
All you have to do is to change the code so that it does not copy the high
3 bits of the address into th ID byte anymore, but write it as an a
High-address-byte after the Low-address-byte is written. Easy isn't it ?
More... (looser matching)
- Last day of these posts
- In 1999
, 2000 only
- New search...