PDG2 にて生成した RIIC スレーブの送信について

ryokkei と申します。


RX210 のプログラムを作成しています。
周辺機能の設定は PDG2 で生成したコードを使用しているのですが、
RIIC0 のスレーブ動作がうまくいきません。
主な設定は RIIC タブにて、

・I2C フォーマット 標準モード
・スレーブ
・全データの受信完了、スレーブリード要求、ストップ条件検出を関数呼び出しで通知する
・関数によりデータを送信する

です。

リファレンスマニュアルの通り、R_PG_I2C_SlaveMonitor_C0 関数にて
モニタを開始した後、スレーブアドレスへのアクセスを検知して
IIC0SlaveFunc 関数が呼ばれます。その後、Read 要求であることを確認して
R_PG_I2C_SlaveSend_C0 関数にてデータを 254 バイト送信するのですが、
どうもバッファの最初の 1 バイトのみが繰り返し送信されているようです (オシロにて確認)。

リファレンスマニュアルの使用例は変数や関数が間違っていたり、
ちょっと R_IIC_SlaveSendAll 関数のソースを見てみると、コールバック関数が
ない方の処理 (143 行あたり) に、なにやら気になるコメントがあったりと
いったところが気になり、「もしや未完成?」などと勘ぐったりしてしまいます。

このあたりについてなにかご存じの方は、助言いただけるとありがたく存じます。

Parents
  • こんにちは。circleです。
    PDG2のバージョンはいくつになりますか?(最新版はV.2.09のようです)

    「RX210グループ Peripheral Driver Generator リファレンスマニュアル」 Rev.1.04には
    R_IIC_SlaveSendAll の関数が見当たらないようです。
    どちらから入手、または参考にしているコードでしょうか?
Reply
  • こんにちは。circleです。
    PDG2のバージョンはいくつになりますか?(最新版はV.2.09のようです)

    「RX210グループ Peripheral Driver Generator リファレンスマニュアル」 Rev.1.04には
    R_IIC_SlaveSendAll の関数が見当たらないようです。
    どちらから入手、または参考にしているコードでしょうか?
Children
No Data