Top Page [◀◀]  2   3   4   5   6   7   8   9   ... [▶▶Last Page

RX63N Ethernet通信したい

ほぼ初心者です。

北斗電子の評価ボード(HSBRX63NP)を使用して、Ethernetの実装を試みています。

以前こちらでおすすめしていただいた、TCP/IP M3S-T4-Tinyを用いたサンプルプログラム(https://www.renesas.com/ja-jp/software/D6000402.html)をダウンロードし、北斗電子のボード用のサンプルがあったので、そちらのプロジェクトをCS+に変換して使用しています。

このサンプルソフトでターゲットとしているボードは私の使用しているボードとは少し違うようなのです(RXのピン数が違う)が、ほぼそのまま使用できると思っています。

しかし、サンプルソフトで以下の部分を修正して実行したのですが、PCとボードをEthernetで接続して、PCから「ping 192.168.0.3」をしても応答がありません。(telnetも同様)

<修正部分>

・r_bsp/platform.h で「#include "./board/hokutorx63n/r_bsp.h"」をコメントアウトして使用。

・r_config/r_bsp_config.h を使用しているボード用(R5F563NFDDFP)に変更

 #define BSP_CFG_MCU_PART_PACKAGE (0x5) //0x5=LQFP/100/0.50

 #define BSP_CFG_MCU_PART_CAN_INCLUDED   (true)

 #define BSP_CFG_MCU_PART_MEMORY_SIZE    (0xE) //0xE=2MB/128KB/32KB ※実際は「2MB/256KB/32KB」なのですが、同じ定義がないのでEとした。

 #define BSP_CFG_MCU_PART_GROUP          (0x2) //0x2=RX63N Group

・board/hokutorx63n/hokutorx63n.h でLED、SWの使用ポートを変更

 ※上記以外はそのまま

コンパイルもでき、プログラム自体は正常に動作しているよう(?)に見えます。(デバッグしてても、Ether関連のAPIからは正常のステータスが返ってきている。)

気になるのは、LANケーブルを接続せずに、起動すると「callback_ether()」のコールバックが呼ばれ、「pdecode->event_id == ETHER_CB_EVENT_ID_LINK_ON」となっています。

また、ケーブルをつなごうが、外そうが、「callback_ether()」は発生しません。

ちなみに、EtherコントローラのLEDはケーブルをつなげるとLinkが点灯し、外すと消えます。

どこをどうやって確認したらよいのか検討がつかず、悩んでおります。

何かお分かりになる方がいればご教授いただけるた助かります。

  • love0510さん

    失礼な確認でしたら、すみません。

    config_tcpudp.cにIPとか登録しました?

    /****************************************************************************/

    /**********************     IP-related definition     ***********************/

    /****************************************************************************/

    const UH _ip_tblcnt = 3;

    #define MY_IP_ADDR     ***,***,***,***   // Local IP address*///※----NAKA IPアドレスの設定

    #define GATEWAY_ADDR   0,0,0,0           // Gateway address (invalid if all 0s) */

    #define SUBNET_MASK    255,255,255,0     // Subnet mask  */

    TCPUDP_ENV tcpudp_env =

    {

    {MY_IP_ADDR},

    {SUBNET_MASK},

    {GATEWAY_ADDR}

    };

    P.S.

    ほとんど忘れちゃってますので、あまりアドバイスできませんが、サンプルコードを見ててもなかなか使えませんでしたよ。

    T4のユーザーマニュアル(R20UW0031JJ0106)をかなり読み込まないと.......汗)

  • In reply to NAKA:

    NAKAさん

    失礼でもなんでもないですよ。そういった当たり前のところも含めてありえますので(^^;)

    config_tcpudp.cは設定してあります。(サンプルそのままです。)

    今気づいたのですが、r_pinset.cの「R_ETHER_PinSet_ETHERC0_RMII」のピン設定も変えないといけないのですかね?

    とはいっても、どこをどう変えたものか。。

  • In reply to love0510:

    love0510さん

    こんにちは、シェルティです。

    ご推察のポート設定(r_pinset.c)のコードが怪しいと思います。
    HSBRX63NP(love0510さん使用)とHSBRX63NB(TCP/IPのサンプル)とで、
    RX63NマイコンとPHYチップ間を繋ぐRX63N側の端子が異なっている場合、
    ポート設定(r_pinset.c)のコードを変更する必要があります。
    まず、ボード回路図を参考にして、RX63Nマイコンのどのピンが
    EtherのPHYチップに繋がっているかを把握しましょう。
    次にRX63Nのユーザーズマニュアルハードウェア編のマルチファンクションピンコントローラ(MPC)の
    項目を見て、Etherの端子がすべてEther用の設定値になっているかを
    ポート設定(r_pinset.c)のコードで調べてみましょう。

    あとは、パソコンのIPアドレスが192.168.0.xxx (xxx=3以外)で、サブネットが
    255.255.255.0になっているかを確認しましょう。ボードと同じネットワーク設定に
    なっていないの通信ができません。

    あと怪しいのは、r_ether_rx_config.hのETHER_CFG_CH0_PHY_ADDRESSです。
    PHYチップのデータシートをダウンロードしてきて、PHYチップのPHYアドレス(0~31のどれか)が
    何番か調べましょう。上記コードでの設定値は31です。異なっている場合はPHYチップの初期化が
    完了せず結果通信できません。

    以上です

  • In reply to love0510:

    love0510さん

    ハードの設定も忘れちゃったんで、適当でいい加減なことを書きます。

    北斗のサンプルは確か144pinのRX63Nだったと思います。そのサンプルをGR-SAKRA(100pinのRX63N)に書き込んでもだめでした。GR-SAKRAも北斗も同じRMII接続だったはずなので、無改造で確認したいならGR-SAKRA用のサンプルがそのまま使えたりして!

    取りあえずお手軽に動かしたいですよねぇ~。GR-SAKURAなら安いので買っちゃうとか!

  • In reply to NAKA:

    皆さまアドバイスありがとうございます。

    シェルティさんのにらんだ通り、r_pinset.cのポート設定の問題でした。

    やはりピン数が違えばポート設定も全くちがうのですね。。

    Etherのポートをひとつづつ確認して修正したら、pingが通るようになりました。

    ありがとうございました!!

    FITはマイコンが変わっても、ソースコードの変更はほとんどないと聞いていたので、この部分は変更する必要がないものだと勝手な思い込みで、ノーマークでした。

    いい教訓となりました。

  • In reply to love0510:

    love0510 さん

    シェルティです、こんにちは。

    うまく動作して良かったです。

    端子設定だけはボードによるのでユーザが端子設定のコードを調整する必要が残ってしまいますね。

    逆を言えば端子設定さえクリアすれば、FITモジュールはどのRXマイコンボードでも

    動くということなのだと思います。

    次はSCIのモジュールを組み込んでみると良いと思います。

    Etherと同様に端子設定のコードをボードに合わせて書いてあげるだけで、

    パソコンとUART通信ができるようになると思います。

    フラッシュのモジュールも使いやすくて良いですので試してみると良いと思います。

    (フラッシュは端子設定いらないモジュールです)

    昔は、新しいマイコンボードを入手してUARTでパソコンにデバッグログを出せるようになるまで

    1日くらいはがんばってハードウェアマニュアルを読んでレジスタをいじくったものです。

    Etherに至ってはコントローラの仕様を理解してドライバ書いてTCP/IPを移植して

    動作確認まで持っていくのに1か月くらいはかかりますね。

    今は、新しいRXマイコンがでてきても、ボード入手してから10分で

    EtherやUARTが動かせるようになりました。

    以上です

  • In reply to シェルティ:

    シェルティさん

    アドバイスありがとうございました。

    昔は大変だったんでしょうね。。

    今は、要領さえおさえてしまえば、簡単に機能が実装できるのはよくわかりました。

    まだまだ、悩むことはたくさん出てくると思いますが、そのときはまた、よろしくお願いいたします。

Top Page [◀◀]  2   3   4   5   6   7   8   9   ... [▶▶Last Page