RX64MのEthernet1のみ使用する

2020年6月10日

RX64MにはEthernetコントローラが2ch搭載されています。ルネサスのTCP/IPライブラリであるT4を使う場合、1chまたは、2chを選択することが可能です。しかし、1chで使用する場合はEthernet0が使用されるため何とかしたいと思います。

使用したバージョン
M3S-T4-Tiny(Ethernet) version 2.09 for RXV1 LITTLE endian.(Jun 18 2019, 18:43:35)

1.コンポーネントから「r_t4_rx」を追加する。
r_ether_rx
r_cmd_rx
r_sys_timer_rx
r_t4_driver
が追加される。

2.r_ether_rxの設定を行う
今回は、ETHERC1を使用する為、下記の通り設定。
3.r_t4_rxの設定を行う
今回は、1chのみ使用する為、下記の通り設定。
4.コード生成を行う。

5.ソースの改造
T4ライブラリでは、1CHで使用する場合は、ETHERC0を使用するのが前提らしい。
なので、まともに動かない。
(ちなみに、1chしか使用しない場合でも、T4を2ch設定にしてしまえば、そのままでも使える。ただし、メモリが多くいる)
改造するためには、スマートコンフィグレータで作成したファイルを編集する必要があるが、
コード生成を行うたびに戻ってしまう恐れがある為、コピーを追加する。
・既存のソースをビルドから除外する。
・コピーしたソースをプロジェクトに追加し、編集する。
単純に、アクセスするチャンネルを0と1をすべて入れ替えました。
修正したファイルはこちらです。(動作未保障)

6.動作確認
以下のコードにて、PCからPINGが通ることを確認。

以前と比べ、T4はかなり進歩してますね。DHCPも標準で対応してる。