24LC256 Addressing
cjrussell
Posts: 6
Hey guys. I've searched through here and found a few articles that skim the subject, but, couldn't find what I was looking for. This may be a very simplistic question, but I've been racking my brain for 2 days and still have nothing.
I'm trying to read and write to a 24LC256 (Prop's native EEPROM attachment). I'm trying to read/write to a secondary EEPROM, not the one that the Prop stores it's programming to. The chip states its a 32K x 8 EEPROM. In the addressing documentation (http://ww1.microchip.com/downloads/en/DeviceDoc/21203R.pdf) it says the address is 15-bits long. I had originally assumed (bad idea) that the address was byte for byte. If the address can only be 15 bits, this can't be the case. So, does each address equal 8 bytes? IE Address 0x0000 contains 8 single byte entries, and address 0x0001 contains an additional 8? With the code I'm using, this doesn't seem to be the case, as I have to increment my address by 4 every time I write a long value to prevent overwriting the previous long. So if it *is* byte-for-byte addressing, how do you get past the 32k boundary? Or am I just so confused by this entire thing that I've missed a very simple answer? Thanks in advance as always.
I'm trying to read and write to a 24LC256 (Prop's native EEPROM attachment). I'm trying to read/write to a secondary EEPROM, not the one that the Prop stores it's programming to. The chip states its a 32K x 8 EEPROM. In the addressing documentation (http://ww1.microchip.com/downloads/en/DeviceDoc/21203R.pdf) it says the address is 15-bits long. I had originally assumed (bad idea) that the address was byte for byte. If the address can only be 15 bits, this can't be the case. So, does each address equal 8 bytes? IE Address 0x0000 contains 8 single byte entries, and address 0x0001 contains an additional 8? With the code I'm using, this doesn't seem to be the case, as I have to increment my address by 4 every time I write a long value to prevent overwriting the previous long. So if it *is* byte-for-byte addressing, how do you get past the 32k boundary? Or am I just so confused by this entire thing that I've missed a very simple answer? Thanks in advance as always.
Comments