こんにちは。
PDG2.09.000を使用し、RSPI0(マスタ)とRSPI1(スレーブ)のSPI(4線式)通信をしようとしています。「RX63N/RX631グループ Peripheral Driver Generator リファレンスマニュアル」を参照しながらプログラムを作成したのですが、転送完了の通知関数へ飛んできません。(エラー通知関数にも飛んできていません)何が原因か悩んでいます。御教授いただきたく、宜しくお願い致します。
シンプルにRSPI0の転送のみを実行しようとしましたが、同様の結果でした。
以下、PDGの設定とプログラムになります。
【PDGの設定】・RSPI0をSPI動作マスタモードで設定・転送方法に"転送完了、エラー検出を関数呼び出しで通知する"を設定・通知関数名にSpi0IntFuncを指定・コマンド数:1、フレーム数:4・コマンド0のビット長:8・PA5をRSPCKA端子・PA6をMOSIA端子・PA7をMISOA端子・PC4をSSLA0端子
#define BUFF_SIZE (4)
const uint32_t send_buf[BUFF_SIZE] ={ 0x11, 0x22, 0x33, 0x44}; /* send data from RSPI0 to RSPI1 */
uint32_t dummy_rcv[BUFF_SIZE];
void main(void){ R_PG_Clock_Set(); /* Setting Clock */ R_PG_RSPI_Set_C0(); /* Setting RSPI0 */ R_PG_RSPI_SetCommand_C0(); /* Setting command */
R_PG_RSPI_StartTransfer_C0((uint32_t *)send_buf, dummy_rcv, 1);
while(1);}
void Spi0IntFunc(void){ 処理}
(参考)
試しに転送方法に"転送完了まで待つ"を指定した場合、エミュレータで確認すると、R_PG_RSPI_TransferAllData_C0関数内でIR40(SPTI0)のフラグ確認でずっとループしているように見えました。"転送完了まで待つ"の場合、以下を実行し、コマンドシーケンス完了までウェイトするようですが、初めの送信割り込み要求が発生していないのでしょうか?
R_PG_RSPI_TransferAllData_C0((uint32_t *)send_buf, dummy_rcv, 1);
triangleさん、こんにちは。NoMaYです。一件落着、ですね。それで、すみません、私の我侭なのですが、少し余談を追加させて下さい。[余談]以下のFAQにはPDG2が生成したソースが呼び出しているライブラリ(RPDL)のデバッグ方法について書かれているのですが、ライブラリのソースをCS+に登録する方法としては、このFAQに書かれているようにソースを1つずつCS+に登録する方法の他に、以下の画面コピーのようにフォルダ丸ごとドラッグ&ドロップでCS+に登録する方法もあります。FAQ 1010977 : Peripheral Driver Generator V.2が生成する関数が呼び出している、ライブラリ(Renesas Peripheral Driver Generator Library)の内部処理をCS+またはHigh-performance Embedded Workshop でデバッグすることはできませんか?CS+の右ボタンメニューから“外部ソース(ビルド対象外)”という新しいカテゴリを追加するWindowsエクスプローラで表示させたライブラリのソースのフォルダ“RX63N”を、先程追加した“外部ソース(ビルド対象外)”へ、ドラッグ&ドロップするCS+のプロパティで、先程ドラッグ&ドロップした“RX63N”について、[ビルドの対象とする]を[いいえ]に変更するこれでデバッグ時にライブラリのソースへステップインしたりすることが出来るようになりますこの後(先でも構いませんが)、先程のFAQに書かれているようにCS+に登録されているバイナリ形式ライブラリファイル名を通常版のライブラリ名からデバッグ版のライブラリ名に変更します。なお、必ずしも“外部ソース(ビルド対象外)”という新しいカテゴリを追加する必要はないのですが、こうしておけば他の人にもライブラリのソースはプロジェクトのフォルダの外にあることが分かり易いかもと思い、今回は、こうしてみました。[リンク]ルネサスFAQ検索: PDG2support.renesas.com/hc/ja/search?utf8=%E2%9C%93&commit=%E6%A4%9C%E7%B4%A2&query=PDG2ルネサス設計支援情報検索: PDG2www.renesas.com/ja-jp/search/keyword-search.html#genre=designsupport&q=PDG2Rulz検索: PDG2japan.renesasrulz.com/search?group=31&q=PDG2[追記]私の1つ前の投稿に添付してあったプロジェクトのファイル一式のzipファイルに“外部ソース(ビルド対象外)”というカテゴリを(カテゴリだけを)プロジェクトに追加しました。