FlexIO in S32K144

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

FlexIO in S32K144

1,776件の閲覧回数
qm1013
Contributor III

hello, NXP:

when I use flexio which is configrated of DMA and I2C. 

FLEXIO_I2C_DRV_MasterSendDataBlocking this function is always return with STATUS_I2C_RECEIVED_NACK. 

when I use Oscilloscope test the I2C bus, the device address is send and receive OK , but the device address is sent twice.

However, when the FLEXIO i2c is set to interrupt mode , the communication is ok.

I don't know why. Could you give me some help?

0 件の賞賛
返信
2 返答(返信)

1,760件の閲覧回数
Omar_Anguiano
NXP TechSupport
NXP TechSupport

Hello

It is possible that the delay between SCL and SDA is not compliant or too marginal with the defined timing. In those cases, unwanted START or STOP conditions can occur in the middle of the I2C pattern sent, causing the slave to get a different message or resulting in a missing acknowledgment.

It would be helpful if you send me the oscilloscope captures and the configuration of the i2c.

If you have more questions do not hesitate to ask me.

Best regards,

Omar

0 件の賞賛
返信

1,415件の閲覧回数
Bosko100
Contributor I

Hi all, I've the same issue. I'm working with S32K144 and SDK 3.0.2. I've configured flexio I2C with S32DS to work with DMA. When I use FLEXIO_I2C_DRV_MasterSendDataBlocking, sometimes device address is sent twice. This issue appear wit communication set to 400Kb. If I reduce communication speed to 100 Kb issue disappear.  Is this expected due to DMA timing limitation? Is this issue fixed into SDK 4.0.0?

0 件の賞賛
返信