读取的数据不能超过8个字节
2.如果我使用 I2CFIFODataGet (),它有时会被占用。
是否有人可以帮助我解决该计划?
空 I2C0_FIFO_READ (uint16_t u16Len)
{
I2CMasterBurstLengthSet (I2C5_base、u16Len);
I2CMasterSlaveAddrSet (I2C5_base、I2C_SLAVE_ADDR、1);
I2CMasterControl (I2C5_base、I2C_MASTER_CMD_FIFO_BURST_Receive_finish);
}
空 I2C5中断(空)
{
uint8_t i、au8Data[8];
对于(I = 0;I < 8;+I)
{
//au8Data[i]=I2CFIFODataGet (I2C5_base);
I2CFIFODataGetNonBlocking (I2C5_base、au8Data);
}
#if 0
G_u32FIFOReadLen+=8;
if (g_u32FIFOReadLen < g_u32FIFOReadTotal)
{
I2CMasterBurstLengthSet (I2C5_base、8);
I2CMasterControl (I2C5_base、I2C_MASTER_CMD_FIFO_SINGLE_Receive);
}
#endif
I2CMasterIntClear (I2C5_base);
}