I2C通信におけるSDA(Low)固定について

I2C通信において、SDAがLowで固定する現象が発生します。

スレーブ側がLowに引っ張っている感じです。

他のコメントを参考にSCLにクロックを入力することにより復帰しましたが、

復帰しない事もあります。(SDAがLow固定のまま)

この場合の復帰方法があれば教えて頂けませんか。

Parents
  • チョコです。

    スレーブとして何を使われているのでしょうか。デバイスによっては、データシートに対応方法が記載されています。

    普通は、通信中にマスタにリセットがかかったりして通信が中断されたり、マスタ受信で、最後のデータにACKを戻してしまったときなどにそのような状態になってしまいます。

    通常、SDA信号を入力にして、ダミーでSCLを9クロック分送れば、SDA信号はハイになりますが、デバイスによっては、それだけでは不十分と書かれているものがあるようです。そのようなデバイスでは、その対応方法が書かれています。データシートを確認してみてください。

    具体的なデバイスが書かれていないので、コメントできるのは以上の内容だけです。

    以上

Reply
  • チョコです。

    スレーブとして何を使われているのでしょうか。デバイスによっては、データシートに対応方法が記載されています。

    普通は、通信中にマスタにリセットがかかったりして通信が中断されたり、マスタ受信で、最後のデータにACKを戻してしまったときなどにそのような状態になってしまいます。

    通常、SDA信号を入力にして、ダミーでSCLを9クロック分送れば、SDA信号はハイになりますが、デバイスによっては、それだけでは不十分と書かれているものがあるようです。そのようなデバイスでは、その対応方法が書かれています。データシートを確認してみてください。

    具体的なデバイスが書かれていないので、コメントできるのは以上の内容だけです。

    以上

Children
No Data