6 24xx512 eeproms on same bus, only address 0 works

andrewpro

New Member
As the title says, I'm only getting the first chip (address 0) to work in a string of 6 24xx512 eeproms (3 are 24AA512 and 3 are 24LC512). I've used up to two before without any problems, but now that I've got all 6 together I can only access address 0 (10100000). I can write and read fine from it, and none of the others. They all just return 255 on a read. I've tried writing and reading at 100 and 400khz (well, I guess...I'm using i2cfast16 and i2cslow16).

The code I'm using is along these lines:


i2cslave %10100000, i2cslow16, i2cword
b0=%11111111
b1=%00000001
writei2c 0,(b0,b1)
b0=0
b1=0
pause 10000
readi2c 0,(b0,b1)
sertxd (#b0, " ", #b1,cr,lf)


I'm then just manually changing the address and reloading the program (I'm just testing the memory on the board I just finished).

It's all addressed right hardware wise and the connections are all correct with respect to wp (tied to 0), vdd, vss, and sda/scl.

I cant figure out what's going on. The other chips all have worked fine as recently as yesterday (I tested them all a couple at a time to make sure they worked before I put them on the board) and I dont see how I could have fried them, so where am I going wrong?

Any help would be greatly appreciated.

--Andy P

Edited by - andypro on 8/31/2005 5:28:47 AM
 

Technical

Technical Support
Staff member
It should work fine as long as you change the slave address correctly e.g. for device at address 1

%10100010

Make sure you are not connecting A2 to A0 'back to front' (ie 100 rather than 001)
 

andrewpro

New Member
it's all connected right. ARGH. I double and tripple checked again to make sure. I'm addressing right in the program. This is making me bang my head on the table!! I get the same response from an empty socket, so it seems it's not even addressing the chip at all. Any quirks that I'm missing?

--Andy P
 

andrewpro

New Member
Uhg....after further testing...all the chips themselves are working, and sockets 7,8, and 1 are working fine. I actually added sockets 7 and 8 after the fact, so the order goes 7-8-1-2-3-4-5-6. Something is screwing up sockets 2 through 6, and I'm gonna bust out the microscope and start checking things as it's got to be a problem with my board. ARGH.

--Andy P

Edited by - andypro on 8/31/2005 9:05:42 PM
 
Top