ap-rza-0a rtx ethernetサンプルプログラム解説アプリケーションノート an1615...

28
アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 1 1. 概要 ...................................................................................................... 2 1.1 概要 .......................................................................................................................... 2 1.2 RTX について .............................................................................................................. 2 1.3 lwIP について ............................................................................................................. 2 1.4 動作モード ................................................................................................................. 2 1.5 開発環境について......................................................................................................... 6 1.6 ワークスペースについて ................................................................................................ 6 2. サンプルプログラムの構成.......................................................................... 7 2.1 フォルダ構成 .............................................................................................................. 7 2.2 ファイル構成 .............................................................................................................. 8 3. AP-RZA-0A サンプルプログラム................................................................11 3.1 ビルド・デバッグ方法 .................................................................................................. 11 3.2 ブート処理 ................................................................................................................ 20 3.3 サンプルプログラム概要 ............................................................................................... 21 3.4 サンプルプログラムの使用方法 ...................................................................................... 21 3.5 ネットワーク通信設定 .................................................................................................. 22 3.6 サンプルプログラム動作手順 ......................................................................................... 24 3.7 RAM 動作時のメモリマップ ........................................................................................... 26 3.8 ROM 動作時のメモリマップ........................................................................................... 27 AP-RZA-0A (RZ/A1H CPU BOARD) RTX Ethernet サンプルプログラム解説 1 2016 4 14

Upload: others

Post on 03-Mar-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

1

1. 概要 ...................................................................................................... 2

1.1 概要 .......................................................................................................................... 2

1.2 RTX について .............................................................................................................. 2

1.3 lwIP について ............................................................................................................. 2

1.4 動作モード ................................................................................................................. 2

1.5 開発環境について ......................................................................................................... 6

1.6 ワークスペースについて ................................................................................................ 6

2. サンプルプログラムの構成 .......................................................................... 7

2.1 フォルダ構成 .............................................................................................................. 7

2.2 ファイル構成 .............................................................................................................. 8

3. AP-RZA-0A サンプルプログラム ................................................................ 11

3.1 ビルド・デバッグ方法 .................................................................................................. 11

3.2 ブート処理 ................................................................................................................ 20

3.3 サンプルプログラム概要 ............................................................................................... 21

3.4 サンプルプログラムの使用方法 ...................................................................................... 21

3.5 ネットワーク通信設定 .................................................................................................. 22

3.6 サンプルプログラム動作手順 ......................................................................................... 24

3.7 RAM 動作時のメモリマップ ........................................................................................... 26

3.8 ROM 動作時のメモリマップ ........................................................................................... 27

AP-RZA-0A (RZ/A1H CPU BOARD)

RTX Ethernet サンプルプログラム解説 1 版 2016 年 4 月 14 日

Page 2: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

2

1. 概要

1.1 概要

本アプリケーションノートでは、オープンソースの TCP/IP スタックである lwIP を使用した、

AP-RZA-0A 用 Ethernet サンプルプログラムについて解説します。

本サンプルプログラムの概要を以下に記します。

サンプルプログラム 動作内容

Ethernet サンプルプログラム ・TCP サーバ

・TCP クライアント

1.2 RTX について

CMSIS-RTOS RTX は ARMTM 社によって提供される無料の RTOS です。ロイヤリティフリーであり、BSD ライセンスの下、

ソースコードにて提供されるリアルタイムオペレーティングシステムです。

タイマ、セマフォ、シグナル管理、ミューテックス、メモリプール、メールボックスなどの機能を備えています。

CMSIS-RTOS RTX は ARM 純正リファレンスソフトウェア開発環境である ARM Development Studio5TM(DS-5TM)に

付属しています。

1.3 lwIP について

lwIP は組み込みシステム向けに設計されている、オープンソースの TCP/IP スタックです。

本サンプルプログラムは、lwIP を使用して、Ethernet 通信を行います。

