Part Number: TMS320F28377S
Hi,
I'm trying to figure out how to send a data sequence using I2C.
I'm using the Driverlib library but the "examples" and the datasheet aren't any help how to send and receive a data package.
If I send this;
void PCA9555D_Config (uint32_t Base,uint16_t id,uint16_t inout)
{
I2C_setSlaveAddress (Base,id);
I2C_setConfig(I2CA_BASE, I2C_MASTER_SEND_MODE);
I2C_setDataCount (Base,5);
I2C_sendStartCondition(Base);
I2C_putData(Base, INV_P0);
I2C_putData(Base, 0);
I2C_putData(Base, 0);
I2C_putData(Base, inout && 0x0F);
I2C_putData(Base, (inout >> 8) && 0x0F);
I2C_sendStopCondition (Base);
}
This send out data. But stops after a couple of times. 1 resend it every second.
But after a couple of time the bus lock up. and the TX and RX Fito are full.
Can someone please explain what is stored in the FIFO and why they are filling up?
Thanks
EVS
edit:
Register set at bus lockup:
GRP( I2caRegs )
I2COAR Unsigned / Readable,Writeable 0x0000
I2CIER Unsigned / Readable,Writeable 0x0000
I2CSTR Unsigned / Readable,Writeable 0x1E28
I2CCLKL Unsigned / Readable,Writeable 0x0008
I2CCLKH Unsigned / Readable,Writeable 0x0007
I2CCNT Unsigned / Readable,Writeable 0x0005
I2CDRR Unsigned / Readable,Writeable 0x0004
I2CSAR Unsigned / Readable,Writeable 0x0080
I2CDXR Unsigned / Readable,Writeable 0x0000
I2CMDR Unsigned / Readable,Writeable 0x6E20
I2CISRC Unsigned / Readable,Writeable 0x0000
I2CEMDR Unsigned / Readable,Writeable 0x0001
I2CPSC Unsigned / Readable,Writeable 0x0013
I2CFFTX Unsigned / Readable,Writeable 0x7080
I2CFFRX Unsigned / Readable,Writeable 0x3080
