PDG2で生成されるI2C通信関数について

PDG2が生成するI2C通信の送信関数"R_PG_I2C_MasterSend_CX"について、第二パラメータのスレーブアドレスに0x55を設定してもSDAのラインでは0x54で通信してしまうようです。
EEPROMへの通信は最後尾ビットがLowで間違いないかと思うのですが、他I2Cデバイスに対応できるようにする方法はないでしょうか?
PDG2が生成するI2C通信関数はEEPROM用途でしか考慮されていないのでしょうか?

Parents
  • PDG2のマニュアルには以下のように書かれています。

     「 スレーブアドレスは、7ビットアドレスの場合は指定した値の7~1ビットが出力されます。

    スレーブアドレスが0x55なら、0xAAを指定するという事です。

    I2Cのスレーブアドレス指定ではLSBはアドレスフェーズのRnWビット用に空けてある事が多いのでこういう仕様なのだと思います。

  • 御回答有難うございます。もう一度データシートを読み直します。
  • Samuraiさん、こんにちは。NoMaYと申します。

    以前に私が関わったスレッドでボッシュさんのBMP180気圧センサのデータシートを見たことがあるのですが、以下のようになっていました。もし差支えが無いようでしたら、ご使用予定のデバイスの名前やデータシートのURLなど教えて頂くことは出来ませんか?

    BMP180データシートPDF - Bosch
    画面コピー


  • 他の方も書かれている通り、マスター送信において、最初にスレーブアドレスを送信するときb7~b1がアドレスで、b0が送信/受信を示すビットになります。

    送信なのでb0に0が自動設定されると思います。

    これがマスター受信の場合は、b0が1になります。

Reply
  • 他の方も書かれている通り、マスター送信において、最初にスレーブアドレスを送信するときb7~b1がアドレスで、b0が送信/受信を示すビットになります。

    送信なのでb0に0が自動設定されると思います。

    これがマスター受信の場合は、b0が1になります。

Children
No Data