lwIPの詳細に関しては、lwIPの公式WEBサイト(http://savannah.nongnu.org/projects/lwip/)を参照してください。

本サンプルプログラムで使用した lwIP のバージョンを以下に記します。

バージョン 1.4.1

1.4 動作モード

本サンプルプログラムは、AP-RZA-0A で動作します。CPU 動作モード、各メモリ設定は下記のようになっています。

モードの設定方法等につきましては、「AP-RZA-0A ハードウェアマニュアル」をご覧下さい。

なお、下記条件以外で動作させる場合には、ソースファイルやコンパイラオプションなどを変更する必要があります。

ブートモード : ブートモード3(シリアルフラッシュブート)

SDRAM 設定 : SDRAM を使用する

Ethernet 設定 : Ethernet を使用する

USB1 設定 : 不問

AUDIO 設定 : 不問

Page 3: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

3

JSW3 JSW4

JP3 JP4

SW2 JSW1

Page 4: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

4

SW2

O

N

4

3

2

1

6

5

CPU ボードの設定を製品出荷時の設定とし、使用方法に合わせて以下の各スイッチの設定を行ってください。

JP3, 4 は短絡されている状態とします。

・SW2

<SW2 設定>

ブートモード : CS3(SPI フラッシュ)ブート

OFF ON J

SW1

・JSW1

<JSW1 設定>

ボード上の SDRAM : 使用する

HOST

JSW2

・JSW2

<JSW2 設定>

USB1 の動作モード : 不問

FUNC

<JSW3 設定>

Ethernet : 使用する

・JSW3

ON OFF

JSW3

Page 5: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

5

ON OFF

JSW4

・JSW4

<JSW4 設定>

AUDIO : 不問

Page 6: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

6

1.5 開発環境について

本サンプルプログラムは総合開発環境 ARM Development Studio 5TM (DS-5)を用いて開発されています。

サンプルプログラムに対応する開発環境、コンパイラのバージョンは次のようになります。

開発環境 バージョン コンパイラ名 バージョン 備考

ARM

Development

Studio 5

5.19.1 ARM

Compiler

5.04 update 2

1.6 ワークスペースについて

本サンプルプログラムの総合開発環境 ARM Development Studio 5 ワークスペースは次のフォルダに格納されています。

サンプルプログラム フォルダ

AP-RZA-0A サンプルプログラム(lwIP)

プロジェクトフォルダ

\sample\ap_rza_0a_rtx_lwip

Page 7: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

7

2. サンプルプログラムの構成

2.1 フォルダ構成

本サンプルプログラムは下記のようなフォルダ構成になっています。

sample

ap_rza_0a_rtx_lwip AP-RZA-0A サンプルプログラム(lwIP)

プロジェクトフォルダ

BAT バイナリ生成用バッチファイルフォルダ

Debug RAM 動作用ワークフォルダ

Include RTX インクルードフォルダ

LWIP lwIP フォルダ

Release ROM 動作用ワークフォルダ

RTX RTX フォルダ

SCAT スキャッタローディングファイルフォルダ

SRC ソースファイルフォルダ

ap_rza_0a ボード依存部ソースフォルダ

boot ブート処理フォルダ

cdce913 クロックジェレネータドライバフォルダ

gpio GPIO ドライバフォルダ

riic RIIC ドライバフォルダ

s35390a RTC ドライバフォルダ

scif SCIF ドライバフォルダ

common.h 共通ヘッダファイル

main.c メインソースファイル

retarget.c 出力再定義ファイル

Page 8: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

8

2.2 ファイル構成

サンプルプログラムは以下のファイルで構成されています。

<\sample フォルダ内>

ap_rza_0a_rtx_lwip ・・・ AP-RZA-0A サンプルプログラム(lwIP)

プロジェクトフォルダ

<\sample\ap_rza_0a_rtx_lwip フォルダ内>

.cproject ・・・ CPROJECT ファイル

.project ・・・ PROJECT ファイル

<\sample\ap_rza_0a_rtx_lwip\BAT フォルダ内>

make_bin.bat ・・・ バイナリファイル生成用バッチファイル

<\sample\ap_rza_0a_rtx_lwip\Release フォルダ内>

ap_rza_0a_rtx_lwip.axf ・・・ サンプルプログラム ROM 動作用オブジェクトファイル

コンパイル後は SRC フォルダが生成され、SRC フォルダ下

にオブジェクトファイル等が生成されます。

<\sample\ap_rza_0a_rtx_lwip\Debug フォルダ内>

ap_rza_0a_rtx_lwip.axf ・・・ サンプルプログラム RAM 動作用オブジェクトファイル

コンパイル後は SRC フォルダが生成され、SRC フォルダ下

にオブジェクトファイル等が生成されます。

<\sample\ap_rza_0a_rtx_lwip\Include フォルダ内>

arm_common_tables.h ・・・ コモンテーブルヘッダファイル

arm_math.h ・・・ DSP 共通ヘッダファイル

core_ca_mmu.h ・・・ MMU スタートアップファイル

core_ca9.h ・・・ ペリフェラルアクセスレイヤヘッダファイル

core_caFunc.h ・・・ コアファンクションアクセスヘッダファイル

core_caInstr.h ・・・ コアペリフェラルアクセスヘッダファイル

core_cm0.h ・・・ Cortex-M0 コアペリフェラルアクセスヘッダファイル

core_cm0plus.h ・・・ Cortex-M0+ コアペリフェラルアクセスヘッダファイル

core_cm3.h ・・・ Cortex-M3 コアペリフェラルアクセスヘッダファイル

core_cm4.h ・・・ Cortex-M4 コアペリフェラルアクセスヘッダファイル

core_cm4_simd.h ・・・ Cortex-M4 SIMD ヘッダファイル

core_cmFunc.h ・・・ Cortex-M コアファンクションアクセスヘッダファイル

core_cmInstr.h ・・・ Cortex-M コア命令アクセスヘッダファイル

core_sc000.h ・・・ SC000 コアペリフェラルアクセスレイヤヘッダファイル

core_sc300.h ・・・ SC300 コアペリフェラルアクセスレイヤヘッダファイル

Page 9: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

9

<\sample\ap_rza_0a_rtx_lwip\LWIP フォルダ内>

api ・・・ lwIP API フォルダ

app ・・・ lwIP サンプルアプリケーションフォルダ

core ・・・ lwIP 低レベルドライバフォルダ

driver ・・・ lwIP ドライバフォルダ

include ・・・ lwIP インクルードフォルダ

netif ・・・ 汎用ネットワークドライバフォルダ

CAHNGELOG ・・・ lwIP ファイル更新履歴ファイル

COPYING ・・・ lwIP ライセンス情報ファイル

FILES ・・・ lwIP フォルダ構成ファイル

README ・・・ lwIP リードミーファイル

UPGRADING ・・・ lwIP アップデート履歴ファイル

<\sample\ap_rza_0a_rtx_lwip\RTX フォルダ内>

INC ・・・ RTX インクルードフォルダ

LIB ・・・ RTX ライブラリフォルダ

<\sample\ap_rza_0a_rtx_lwip\RTX\INC フォルダ内>

cmsis_os.h ・・・ RTX テンプレートヘッダファイル

RTX_CM_lib.h ・・・ RTX カーネルコンフィグレーションファイル

<\sample\ap_rza_0a_rtx_lwip\RTX\LIB フォルダ内>

ARM ・・・ ARM 用ライブラリフォルダ

<\sample\ap_rza_0a_rtx_lwip\RTX\LIB\ARM フォルダ内>

RTX_CA9_L.lib ・・・ Cortex-A9 用ライブラリファイル

RTX_CM0.lib ・・・ Cortex-M0 用ライブラリファイル

RTX_CM0_B.lib ・・・ Cortex-M0 用ライブラリファイル

RTX_CM3.lib ・・・ Cortex-M3 用ライブラリファイル

RTX_CM3_B.lib ・・・ Cortex-M3 用ライブラリファイル

RTX_CM4.lib ・・・ Cortex-M4 用ライブラリファイル

RTX_CM4_B.lib ・・・ Cortex-M4 用ライブラリファイル

<\sample\ap_rza_0a_rtx_lwip\SCAT フォルダ内>

ap_rza_0a_rtx_ram.scat ・・・ サンプルプログラム RAM 動作用スキャッタローディング

ファイル

ap_rza_0a_rtx_rom.scat ・・・ サンプルプログラム ROM 動作用スキャッタローディング

ファイル

<\sample\ap_rza_0a_rtx_lwip\RTX\SRC フォルダ内>

common.h ・・・ 共通インクルードヘッダファイル

main.c ・・・ メイン処理

retarget.c ・・・ C ライブラリ用再実装

Page 10: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

10

<\sample\ap_rza_0a_rtx_lwip\RTX\SRC\ap_rza_0a フォルダ内>

ARM ・・・ ARM 処理フォルダ

iodefine ・・・ RZ 内部レジスタ定義ヘッダファイルフォルダ

gic.c ・・・ GIC ファンクション処理

gic.h ・・・ GIC ファンクションヘッダファイル

iodefine.h ・・・ 内部レジスタ定義ファイル

mmu_Renesas_RZ_A1.c ・・・ MMU スタートアップ処理

pl310.c ・・・ PL310 処理

pl310.h ・・・ PL310 処理ヘッダファイル

r_typedefs.h ・・・ 型宣言ファイル

Renesas_RZ_A1.h ・・・ ペリフェラルアクセスヘッダファイル

RTX_Conf_CM.c ・・・ RTX コンフィグレーションファイル

system_Renesas_RZ_A1.c ・・・ RTX デバイス処理

system_Renesas_RZ_A1.h ・・・ RTX デバイス処理ヘッダファイル

typedefine.h ・・・ 型宣言ファイル

<\sample\ap_rza_0a_rtx_lwip\RTX\SRC\boot フォルダ内>

boot.c ・・・ ブート処理

boot.h ・・・ ブート処理ヘッダファイル

<\sample\ap_rza_0a_rtx_lwip\RTX\SRC\cdce913 フォルダ内>

cdce913.c ・・・ クロックジェネレータドライバ

cdce913.h ・・・ クロックジェネレータドライバヘッダファイル

<\sample\ap_rza_0a_rtx_lwip\RTX\SRC\gpio フォルダ内>

gpio.c ・・・ GPIO ドライバ

gpio.h ・・・ GPIO ドライバヘッダファイル

<\sample\ap_rza_0a_rtx_lwip\RTX\SRC\riic フォルダ内>

riic.c ・・・ RIIC ドライバ

riic.h ・・・ RIIC ドライバヘッダファイル

<\sample\ap_rza_0a_rtx_lwip\RTX\SRC\s35390a フォルダ内>

s35390a.c ・・・ S35390A ドライバ

s35390a.h ・・・ S35390A ドライバヘッダファイル

<\sample\ap_rza_0a_rtx_lwip\RTX\SRC\scif フォルダ内>

scif.c ・・・ シリアル通信ドライバ

scif.h ・・・ シリアル通信ドライバヘッダファイル

Page 11: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

11

3. AP-RZA-0A サンプルプログラム

3.1 ビルド・デバッグ方法

(1) プロジェクトのインポート

① DS-5 を起動し、メニューバーの[ファイル]→[インポート]を選択します。

② [既存のプロジェクトをワークスペースへ]を選択し[次へ]を選択します。

Page 12: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

12

③ [ルート・ディレクトリーの選択]を選択し、[参照]からサンプルプログラムのフォルダを選択します。

④ [終了]を選択します。

Page 13: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

13

⑤ ナビゲータウィンドウにサンプルプログラムのプロジェクトが追加されていることを確認します。

Page 14: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

14

(2) プロジェクトのビルド

メニューの「ビルド」アイコンを選択します。

構成が Debug の場合、\Debug ワークフォルダに RAM 動作用のオブジェクトファイルが、Release の場合、

\Release ワークフォルダ内に ROM 動作用のオブジェクトファイルが生成されます。

DS-5 の詳細な使用方法に関しては DS-5 のマニュアルを参照してください。

Page 15: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

15

(3) RAM 上でのデバッグ

① 「「DS-5 デバッグ」 パースペクティブ」をクリックし、DS-5 のデバッグ画面へ移行します。

② 「実行」→「デバッグコンフィグレーション」を選択します。

Page 16: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

16

③ 「DS-5 デバッガ」を選択します。

④ 「名前(N)」に「ap_rza_0a_rtx_sample」と入力し、ターゲットに「Renesas」→「RZ/A1H R7S721001」→「BereMetal

Debug」→「Debug Cortex-A9」を選択します。

Page 17: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

17

⑤ 「ターゲット接続」を「ULINK2」に設定し、「接続」の「Browse...」を選択してホスト PC に接続しているデバッ

ガ(ULINK2)を選択します。

⑥ 「ファイル」タブを選択し、「ワークスペース」からビルドしたオブジェクトファイル(ap_rza_0a_rtx_lwip.axf)

を選択します。

Page 18: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

18

⑦ 「OS の認識機能」タブを選択し、プルダウンメニューから「Keil CMSIS-RTOS RTX」を選択します。

⑧ 「適用」を選択し、「閉じる」を選択します。

Page 19: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

19

⑨ 「ターゲットに接続」アイコンを選択します。

⑩ デバッガがターゲットに接続された後、デバッグを行います。

Page 20: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

20

3.2 ブート処理

AP-RZA-0A のブートモードがブートモード3(シリアルフラッシュブート)に設定されている場合、パワーオンリセット

解除後に CPU は 0xFFFF0000(内臓 ROM)に格納されているブートプログラムを実行します。

このブートプログラムにより、SPI マルチ I/O バスコントローラが外部アドレス空間リードモードに設定され、基板上に

実装されたシリアルフラッシュに対し直接データの読み出しが可能になります(SPI マルチ I/O バス空間:0x18000000~)。

ブートプログラムの終了後、CPU は 0x18000000 に分岐します。

そのため、本サンプルプログラムでは例外処理ベクタテーブルを 0x18000000 に配置しブートプログラムの終了後に

リセットハンドラ処理に分岐するようにしています。

リセットハンドラ処理ではベクタベースアドレスの設定、スタックの初期化、内臓 RAM 書き込みの許可、MMU・キャッシュ

初期化、クロック周波数の設定やボードの初期化を行い、最後に ARM 統合開発環境 DS-5 のコンパイラツールチェーンによっ

提供されるC標準ライブラリ関数__main に分岐します。

__main 関数内ではスキャッタローディングファイルを利用したセクションの初期化やデータのコピーなどが行われ、

$Sub$main 関数を経た上で$Super$main 関数がコールされ main 関数に分岐します。

CPU のブートモードとブートモードに依存するそれぞれのブート処理に関しての詳細は下記資料を参考にしてください。

・ 「RZ/A1H グループ ユーザーズマニュアル ハードウェア編」

・ 「RZ/A1H グループ 初期設定例」

これらの資料は下記 URL から入手が可能です。

http://japan.renesas.com/products/mpumcu/rz/Documentation.jsp

http://japan.renesas.com/products/mpumcu/rz/Application_Notes.jsp

Page 21: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

21

3.3 サンプルプログラム概要

本サンプルプログラムは、下記の動作を行います。

● TCP サーバ

AP-RZA-0A を TCP サーバとして動作させます。

指定した IP アドレスで TCP クライアントからの接続を待ちます。

クライアントとの接続が確立後、AP-RZA-0A はクライアントから送信されたデータに対してエコーバック処理

を行います。

● TCP クライアント

AP-RZA-0A を TCP クライアントとして動作させます。

指定した IP アドレスの TCP サーバに接続を行います。

サーバとの接続が確立後、AP-RZA-0A はサーバから送信されたデータに対してエコーバック処理を行います。

3.4 サンプルプログラムの使用方法

サンプルプログラムを実行する際には、「\sample\ap_rza_0a_rtx_lwip\SRC」にある main.c において、

使用する機能を選択してください。

main.c では、define 定義を使用して処理の有効及び無効を決定しています。

有効にする機能の define 定義を 1 に設定し、使用しない機能は 0 に設定することで機能の選択を行います。

複数の機能を同時に動作させることはできないため、有効にする機能は必ず1つだけを選択してください。

main.c の修正を行う箇所を以下に示します。

\sample\ap_rza_0a_rtx_lwip\SRC\main.c

29

30

#define TCPCLIENT 0

#define TCPSERVER 1

どちらか一方のみの値を 1 にし、

その他は 0 にしてください。

Page 22: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

22

3.5 ネットワーク通信設定

本サンプルプログラムに実装されたネットワーク通信の確認に必要な推奨環境は以下の通りです。

ホスト PC PC/AT 互換機

OS Windows Vista/7/8

LAN ポート 10/100BASE-TX 以上対応の LAN ポート

LAN ケーブル クロスケーブル

3.5.1 ネットワーク設定

本サンプルプログラムで使用するデフォルトのネットワーク設定は以下のようになっています。

IP アドレス 192.168.1.200

サブネットマスク 255.255.255.0

ゲートウェイ 192.168.1.254

MAC アドレス 00-0C-7B-38-XX-XX

※ XX-XX の値は製品ごとに異なります。

※ この値は本製品背面に添付された製品番号

シールに同等の値が印字されている他、

出荷時に EEPROM の先頭 6byte に保存されています。

※本製品の MAC アドレスは、弊社が米国電気電子学会(IEEE)より取得したアドレスとなります。

MAC アドレスを変更される際は、お客様にて IEEE より MAC アドレスを取得し、設定してください。

Page 23: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

23

ネットワークの設定は次の 4 つのファイルで行っています。

・sample\ap_rza_0a_rtx_lwip\LWIP\app\tcp_client_sample.h

・sample\ap_rza_0a_rtx_lwip\LWIP\app\tcp_server_sample.h

・sample\ap_rza_0a_rtx_lwip\LWIP\driver\lwip.h

・sample\ap_rza_0a_rtx_lwip\SRC\main.c

ご使用の環境に合わせてネットワークの設定を変更する際には上述の各ファイルの設定値を修正してください。

各ファイルの修正を行う箇所を以下に示します。

通信相手のポート番号、IP アドレスを設定する場合

sample\ap_rza_0a_rtx_lwip\LWIP\app\tcp_client_sample.h

21

22

#define HOST_IP_ADDR ("192.168.1.201")

#define HOST_PORT (50000)

AP-RZA-0A のポート番号を設定する場合

sample\ap_rza_0a_rtx_lwip\LWIP\app\tcp_server_sample.h

21 #define TCP_SERVER_PORT (50000)

AP-RZA-0A のネットワークの設定(ポート番号除く)をする場合

sample\ap_rza_0a_rtx_lwip\LWIP\driver\lwip.h

21

22

23

#define LWIP_IP_ADDR ("192.168.1.200")

#define LWIP_NET_MASK ("255.255.255.0")

#define LWIP_GATEWAY ("192.168.1.254")

AP-RZA-0A の MAC アドレスの設定をする場合

sample\ap_rza_0a_rtx_lwip\SRC\main.c

35 const unsigned char TM_FIXED_MAC[6] = {0x00, 0x0C, 0x7B, 0x38, 0x01, 0x00};

※ここで定義されている値は、サンプルプログラムを動作させる上での仮の値となります。

閉鎖されていないネットワークに本製品を接続しサンプルプログラムを動作させる場合、

必ず TM_FIXED_MAC の値を変更し、

基板ごとに定義された値、あるいは、お客様が取得された MAC アドレスの値を設定してください。

通信相手のネットワーク設定

AP-RZA-0A のネットワーク設定

AP-RZA-0A のネットワーク設定

AP-RZA-0A の MAC アドレス設定(16 進数)

Page 24: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

24

3.6 サンプルプログラム動作手順

以下の手順に従い、ネットワーク動作を確認してください。

なお、ネットワークの設定はデフォルトの設定として説明を行いますので、ネットワークの設定を変更された場合には、適宜

その項目を読み替えてネットワーク動作を確認して下さい。

① LAN クロスケーブルを使い CPU ボードの LAN コネクタ(CN8)とホスト PC を接続します。

接続図を以下に示します。

② ホスト PC 上でネットワークの設定を行います。

CPU ボードの設定に合わせるため、ホスト PC のネットワーク設定を下記の内容に変更してください。

IP アドレス 192.168.1.201

サブネットマスク 255.255.255.0

ゲートウェイ 192.168.1.254

ネットワークの設定以降は、動作させるプログラムによって動作確認方法が異なります。

各プログラムの動作確認方法を以下に示します。

機種 :PC/AT 互換機 OS :WindowsVista Windows7 Windows8

CN8

DC+5V

AP-RZA-0A

イーサネットポートに接続

イーサネットケーブル

ホストコンピュータ

Page 25: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

25

・TCP サーバ

③ CPU ボードに電源を投入し、サンプルプログラムを動作させます。

AP-RZA-0A は TCP サーバとして動作し、TCP クライアントからの接続を待ちます。

④ ホスト PC 上で TCP 通信が可能なソフトを起動し、TCP/IP 通信を行います。

ホスト PC は TCP クライアントとして動作させます。

TCP/IP の設定は、次の通りです。

・ホスト PC の IP アドレス:192.168.1.201

・AP-RZA-0A の IP アドレス:192.168.1.200

・ポート番号:50000

・サブネットマスク:255.255.255.0

・ゲートウェイ:192.168.1.254

⑤ ホスト PC 上で TCP サーバとの接続が確認できましたら、ホスト PC から任意のパケットを送信してください。

送信したパケットに対して、エコーバック処理が確認できれば TCP サーバ動作確認は終了です。

・TCP クライアント

③ ホスト PC 上で TCP 通信が可能なソフトを起動し、TCP/IP 通信を行います。

ホスト PC は TCP サーバとして動作させます。

TCP/IP の設定は、次の通りです。

・ホスト PC の IP アドレス:192.168.1.201

・AP-RZA-0A の IP アドレス:192.168.1.200

・ポート番号:50000

・サブネットマスク:255.255.255.0

・ゲートウェイ:192.168.1.254

④ CPU ボードに電源を投入し、サンプルプログラムを動作させます。

AP-RZA-0A は TCP クライアントとして動作し、TCP サーバであるホスト PC に対して接続を行います。

⑤ ホスト PC 上で TCP クライアントからの接続が確認できましたら、ホスト PC から任意のパケットを送信してください。

送信したパケットに対して、エコーバック処理が確認できれば TCP クライアント動作確認は終了です。

Page 26: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

26

3.7 RAM 動作時のメモリマップ

メモリマップを以下に示します。

Page 27: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

27

3.8 ROM 動作時のメモリマップ

メモリマップを以下に示します。

Page 28: AP-RZA-0A RTX Ethernetサンプルプログラム解説アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD. 7 2. サンプルプログラムの構成 2.1 フォルダ構成

アプリケーションノート AN1615 ALPHA PROJECT Co.,LTD.

28

商標について ・ARM Development Studio 5TM (DS-5TM) は ARM 社の登録商標、商標または商品名称です。

・RZ および RZ/A1H は、ルネサスエレクトロニクス株式会社の登録商標、商標または商品名称です

・その他の会社名、製品名は、各社の登録商標または商標です。

ALPHA PROJECT Co.,LTD. 株式会社アルファプロジェクト

〒431-3114 静岡県浜松市東区積志町834 http://www.apnet.co.jp E-MAIL : [email protected]

ご注意

・本文書の著作権は株式会社アルファプロジェクトが保有します。

・本文書の内容を無断で転載することは一切禁止します。

・本文書に記載されている内容についての質問等のサポートは一切受け付けておりませんのでご了承ください。

・本文書の内容については、万全を期して作成いたしましたが、万一ご不審な点、誤りなどお気付きの点がありましたら弊社までご連絡

下さい。

・本サンプルプログラムに関して、ARM 社およびルネサスエレクトロニクス社への問い合わせはご遠慮ください。

・本文書の内容に基づき、アプリケーションを運用した結果、万一損害が発生しても、弊社では一切責任を負いませんのでご了承下さい。

・本文書の内容は、将来予告なしに変更されることがあります。