Tool/software: Code Composer Studio
Hello sir!
I not understand below that
Please tell me, why?
My source is read time data from timer ic by i2c.
Timer ic chip address : 0xd0(wirte), 0xd1(read)
I2C_Params i2c_params;
I2C_Params_init(&i2c_params);
i2c_params.bitRate = Board_I2C0_MAXSPEED;
I2C_Handle i2cHandle = I2C_open(Board_I2C0, &i2c_params);
Tx_Buffer[0] = 0x00;
Tx_Buffer[1] = 0x58;
Tx_Buffer[2] = 0x00;
I2C_Transaction i2cTransaction;
i2cTransaction.arg = NULL;
i2cTransaction.writeBuf = Tx_Buffer;
i2cTransaction.writeCount = 2;
i2cTransaction.readBuf = Rx_Buffer;
i2cTransaction.readCount = 3;
i2cTransaction.slaveAddress = 0xD0;
if(I2C_transfer(i2cHandle, &i2cTransaction))
{
GPIO_write(Board_STATE_LED3, 0); // GPIO_write() is operating
GPIO_write(Board_STATE_LED2, 0); // GPIO_write() is operating
}
else
{
GPIO_write(Board_STATE_LED3, 1); // GPIO_write() is operating
GPIO_write(Board_STATE_LED2, 0); // GPIO_write() is operating
}
/*===============================================================*/
I2C_Open() is no problem (It is return NULL)
but after run I2C_transfer(i2cHandle, &i2cTransaction) function, the source run Main_assertHandler(uint8_t assertReason) function
and unlimit loop
Is it problem about H/W?