This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DS90UB914 I2C ACK问题,急谢谢!

 我们现在能看到的现象是,TI 914芯片的I2C总线无ACK应答,致使主控崩溃。

914处于slave工作模式,主控是master模式。

 

从抓到的数据看,有以下规律:

1,主控通过914/913给sensor初始化,会发送一个初始化指令,之后sensor马上进入初始化状态,拉低913  I2C bus的CLK 500mS

2,在sensor拉低913 I2C的CLK之前,sensor已经送出了ACK信号

3,此时,914也会同步拉低I2C 的CLK 650 mS,但是,914在拉低CLK之前,并没有发送ACK信号出来

4,650 mS之后,914 release CLK,主控之后发送ACK的pulse,但914并没有回应ACK

5,因此,主控会有无ACK应答警告,然后会引起主控出现死机的概率。

 

我们有几个问题需要你们的协助:

1,sensor拉低CLK 500 mS,然后再释放CLK,914为什么不会发出ACK信号?

2,914的datasheet里面描述可以设置03寄存器自动产生ACK,我们设置此寄存器之后,还是无法自动产生ACK,上面的问题依然没有改善,

如何才能自动产生ACK信号?

  • 您的应用是这样的吧sensor----913-----914-----host

    那就是有三种通讯方式:1)host与914. 2)host 与913  3)Host与sensor

    您现在的情况是,host和914之间的通讯,没收到ACK信号?

  • Hello Kailyn:

         我的应用是sensor----913-----914-----host

          我现在的情况是HOST和Sensor I2C通讯时914无ACK传送到主控,导致主控会有无ACK应答警告,然后会引起主控出现死机的概率。

          请问为什么913无法通过914传送Sensor的ACK信号到主控? 

    我们有几个问题需要你们的协助:

    1,sensor拉低CLK 500 mS,然后再释放CLK,914为什么不会发出ACK信号?

    2,914的datasheet里面描述可以设置03寄存器自动产生ACK,我们设置此寄存器之后,还是无法自动产生ACK,上面的问题依然没有改善,

    如何才能自动产生ACK信号?


  • 你好,我的情况和你一样,你问题解决了吗