Post Go back to editing

AduM2250 not working

I am communicating over I2C between two PIC24FJ microcontrollers (one as master, one as slave) with the AduM2250 in between them.  My schematic is attached.  My software works fine when i communicate between the two microcontrollers without the AduM2250 between them.  I have the master sending the slave some data and then the master requests a response from the slave.  The problem I am having is that communication from the master to the slave works ok (most of the time all the bytes are transferred correctly, but sometimes the slave misses the interrupt or gets hung up).  The main problem is that the master is not receiving the correct data back from the slave.  I will get the first 2-4 bytes back correctly and then the rest is just garbage (and sometimes I only get garbage).  Also sometimes the slave seems to hang up on the TBF flag not being cleared and then it seems to holding the bus low.  Any ideas on what is going on?  I have side 1 as the master and side 2 as the slave.  

IsolatedI2Ccircuit.pdf
Parents
  • Yes, that was the issues - the scope channel I was using for the SCL was on AC coupling... i figured that out later on.  I am still not able to get this darn chip working though.  I removed the chip and tied SCL1 to SCL2 and SDA1 to SDA2 (and tied the ground together) and my I2C communications works beautifully - so I think the software is right.  I have also tried all kind of pull-up resistor values, and the signals look really good.  With the isolator chip I am getting problems where 1) the slave misses the interrupt or 2) the slave either doesn't receive bytes correctly or will receive 2 bytes then latches up (i think the slave is trying to ACK and somehow is holding the data line) or 3) the master sees a bus collission and sets the bus collision bit in my SFR (and transmission stops).  I have tried manipulating the software to do data holding, clock stretching etc retries, etc, and still no luck.  I have attached a picture where the master sends the slave an address byte, then tries to send 3 data bytes but latches up after 2 data bytes.  Any ideas??

Reply
  • Yes, that was the issues - the scope channel I was using for the SCL was on AC coupling... i figured that out later on.  I am still not able to get this darn chip working though.  I removed the chip and tied SCL1 to SCL2 and SDA1 to SDA2 (and tied the ground together) and my I2C communications works beautifully - so I think the software is right.  I have also tried all kind of pull-up resistor values, and the signals look really good.  With the isolator chip I am getting problems where 1) the slave misses the interrupt or 2) the slave either doesn't receive bytes correctly or will receive 2 bytes then latches up (i think the slave is trying to ACK and somehow is holding the data line) or 3) the master sees a bus collission and sets the bus collision bit in my SFR (and transmission stops).  I have tried manipulating the software to do data holding, clock stretching etc retries, etc, and still no luck.  I have attached a picture where the master sends the slave an address byte, then tries to send 3 data bytes but latches up after 2 data bytes.  Any ideas??

Children
No Data