目次

last update: 2025/05

M3S-T4-Tiny TCP/IP(OSレス)環境で動作可能な各種ミドルウェアサンプル
第2章: HTTPクライアント
評価ボード:RX72N Envision Kit




テストサンプル

Demo Sample Application Folder:

Application
 └ _Exclude
     ├ IOT  ..... HTTPクライアント機能のデモサンプル

HTTP Client Sample

Sample説明
M3S_T4_IOT_HTTP_GetRequestM3S-T4-Tiny TCP/IPスタックを使用してHTTPクライアントのGETコマンドを実行して内容をコンソールに表示します
M3S_T4_IOT_HTTP_RedirectRequestHTTPクライアントのGETコマンドを実行して、リダイレクトリクエストを処理します(TCP/IP:M3S-T4-Tiny)
M3S_T4_IOT_HTTP_SecureGetHTTPクライアントのセキュアGETコマンドを実行して内容をコンソールに表示します(TCP/IP:M3S-T4-Tiny)

関連設定ファイル:

Config
 |- IOT_Conf.h  ............. コンフィグレーション設定ファイル 
 |
 |- IO
 |   |- IOT_ConfigIO.c  ..... デバッグコンソールIOインターフェース設定ファイル
 |
 |- SYS   ................... SYS インターフェース設定(ソース・ヘッダ)

ビルド・動作確認方法

プロジェクト設定では「\Application\_Exclude\IOT」フォルダはビルド対象外に設定しています。以下のどちらかの方法で動作確認を行うサンプルアプリケーションを選択します。

  1. 「\_Exclude\IOT」フォルダ下の対象テストサンプルファイルをビルド対象設定の「\Application」フォルダ下にコピーします。
  2. 「\_Exclude\IOT」フォルダ下の対象テストサンプルファイルのみ「ビルド対象外」の設定を解除します。

各テストアプリケーションの動作確認方法はテストサンプルアプリケーションのヘッダのコメント情報を参照ください。

テスト環境の設定(HTTP Client):

評価ボードのLANポートをテスト用パソコンに接続して、TCP/IPネットワーク通信が正常にできることを確認してください。

PC Setup

ネットワーク環境に合わせて評価ボード側のM3S-T4-Tinyスタックのコンフィグレーション設定を編集してください。デフォルトはIPアドレス自動取得のDHCPモードに設定していますが、マニュアルモードIPアドレスが希望でしたらスマートFITコンフィグレータからIP、Gatewayアドレスなど設定してください。

(r_t4_rx)TCP/IPコンフィグレーション設定の事例:

  • Enable/Disable DHCP function: 0
  • IP address for ch0, when DHCP disable: 192.168.0.20
  • Subnet mask for ch0, when DHCP disable: 255.255.255.0
  • Gateway address for ch0, when DHCP disable: 192.168.0.1

HTTPサーバー側のWEBアドレス設定について:

M3S-T4-Tiny TCP/IPスタックはDNSクライエント機能はサポートしていませんので、「www.segger.com」のようなURLアドレス設定は指定できません。アプリケーション側で対象サーバーのIPアドレスを設定してください。

テストレポート(HTTP Client)

Sample: HTTP Client GetRequest

File: M3S_T4_IOT_HTTP_GetRequest.c (HOST設定)

#define HOST_IP_ADDR    IP_ADDR_UW(194, 91, 13, 26)
#define HOST_WEB_ADDR   "www.embitek.co.jp"

Debug IO Console:

SEGGER Software Evaluation Sample
Eval Board: RX72N Envision Kit
Base: Baremetal (No RTOS)
TCP/IP: Renesas M3S-T4-Tiny
------------------------------------------------
callback ch:0, eventID = ETHER_EV_LINK_ON
callback ch:0, eventID = DHCP_EV_INIT
callback ch:0, eventID = DHCP_EV_LEASE_IP
DHCP.ipaddr[4]   192.168.1.19
DHCP.maskaddr[4] 255.255.255.0
DHCP.gwaddr[4]   192.168.1.1
DHCP.dnsaddr[4]  192.168.1.1
DHCP.dnsaddr2[4] 0.0.0.0
DHCP.macaddr[6]  74:90:50:10:FE:77
DHCP.domain[0] 

Returned status code: 302

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>302 Found</title>
</head><body>
<h1>Found</h1>
<p>The document has moved <a href="https://www.embitek.co.jp/">here</a>.</p>
</body></html>

STOP.

Sample: HTTP Client RedirectRequest

Debug IO Console:

SEGGER Software Evaluation Sample
Eval Board: RX72N Envision Kit
Base: Baremetal (No RTOS)
TCP/IP: Renesas M3S-T4-Tiny
------------------------------------------------
callback ch:0, eventID = ETHER_EV_LINK_ON
callback ch:0, eventID = DHCP_EV_INIT
callback ch:0, eventID = DHCP_EV_LEASE_IP
DHCP.ipaddr[4]   192.168.1.19
DHCP.maskaddr[4] 255.255.255.0
DHCP.gwaddr[4]   192.168.1.1
DHCP.dnsaddr[4]  192.168.1.1
DHCP.dnsaddr2[4] 0.0.0.0
DHCP.macaddr[6]  74:90:50:10:FE:77
DHCP.domain[0] 

Returned status code: 302

Redirect to https://www.embitek.co.jp/

Cannot handle scheme https!

STOP.

Sample: HTTP Client SecureGet

Read HTTP contents from https://www.google.co.jp

File: M3S_T4_IOT_HTTP_SecureGet.c (HOST設定)

#define HOST_IP_ADDR    IP_ADDR_UW(13,249,160,23)
#define HOST_WEB_ADDR   "www.segger.com"
#define PAGE            "/emssl-testpage.php"

Debug IO Console:

SEGGER Software Evaluation Sample
Eval Board: RX72N Envision Kit
Base: Baremetal (No RTOS)
TCP/IP: Renesas M3S-T4-Tiny
------------------------------------------------
callback ch:0, eventID = ETHER_EV_LINK_ON
Sample Setup HOST = www.segger.com
             PATH = /emssl-testpage.php
-----------------------------
Connecting to HOST www.segger.com:80 !
callback ch:0, eventID = DHCP_EV_INIT
callback ch:0, eventID = DHCP_EV_LEASE_IP
DHCP.ipaddr[4]   192.168.1.19
DHCP.maskaddr[4] 255.255.255.0
DHCP.gwaddr[4]   192.168.1.1
DHCP.dnsaddr[4]  192.168.1.1
DHCP.dnsaddr2[4] 0.0.0.0
DHCP.macaddr[6]  74:90:50:10:FE:77
DHCP.domain[0] 

Returned status code: 301

Redirect to https://www.segger.com/emssl-testpage.php

Connecting to HOST www.segger.com:443 !
Returned status code: 200

Welcome to www.segger.com/emssl-testpage.php!..
Successfully connected via SSL..
Current date is 2025-05-20..
Current time is :30:52..
STOP.
前の章

評価版パッケージ内容

次の章

SSL通信(セキュリティ機能)