いつもお世話になっております。
RX65NでM3S-T4-Tinyを使用しています。
phy_init関数内のwhileループで、phy_read関数で読み出すMDIの値が常に1になる状況になっています。
スマートコンフィグレータでr_t4_rx、 r_t4_driver_rx、 r_sys_time_rx、 r_cmt、 r_ether_rx、 r_bspの最新バージョンにしています。
MPCとPMRで端子設定し、イーサFITモジュールの初期化、EtherC、EDMACのモジュールストップ解除をしています。
(アプリケーション部分はサンプルプログラムを利用しています)
その後にR_ETHER_Open_ZC2関数でPHYのソフトウェアリセットをする箇所で表題の状態になります。
PIRに値を書き込むことはできているので、EtherCは動いていると認識しています。
原因を調べる手掛かりになるようなことがあれば幸いです。
ななさん
こんにちは、モッチーです。
RX65NでイーサーネットFITモジュールを使用されているんですね。
イーサーネットFITモジュールのコンフィグファイルである「r_ether_rx_config.h」の内容を確認してみてください。
RX65NのPHYアクセス関連で確認する設定は以下の2つだと思います。
ETHER_CFG_CH0_PHY_ADDRESS:アクセスするPHYのアドレスを設定します。使用するPHYの設定によってここを変更してください。
ETHER_CFG_CH0_PHY_ACCESS:ETHERCチャネル0が使用するPHYのアクセスチャネルを設定します。RX65Nの場合は、ここは基本「0」だと思います。
また、以下のアプリケーションノートにRX65N用のM3S-T4-Tinyのデモプログラムが同梱されているので、参考になるかもしれません。
「RXファミリ 組み込み用 TCP/IP M3S-T4-Tiny 導入ガイド Firmware Integration Technology アプリケーションノート」
以上よろしくお願いします。
こんにちはモッチーです。
ご確認ありがとうございます。
Renesas Starter Kit+ for RX65Nを使用されているんですね。であれば2ヶ所の設定は問題なさそうです。(PHYアドレスの設定はマイコン依存ではなく、PHYの設定依存なのでご注意ください)
後は、MPCの設定をもう一度確認してみてください。Renesas Starter Kit+ for RX65Nでは、PHYアクセスに使用する端子機能ET0_MDC、ET0_MDIOはそれぞれP72、P71を使用するようです。スマートコンフィグレータでは他の端子にも割り当てられるようなのでご注意ください。
デモプログラムがあるのなら、一度デモプログラムをインポートして、そのまま動かしてみて正常に動作するか確認してみてください。そうすると、ボードが悪いのかソフトウェアが悪いのか切り分けることができます。
こんばんは、モッチーです。
そうですね。PHYアドレス"30"というのは、Renesas Starter Kit+ for RX65Nに載っているPHYのアドレスのことです。なので、その他のボードについては、その基板に実装されているPHYのアドレスを調べる必要があります。ちなみに、PHYアドレスはPHYに電源投入後の各端子の状態で決まることが多いようです(ストラップオプション)。PHYのデータシートと基板の回路図を見て、PHYアドレスを調べてみてください。