ap-rx63n-0a wm-rp-10 サンプルプログラム解説アプリケーションノート an1533 alpha...

86
Copyright© ALPHA PROJECT Co.,LTD All right reserved https://www.apnet.co.jp アプリケーションノート AN1533 ALPHA PROJECT Co.,LTD. 1 AN1533 AP-RX63N-0A サンプルプログラム解説 1. 概要 ....................................................................................................... 3 1.1 概要 ................................................................................................................. 3 1.2 本サンプルプログラムについて ............................................................................... 6 1.3 ネットワーク構成イメージ ..................................................................................... 8 1.4 動作モード ......................................................................................................... 9 1.5 開発環境........................................................................................................... 10 1.6 ワークスペースについて ....................................................................................... 10 2. サンプルプログラムの構成 ......................................................................... 11 2.1 TCP/IP サンプルプログラム .................................................................................. 12 2.1.1 フォルダ構成 ....................................................................................................... 12 2.1.2 ファイル構成 ....................................................................................................... 13 2.2 TCP/IP バイパスモードサンプルプログラム............................................................... 15 2.2.1 フォルダ構成 ....................................................................................................... 15 2.2.2 ファイル構成 ....................................................................................................... 16 3. 動作説明................................................................................................ 18 3.1 ビルド・デバッグ方法.......................................................................................... 18 3.2 動作説明........................................................................................................... 18 3.2.1 サンプルプログラム概要 ......................................................................................... 18 3.2.2 サンプルプログラム動作内容 ................................................................................... 20 3.2.3 TCP/IP サンプルプログラムの設定パラメータ.............................................................. 21 3.2.4 TCP/IP バイパスモードサンプルプログラムの設定パラメータ ......................................... 24 3.2.5 サンプルプログラムの動作フロー(初期化処理) ......................................................... 27 3.2.6 サンプルプログラムの動作フロー(WLAN モード) ...................................................... 28 3.2.7 サンプルプログラムの動作フロー(BT モード) ........................................................... 38 3.2.8 サンプルプログラムの動作フロー(BLE モード) ......................................................... 44 3.3 WLAN/Bluetooth 共存モード(TCP/IP バイパスモード時限定) .................................... 49 3.4 SPI クロック ..................................................................................................... 50 4. 開発環境使用時の各設定値 ......................................................................... 51 AP-RX63N-0A WM-RP-10 サンプルプログラム解説 2版 2021 年01月27日

Upload: others

Post on 30-Jan-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    1 AN1533 AP-RX63N-0A サンプルプログラム解説

    目 次

    1. 概要 ....................................................................................................... 3

    1.1 概要 ................................................................................................................. 3

    1.2 本サンプルプログラムについて ............................................................................... 6

    1.3 ネットワーク構成イメージ ..................................................................................... 8

    1.4 動作モード ......................................................................................................... 9

    1.5 開発環境 ........................................................................................................... 10

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

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

    2.1 TCP/IP サンプルプログラム .................................................................................. 12

    2.1.1 フォルダ構成 ....................................................................................................... 12

    2.1.2 ファイル構成 ....................................................................................................... 13

    2.2 TCP/IP バイパスモードサンプルプログラム ............................................................... 15

    2.2.1 フォルダ構成 ....................................................................................................... 15

    2.2.2 ファイル構成 ....................................................................................................... 16

    3. 動作説明 ................................................................................................ 18

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

    3.2 動作説明 ........................................................................................................... 18

    3.2.1 サンプルプログラム概要 ......................................................................................... 18

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

    3.2.3 TCP/IP サンプルプログラムの設定パラメータ .............................................................. 21

    3.2.4 TCP/IP バイパスモードサンプルプログラムの設定パラメータ ......................................... 24

    3.2.5 サンプルプログラムの動作フロー(初期化処理) ......................................................... 27

    3.2.6 サンプルプログラムの動作フロー(WLAN モード) ...................................................... 28

    3.2.7 サンプルプログラムの動作フロー(BT モード) ........................................................... 38

    3.2.8 サンプルプログラムの動作フロー(BLE モード) ......................................................... 44

    3.3 WLAN/Bluetooth 共存モード(TCP/IP バイパスモード時限定) .................................... 49

    3.4 SPI クロック ..................................................................................................... 50

    4. 開発環境使用時の各設定値 ......................................................................... 51

    AP-RX63N-0A

    WM-RP-10 サンプルプログラム解説

    ・SSW

    2版 2021 年01月27日

    Fig1.2-1 動作モード設定

    1版 2011年06月06日

    JSW3

    Fig1.2-1 動作モード設定

    1版 2011年06月06日

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    2 AN1533 AP-RX63N-0A サンプルプログラム解説

    5. WM-RP-10 制御方法 ................................................................................ 53

    5.1 概要 ................................................................................................................ 53

    5.2 SPI ................................................................................................................. 53

    5.2.1 SPI 仕様 .............................................................................................................. 53

    5.2.2 初期化 ................................................................................................................ 54

    5.2.3 コマンド制御 ....................................................................................................... 54

    5.2.4 非同期メッセージ .................................................................................................. 55

    5.2.5 INTR 割り込み信号のアクティブ .............................................................................. 55

    5.2.6 INTR 割り込み発生条件 .......................................................................................... 55

    6. Redpine Signals 社提供 API ...................................................................... 56

    6.1 概要 ................................................................................................................ 56

    6.2 サンプルプログラムで使用している API ................................................................... 57

    6.2.1 初期化で使用する API ............................................................................................ 57

    6.2.2 WLAN モードで使用する API ................................................................................... 58

    6.2.3 BT モードで使用する API ........................................................................................ 68

    6.2.4 BLE モードで使用する API ...................................................................................... 74

    6.3 API の使用について ............................................................................................. 82

    6.4 補足事項 ........................................................................................................... 83

    7. 参考資料 ................................................................................................ 85

    2021 年 1 月時点において Redpine Signals 社は買収によりシリコンラボラトリーズ社に統合されました。

    本ドキュメントでは旧社名 Redpine Signals で記載されておりますので、ご注意ください。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    3 AN1533 AP-RX63N-0A サンプルプログラム解説

    1. 概要

    1.1 概要

    本アプリケーションノートでは WM-RP-10 用サンプルプログラムについて解説します。

    本サンプルプログラムは「無線 LAN」「Bluetooth Classic」「Bluetooth Low Energy」の各無線通信において、ク

    ライアント機能やアクセスポイント機能、あるいは、スレーブ機能やマスター機能などの各種機能を動作確認できる

    プログラムです。

    また、本サンプルプログラムは WM-RP-10 に内蔵された TCP/IP プロトコルスタックを使用して動作する「TCP/IP

    サンプルプログラム」と、内蔵のプロトコルスタックを使用せずにユーザが外部で用意したプロトコルスタックを使

    用して動作する「TCP/IP バイパスモードサンプルプログラム」の 2 種類を用意しています。

    サンプルプログラムの構成イメージは以下の通りです。

    TCP/IP サンプルプログラムの構成イメージ

    ホスト CPU

    アプリケーション

    ネットワーク通信処理部

    デバイスドライバ

    SPI 通信

    ミドルウェア

    WM-RP-10 用 API 群/Redpine 社提供 API 群

    WM-RP-10 インタフェースドライバ

    WiFi プロトコルスタック

    RF トランシーバ

    RF コントロールドライバ(WiFi/Bluetooth)

    Bluetooth プロトコルスタック

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    4 AN1533 AP-RX63N-0A サンプルプログラム解説

    TCP/IP バイパスモードサンプルプログラムの構成イメージ

    ホスト CPU

    アプリケーション

    ネットワーク通信処理部

    デバイスドライバ

    SPI 通信

    ミドルウェア

    WM-RP-10 用 API 群/Redpine 社提供 API 群

    WM-RP-10 インタフェースドライバ

    WiFi プロトコルスタック

    RF コントロールドライバ(WiFi/Bluetooth)

    Bluetooth プロトコルスタック

    RF トランシーバ

    WiFi プロトコルスタック

    (TCP/IP)

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    5 AN1533 AP-RX63N-0A サンプルプログラム解説

    各モードの動作内容と動作確認に必要な機器を以下に示します。

    モード 動作内容 動作確認に必要な機器例

    ■WLAN モード

    WLAN Client モード ・アクセスポイントへの接続

    ・TCP クライアント ソケット通信

    (1 秒経過ごとに 1 バイト送信、

    エコーバック)

    ネットワーク通信可能な PC/スマート

    フォン

    アクセスポイント

    Wi-Fi Direct モード ・Wi-Fi Direct による接続

    TCP サーバ ソケット通信

    (エコーバック)

    Wi-Fi Direct に対応した PC/スマートフ

    ォン

    (WM-RP-10 同士の通信不可)

    Enterprise Security

    Client モード

    ・アクセスポイントへの接続

    ・TCP クライアント ソケット通信

    (1 秒ごとに 1 バイト送信、エコーバック)

    ネットワーク通信可能な PC

    アクセスポイント

    RADIUS サーバ(EAP-PEAP

    (MS-CHAPv2)認証方式対応)

    Access Point モード ・アクセスポイントの生成

    ・TCP サーバ ソケット通信

    (エコーバック)

    ネットワーク通信可能な PC/スマート

    フォン

    ■Bluetooth Classic モード ※これ以降、Bluetooth Classic は BT と略して示します。

    Slave モード ・SPP(Serial Port Profile)通信

    ・エコーバック

    BT Master 動作、SPP 通信可能なスマ

    ートフォン

    Master モード ・SPP 通信

    ・1 秒経過ごとに 1 バイト送信

    ・エコーバック

    BT Slave 動作、SPP 通信可能なスマー

    トフォン

    ■Bluetooth Low Energy モード ※これ以降、Bluetooth Low Energy は BLE と略して示します。

    Peripheral モード ・GATT バッテリーサービス

    ・1 秒経過ごとにバッテリー値の更新

    BLE スキャン動作可能なスマートフォ

    Central モード ・GATT バッテリーサービスの参照 GATT バッテリーサービスの通信に対

    応したスマートフォン

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    6 AN1533 AP-RX63N-0A サンプルプログラム解説

    1.2 本サンプルプログラムについて

    本サンプルプログラムは、ルネサス エレクトロニクス株式会社提供のミドルウェアおよびドライバを AP-RX63N-0A に

    移植しています。

    各ミドルウェアおよびドライバの詳細については、以下の資料を参照してください。

    入手につきましては、ルネサス エレクトロニクス株式会社ウェブサイトの下記のページにて、検索を行ってください。

    ルネサス エレクトロニクス社 RX63N サンプルコード

    https://www.renesas.com/jp/ja/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcu

    s/rx63n-32-bit-microcontrollers-enhanced-security-image-capture#documents

    ● BSP

    ・資料名

    RX ファミリ ボードサポートパッケージモジュール Firmware Integration Technology

    機能名称:BSP

    ● BYTEQ

    ・資料名

    RX ファミリ バイト型キューバッファ(BYTEQ) モジュール Firmware Integration Technology

    機能名称:その他

    ● CMT

    ・資料名

    RX ファミリ CMT モジュール Firmware Integration Technology

    機能名称:タイマ

    ● GPIO

    ・資料名

    RX ファミリ GPIO モジュール Firmware Integration Technology

    機能名称:I/O 設定

    ● MPC

    ・資料名

    RX ファミリ MPC モジュール Firmware Integration Technology

    機能名称:端子設定

    (※)資料をダウンロードする際にはルネサス エレクトロニクス株式会社の My Renesas への登録が必要となります。

    https://www.apnet.co.jp/https://www.renesas.com/jp/ja/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus/rx63n-32-bit-microcontrollers-enhanced-security-image-capture#documentshttps://www.renesas.com/jp/ja/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus/rx63n-32-bit-microcontrollers-enhanced-security-image-capture#documents

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    7 AN1533 AP-RX63N-0A サンプルプログラム解説

    ● SCI

    ・資料名

    RX ファミリ SCI モジュール Firmware Integration Technology

    機能名称:SCI

    ● ネットワーク通信

    ・資料名

    RX ファミリ イーサネットモジュール Firmware Integration Technology

    機能名称:Ethernet

    RX ファミリ システムタイマモジュール Firmware Integration Technology

    機能名称:組み込み用 TCP/IP M3S-T4-Tiny

    RX ファミリ Ethernet ドライバと組み込み用 TCP/IP M3S-T4-Tiny のインタフェース変換モジュール

    Firmware Integration Technology

    機能名称:組み込み用 TCP/IP M3S-T4-Tiny

    RX ファミリ 組み込み用 TCP/IP M3S-T4-Tiny モジュール Firmware Integration Technology

    機能名称:組み込み用 TCP/IP M3S-T4-Tiny

    ● USB PCDC

    ・資料名

    USB Basic Host and Peripheral Driver Firmware Integration Technology

    機能名称:USB

    RX ファミリ USB Peripheral Communications Device Class Driver (PCDC) Firmware Integration Technology

    機能名称:USB

    ● TCP/IP サンプルプログラム

    ・資料名

    RX ファミリ 組み込み用 TCP/IP M3S-T4-Tiny を用いたサンプルプログラム

    機能名称:TCP/IP(サンプルプログラム)

    ● USB PCDC サンプルプログラム

    ・資料名

    USB ペリフェラルコミュニケーションデバイスクラスドライバ(PCDC)による

    USB ホストとの USB 通信を行うサンプルプログラム Firmware Integration Technology

    機能名称:USB(サンプルプログラム)

    (※)資料をダウンロードする際にはルネサス エレクトロニクス株式会社の My Renesas への登録が必要となります。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    8 AN1533 AP-RX63N-0A サンプルプログラム解説

    1.3 ネットワーク構成イメージ

    本サンプルプログラムの各機能におけるネットワーク構成イメージ図を示します。(図中のボードは AP-RX63N-0A です)

    WLAN Client モード

    アクセスポイント経由で、無線通信を行います。

    Wi-Fi Direct モード

    WM-RP-10 とスマートフォンなどの端末同士が直接無線通信を行います。

    ※WM-RP-10 同士の接続は行えません。

    Enterprise Security Client モード

    エンタープライズセキュリティ対応アクセスポイント経由で、無線通信を行います。

    アクセスポイント

    +RADIUS サーバ

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    9 AN1533 AP-RX63N-0A サンプルプログラム解説

    Access Point モード

    WM-RP-10 側がアクセスポイントとなり、スマートフォンなどの端末が WM-RP-10 に接続して、無線通信を行います。

    BT Slave モード

    BT Master モード

    BLE Peripheral モード

    BLE Central モード

    WM-RP-10 とスマートフォンなどの端末同士が直接無線通信を行います。

    1.4 動作モード

    本サンプルプログラムは、AP-RX63N-0A で動作します。CPU 動作モード、各メモリ設定につきましては、

    「AP-RX63N-0A ハードウェアマニュアル」をご確認ください。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    10 AN1533 AP-RX63N-0A サンプルプログラム解説

    1.5 開発環境

    本サンプルプログラムは統合開発環境 CS+を用いて開発されています。

    開発に使用した開発環境、コンパイラのバージョンは次のとおりです。

    ソフトウェア バージョン 備考

    CS+ 8.04.00 -

    RXC 2.08.00 RX ファミリ用 C/C++コンパイラパッケージに付属

    (※)

    ※「RX ファミリ用 C/C++コンパイラパッケージ」です。ルネサス エレクトロニクス社のウェブサイトより評価版をダウン

    ロードできます。

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

    本サンプルプログラムのプロジェクトファイルは次のフォルダに格納されています。

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

    TCP/IP サンプルプログラム

    プロジェクトフォルダ

    \Sample\ap_rx63n_0a_wmrp10 -

    TCP/IP バイパスモード

    サンプルプログラム

    プロジェクトフォルダ

    \Sample\ap_rx63n_0a_wmrp10_bypass 使用する TCP/IP プロトコルスタックは

    「M3S-T4-Tiny(ルネサス エレクトロ

    ニクス社製)」

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    11 AN1533 AP-RX63N-0A サンプルプログラム解説

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

    本章では、サンプルプログラムの中でも WM-RP-10 の動作に関わる箇所を中心に記述し、ミドルウェア・ドライバ等のファ

    イルに関しては説明を省略している箇所があります。

    【サンプルプログラム一覧】

    TCP/IP サンプルプログラム

    (内蔵スタックモード)

    TCP/IP バイパスモードサンプルプログラム

    (バイパスモード)

    WLAN Client モード WLAN Client モード

    Wi-Fi Direct モード Enterprise Security Client モード

    Enterprise Security Client モード Access Point モード

    Access Point モード WLAN Client モード + BT Slave モード

    BT Slave モード WLAN Client モード + BT Master モード

    BT Master モード WLAN Client モード + BLE Peripheral モード

    BLE Peripheral モード WLAN Client モード + BLE Cenral モード

    BLE Central モード Access Point モード + BT Slave モード

    Access Point モード + BT Master モード

    Access Point モード + BLE Peripheral モード

    Access Point モード + BLE Cenral モード

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    12 AN1533 AP-RX63N-0A サンプルプログラム解説

    2.1 TCP/IP サンプルプログラム

    2.1.1 フォルダ構成

    サンプルプログラムは、共通して使用するフォルダ(デバイスドライバ、ミドルウェア等)と、WM-RP-10 の動作モード

    ごとで異なるアプリケーション用フォルダとで構成されています。

    ap_rx63n_0a_wmrp10

    DefaultBuild 動作用ワークフォルダ

    Source

    bsp マイコンの初期設定、クロック設定、ボード設定など

    peripheral マイコン周辺機能制御

    wmrp10_apis WM-RP-10 制御

    app アプリケーション

    inc アプリケーションヘッダ

    モード機能部

    共通使用部

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    13 AN1533 AP-RX63N-0A サンプルプログラム解説

    2.1.2 ファイル構成

    ■共通して使用するファイル

    <Sample\ap_rx63n_0a_wmrp10>

    <Sample\ap_rx63n_0a_wmrp10\Source>

    <Sample\ap_rx63n_0a_wmrp10\Source\bsp>

    clock_init.c ・・・ クロック初期化

    clock_init.h ・・・ クロック初期化ヘッダファイル

    dbsct.c ・・・ セクション初期化

    hwsetup.c ・・・ ハードウェア初期化

    hwsetup.h ・・・ ハードウェア初期化ヘッダファイル

    intprg.c ・・・ 割り込みベクタ処理関数ファイル

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

    non_existent_port_init.c ・・・ ポート初期化

    non_existent_port_init.h ・・・ ポート初期化ヘッダファイル

    resetprg.c ・・・ PowerOn リセット時の動作処理ファイル

    sbrk.c ・・・ ヒープメモリ処理ファイル

    sbrk.h ・・・ ヒープメモリサイズ定義ファイル

    stacksct.h ・・・ スタックサイズ定義ファイル

    typedefine.h ・・・ typedef 定義用ヘッダファイル

    vect.h ・・・ 割り込みベクタ処理関数定義ヘッダファイル

    vecttbl.c ・・・ 割り込みベクタテーブルファイル

    <Sample\ap_rx63n_0a_wmrp10\Source\peripheral>

    peripheral.h ・・・ 周辺機能ヘッダファイル

    clock.h ・・・ クロック周波数定義ファイル

    irq.c ・・・ IRQ 割り込み処理ファイル

    irq.h ・・・ IRQ 割り込み処理ヘッダファイル

    sci.c ・・・ SCI 処理通信ファイル

    sci.h ・・・ SCI 通信処理ヘッダファイル

    sci_spi.c ・・・ 簡易 SPI 処理ファイル

    sci_spi.h ・・・ 簡易 SPI 処理ヘッダファイル

    tmr.c ・・・ タイマ処理ファイル

    tmr.h ・・・ タイマ処理ヘッダファイル

    <Sample\ap_rx63n_0a_wmrp10\Source\wmrp10_apis>

    WM-RP-10 制御プログラムです。

    詳しくは「6. Redpine Signals 社提供 API」で説明します。

    ap_rx63n_0a_wmrp10.mtpj ・・・ CS+用プロジェクトファイル

    ap_rx63n_0a_wmrp10.rcpe ・・・ e2studio 用プロジェクトファイル

    main.c ・・・ メイン関数

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    14 AN1533 AP-RX63N-0A サンプルプログラム解説

    ■モードごとのファイル

    <Sample\ap_rx63n_0a_wmrp10\Source\app>

    bt_slave.c ・・・ BT Slave モードサンプルプログラム

    bt_master.c ・・・ BT Master モードサンプルプログラム

    ble_peripheral.c ・・・ BLE Peripheral モードサンプルプログラム

    ble_central.c ・・・ BLE Central モードサンプルプログラム

    wlan_ap.c ・・・ Access Point モードサンプルプログラム

    wlan_client.c ・・・ WLAN Client モードサンプルプログラム

    wlan_direct.c ・・・ Wi-Fi Direct モードサンプルプログラム

    wlan_eap.c ・・・ Enterprise Security Client モードサンプルプログラム

    wlan_tcp.c ・・・ TCP server、TCP client サンプルプログラム

    sample.c ・・・ サンプルアプリケーションメインプログラム

    <Sample\ap_rx63n_0a_wmrp10\Source\app\inc>

    bt_slave_config.h ・・・ BT Slave モード用パラメータ定義

    bt_master_config.h ・・・ BT Master モード用パラメータ定義

    ble_peripheral_config.h ・・・ BLE Peripheral モード用パラメータ定義

    ble_central_config.h ・・・ BLE Central モード用パラメータ定義

    wlan_ap_config.h ・・・ Access Point モード用パラメータ定義

    wlan_client_config.h ・・・ WLAN Client モード用パラメータ定義

    wlan_direct_config.h ・・・ Wi-Fi Direct モード用パラメータ定義

    wlan_eap_config.h ・・・ Enterprise Security Client モード用パラメータ定義

    wlan_tcp_config.h ・・・ TCP server、TCP client 用パラメータ定義

    sample.h ・・・ サンプルアプリケーションメインヘッダ

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    15 AN1533 AP-RX63N-0A サンプルプログラム解説

    2.2 TCP/IP バイパスモードサンプルプログラム

    2.2.1 フォルダ構成

    サンプルプログラムは、共通して使用するフォルダ(デバイスドライバ、ミドルウェア等)と、WM-RP-10 の動作モード

    ごとで異なるアプリケーション用フォルダとで構成されています。

    ap_rx63n_0a_wmrp10_bypass

    DefaultBuild 動作用ワークフォルダ

    src

    r_bsp BSP フォルダ

    r_byteq BYTEQ モジュールフォルダ

    r_cmt_rx CMT モジュールフォルダ

    r_config 各モジュールの設定ファイルフォルダ

    r_ether_rx Ethernet コントローラモジュールフォルダ

    r_gpio_rx GPIO モジュールフォルダ

    r_mpc_rx MPC モジュールフォルダ

    r_sci_rx SCI モジュールフォルダ

    r_sys_time_rx システムタイマモジュールフォルダ

    r_t4_driver_rx TCP/IP M3S-T4-Tiny インタフェース変換モジュールフォルダ

    r_t4_rx TCP/IP M3S-T4-Tiny TCP/IP プロトコルスタックフォルダ

    tcp_sample TCP/IP アプリケーションフォルダ

    wmrp10_apis WM-RP-10 制御

    app アプリケーション

    inc アプリケーションヘッダ

    モード機能部

    共通使用部

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    16 AN1533 AP-RX63N-0A サンプルプログラム解説

    2.2.2 ファイル構成

    ■共通して使用するファイル

    <Sample\ap_rx63n_0a_wmrp10_bypass>

    <Sample\ap_rx63n_0a_wmrp10_bypass\src>

    <Sample\ap_rx63n_0a_wmrp10_bypass\src\tcp_sample>

    config_tcpudp.c ・・・ TCP/UDP 設定ファイル

    echo_srv.c ・・・ TCP/UDP 通信ファイル

    echo_srv_sample.h ・・・ TCP/UDP 通信ヘッダファイル

    ether_dev.h ・・・ Ethernet デバイスヘッダファイル

    <Sample\ap_rx63n_0a_wmrp10_bypass\src\r_t4_driver_rx\src>

    ether_callback.c ・・・ Ethernet コールバックファイル

    t4_driver.c ・・・ TCP/IP M3S-T4-Tiny インタフェース変換ファイル

    timer.c ・・・ Ethernet 用タイマファイル

    timer.h ・・・ Ethernet 用タイマヘッダファイル

    <Sample\ap_rx63n_0a_wmrp10_bypass\src\wmrp10_apis>

    WM-RP-10 制御プログラムです。

    詳しくは「6. Redpine Signals 社提供 API」で説明します。

    ap_rx63n_0a_wmrp10_bypass.mtpj ・・・ CS+用プロジェクトファイル

    ap_rx63n_0a_wmrp10_bypass.rcpe ・・・ e2studio 用プロジェクトファイル

    main.c ・・・ メイン関数

    cmt_dev.c ・・・ CMT カウンタデバイスファイル

    cmt_dev.h ・・・ CMT カウンタデバイスヘッダファイル

    ether_app.c ・・・ Ethernet アプリケーションデバイスファイル

    ether_app.h ・・・ Ethernet アプリケーションヘッダファイル

    sci_dev.c ・・・ SCI デバイスファイル

    sci_dev.h ・・・ SCI デバイスヘッダファイル

    sci_spi.c ・・・ 簡易 SPI デバイスファイル

    sci_spi.h ・・・ 簡易 SPI デバイスヘッダファイル

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    17 AN1533 AP-RX63N-0A サンプルプログラム解説

    ■モードごとのファイル

    <Sample\ap_rx63n_0a_wmrp10_bypass\src\app>

    bt_slave.c ・・・ BT Slave モードサンプルプログラム

    bt_master.c ・・・ BT Master モードサンプルプログラム

    ble_peripheral.c ・・・ BLE Peripheral モードサンプルプログラム

    ble_central.c ・・・ BLE Central モードサンプルプログラム

    wlan_ap.c ・・・ Access Point モードサンプルプログラム

    wlan_client.c ・・・ WLAN Client モードサンプルプログラム

    wlan_eap.c ・・・ Enterprise Security Client モードサンプルプログラム

    sample.c ・・・ サンプルアプリケーションメインプログラム

    <Sample\ap_rx63n_0a_wmrp10_bypass\src\app\inc>

    bt_slave_config.h ・・・ BT Slave モード用パラメータ定義

    bt_master_config.h ・・・ BT Master モード用パラメータ定義

    ble_peripheral_config.h ・・・ BLE Peripheral モード用パラメータ定義

    ble_central_config.h ・・・ BLE Central モード用パラメータ定義

    wlan_ap_config.h ・・・ Access Point モード用パラメータ定義

    wlan_client_config.h ・・・ WLAN Client モード用パラメータ定義

    wlan_eap_config.h ・・・ Enterprise Security Client モード用パラメータ定義

    wlan_tcp_config.h ・・・ TCP server、TCP client 用パラメータ定義

    sample.h ・・・ サンプルアプリケーションメインヘッダ

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    18 AN1533 AP-RX63N-0A サンプルプログラム解説

    3. 動作説明

    3.1 ビルド・デバッグ方法

    サンプルプログラムを CPU ボード上で実行するためには、ビルドしたサンプルプログラムの実行ファイルを CPU ボードに

    ダウンロードする必要があります。

    サンプルプログラムのビルド方法および CPU ボードにサンプルプログラムをダウンロードする方法については、

    アプリケーションノート「AN1526 RX 開発環境の使用方法(CS+、Renesas Flash Programmer)」に

    詳細な手順が記されていますので、参照してください。

    また、開発環境を使用する際のプロジェクト設定については「4. 開発環境使用時の各設定値」をご参照ください。

    3.2 動作説明

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

    サンプルプログラムの概略フローを以下に示します。

    本サンプルプログラムは、大きく分けて以下の 3 つの構成で成り立っています。

    電源起動直後の「初期化処理」部

    ネットワークに参加するまでの「接続処理」部

    ネットワークに参加した後でデータ通信を行う「イベント処理」部

    初期化フロー WLAN モード 初期設定 WLAN Client モード TCP server 動作

    Wi-Fi Direct モード TCP client 動作

    Enterprise Security Client モード

    Access Point モード

    BT モード初期設定 Slave モード SPP 通信動作

    Master モード

    BLE モード初期設定 Peripheral モード キャラクタリス

    ティックの

    送受信動作

    Central モード

    初期化処理 接続処理 イベント処理

    初期化フロー

    どのモードでも最初に行う共通の処理です。周辺機能の初期化、WM-RP-10 モジュールの初期化などを行います。

    WLAN モード初期設定

    WLAN モードの初期設定を行い、次に各モードの処理を行います。モードの処理と TCP server/client の処理は別々の関

    数で構成されているため、呼び出す関数を入れ替えれば、TCP server でも TCP client でも動作させることができます。

    BT モード初期設定

    BT モードの初期設定を行い、次に各モードの処理を行います。

    BLE モード初期設定

    BLE モードの初期設定を行い、次に各モードの処理を行います。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    19 AN1533 AP-RX63N-0A サンプルプログラム解説

    本サンプルプログラムはデフォルトで「WLAN Client モード」が動作するよう設定されています。

    その他の動作モードで動作を確認する場合は、下記ソースコードの赤字をそれぞれの動作モードに対応した値に変更してくだ

    さい。

    その後、開発環境上で必ずプロジェクトの再ビルドを行ってください。

    Sample\ap_rx63n_0a_wmrp10\Source\app\inc\sample.h

    あるいは

    Sample\ap_rx63n_0a_wmrp10_bypass\src\app\inc\sample.h

    #define WMRP10_MODE (WLAN_CLIENT)

    各動作モードに対応する値

    動作確認したいモード 設定値

    WLAN Client モード(デフォルト) WLAN_CLIENT

    Wi-Fi Direct モード WLAN_DIRECT

    エンタープライズセキュリティ対応 WLAN Client モード WLAN_EAP

    アクセスポイントモード WLAN_AP

    BT スレーブモード BT_SLAVE

    BT マスターモード BT_MASTER

    BLE ペリフェラルモード BLE_PERIPHERAL

    BLE セントラルモード BLE_CENTRAL

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    20 AN1533 AP-RX63N-0A サンプルプログラム解説

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

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

    ● 電源起動後、設定した動作モードに従って、対象の機器と接続処理を試みます。

    ● 接続処理が完了後、各動作モードに従って、以下のイベント処理を行います

    WLAN Client モード

    エンタープライズセキュリティ対応 WLAN Client モード

    → ソケット通信

    (エコーバック)

    (1 秒ごとに 1 バイトをサーバに送信(「0」から始まり「9」まで、その後「0」に戻る))

    Wi-Fi Direct モード

    アクセスポイントモード

    → ソケット通信

    (エコーバック)

    ・ BT スレーブモード

    → SPP 通信

    (エコーバック)

    ・ BT マスターモード

    → SPP 通信

    (エコーバック)

    (1 秒ごとに 1 バイトをサーバに送信(「0」から始まり「9」まで、その後「0」に戻る))

    ・ BLE ペリフェラルモード

    → キャラクタリスティック(バッテリーサービス)を送信

    ・ BLE セントラルモード

    → キャラクタリスティック(バッテリーサービス)を受信

    ● 電源起動後の LED は以下のパターンで点灯/消灯を行います。

    接続中 : 1000ms 周期で点滅

    接続成功後(イベント処理中) : 点灯

    接続失敗後 : 500ms 周期で点滅

    アプリケーション終了後

    (イベント処理後)

    : 消灯

    ● SCI0 を用いて以下のパターンでログ表示を行います。(38400bps、パリティなし、ストップビット 1bit)

    ログの確認は、ホスト PC 上のターミナルソフト(ハイパーターミナル等)を使用してください。

    アプリケーション開始時 : "\r\nApplication Start\r\n"

    接続成功時(イベント処理開始時) : "\r\nConnected OK\r\n"

    接続失敗時 : "\r\nConnected NG\r\n"

    アプリケーション終了時

    (イベント処理正常終了時)

    : "\r\nApplication End (Event OK)\r\n"

    アプリケーション終了時

    (イベント処理異常終了時)

    : "\r\nApplication End (Event NG)\r\n"

    また、イベント処理内で送受信を行ったデータもそれぞれログとして表示します。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    21 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.3 TCP/IP サンプルプログラムの設定パラメータ

    本サンプルプログラムのうち、TCP/IP サンプルプログラムの各動作モードにおけるパラメータを以下にまとめます。

    パラメータはユーザの無線・ネットワーク環境に従って適宜変更し、お使いください。

    3.2.3.1 WLAN Client モードパラメータ

    項目 初期値 プログラムでの定義(wlan_client_config.h)

    周波数帯域 5GHz #define BAND RSI_BAND_5GHZ

    SSID TEST #define SSID "TEST"

    セキュリティの種類 WPA2 #define SECURITY_MODE 2

    PSK(事前共有鍵) 12345678 #define AP_PSK "12345678"

    IP アドレス 192.168.1.200 #define MY_IP_ADDR "192.168.1.200"

    サブネットマスク 255.255.255.0 #define NETMASK "255.255.255.0"

    ゲートウェイアドレス 192.168.1.253 #define GATEWAY "192.168.1.253"

    項目 初期値 プログラムでの定義(wlan_tcp_config.h)

    自身のソケット Port 50000 #define CLIENT_PORT_NUM 50000

    接続先ソケット IP 192.168.1.201 #define SERVER_IP_ADDR "192.168.1.201"

    接続先ソケット Port 50001 #define SERVER_PORT_NUM 50001

    3.2.3.2 Wi-Fi Direct モードパラメータ

    項目 初期値 プログラムでの定義(wlan_direct_config.h)

    周波数帯域 5GHz #define BAND RSI_BAND_5GHZ

    デバイス名 WMRP10 #define DEVICE_NAME "WMRP10"

    チャネル 48 #define OPER_CH 48

    SSID 接尾文字 Alpha #define SSID_POST_FIX "Alpha"

    PSK(事前共有鍵) 12345678 #define WFD_PSK "12345678"

    Group Owner インテント

    16 #define GO_INTENT 16

    接続先デバイス名 TargetDevice #define

    TARGET_DEVICE_NAME

    “TargetDevice”

    IP アドレス(※) 192.168.1.201 #define MY_IP_ADDR "192.168.1.201"

    サブネットマスク(※) 255.255.255.0 #define NETMASK "255.255.255.0"

    ゲートウェイアドレス(※) 192.168.1.253 #define GATEWAY "192.168.1.253"

    項目 初期値 プログラムでの定義(wlan_tcp_config.h)

    自身のソケット Port 50001 #define SERVER_PORT_NUM 50001

    接続可能なクライアント数 1 #define MAX_CONNECTION 1

    ※クライアント動作時のみ設定可。

    オーナー動作時は以下のデフォルト値で動作します。

    項目 初期値

    IP アドレス 192.168.100.76

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    22 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.3.3 エンタープライズセキュリティ対応 WLAN Client モードパラメータ

    項目 初期値 プログラムでの定義(wlan_eap_config.h)

    周波数帯域 5GHz #define BAND RSI_BAND_5GHZ

    SSID TEST #define SSID "TEST"

    認証方式 EAP-PEAP

    (MSCHAPV2)

    #define METHOD

    #define INNER

    "PEAP"

    "\"auth=MSCHAPV2\""

    ID test-user #define IDENTITY "\"test-user\""

    パスワード 12345678 #define EAP_PASS "\"12345678\""

    IP アドレス 192.168.1.200 #define MY_IP_ADDR "192.168.1.200"

    サブネットマスク 255.255.255.0 #define NETMASK "255.255.255.0"

    ゲートウェイアドレス 192.168.1.253 #define GATEWAY "192.168.1.253"

    項目 初期値 プログラムでの定義(wlan_tcp_config.h)

    自身のソケット Port 50000 #define CLIENT_PORT_NUM 50000

    接続先ソケット IP 192.168.1.201 #define SERVER_IP_ADDR "192.168.1.201"

    接続先ソケット Port 50001 #define SERVER_PORT_NUM 50001

    3.2.3.4 アクセスポイントモードパラメータ

    項目 初期値 プログラムでの定義(wlan_ap_config.h)

    周波数帯域 5GHz #define BAND RSI_BAND_5GHZ

    SSID TEST #define SSID "TEST"

    チャネル 48 #define OPER_CH 48

    セキュリティの種類 WPA2 #define SECURITY_MODE 2

    暗号化の種類 CCMP #define ENCRYP_MODE 2

    PSK(事前共有鍵) 12345678 #define AP_PSK "12345678"

    WLAN クライアント数 8 #define MAX_WIFI_CLIENTS 8

    IP アドレス 192.168.1.201 #define MY_IP_ADDR "192.168.1.201"

    サブネットマスク 255.255.255.0 #define NETMASK "255.255.255.0"

    ゲートウェイアドレス 192.168.1.253 #define GATEWAY "192.168.1.253"

    項目 初期値 プログラムでの定義(wlan_tcp_config.h)

    自身のソケット Port 50001 #define SERVER_PORT_NUM 50001

    接続可能なクライアント数 1 #define MAX_CONNECTION 1

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    23 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.3.5 BT スレーブモードパラメータ

    項目 初期値 プログラムでの定義(bt_srave_config.h)

    デバイス名 BT-Slave-AP-Sa

    mple

    #define BT_SET_LOCAL_NAME "BT-Slave-AP-Sample"

    PIN コード 1234 #define BT_PINCODE "1234"

    3.2.3.6 BT マスターモードパラメータ

    項目 初期値 プログラムでの定義(bt_master_config.h)

    デバイス名 BT-Master-AP-S

    ample

    #define BT_SET_LOCAL_NAME "BT-Master-AP-Sample"

    接続相手のデバイス名 BT-Slave-AP-Sa

    mple

    #define

    BT_REMOTE_DEVICE_NAME

    "BT-Slave-AP-Sample"

    PIN コード 1234 #define BT_PINCODE "1234"

    3.2.3.7 BLE ペリフェラルモードパラメータ

    項目 初期値 プログラムでの定義(ble_peripheral_config.h)

    デバイス名 BLE-Peri-AP-Sa

    mple

    #define

    BLE_SET_LOCAL_NAME

    "BLE-Peri-AP-Sample"

    ランダムアドレス 00:23:A7:11:

    22:33

    #define BLE_SET_RAND_ADDR "00:23:A7:11:22:33"

    3.2.3.8 BLE セントラルモードパラメータ

    項目 初期値 プログラムでの定義(ble_central_config.h)

    デバイス名 BLE-Central-AP

    -Sample

    #define

    BLE_SET_LOCAL_NAME

    "BLE-Central-AP-Sample

    "

    接続相手のデバイス名 BLE-Peri-AP-Sa

    mple

    #define BLE_SET_RAND_ADDR "BLE-Peri-AP-Sample"

    ランダムアドレス 00:23:A7:44:

    55:66

    #define

    BLE_REMOTE_DEVICE_NAME

    "00:23:A7:44:55:66"

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    24 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.4 TCP/IP バイパスモードサンプルプログラムの設定パラメータ

    本サンプルプログラムのうち、TCP/IP バイパスモードサンプルプログラムの各動作モードにおけるパラメータを以下にまとめ

    ます。

    パラメータはユーザの無線・ネットワーク環境に従って適宜変更し、お使いください。

    3.2.4.1 WLAN Client モードパラメータ

    項目 初期値 プログラムでの定義(wlan_client_config.h)

    周波数帯域 5GHz #define BAND RSI_BAND_5GHZ

    SSID TEST #define SSID "TEST"

    セキュリティの種類 WPA2 #define SECURITY_MODE 2

    PSK(事前共有鍵) 12345678 #define AP_PSK "12345678"

    項目 初期値 プログラムでの定義(ether_app.h)

    IP アドレス 192.168.1.200 #define ETHERNET_MY_IPADDR (192.168.1.200)

    サブネットマスク 255.255.255.0 #define ETHERNET_MY_SUBNET (255.255.255.0)

    ゲートウェイアドレス 192.168.1.253 #define

    ETHERNET_MY_GATEWAY

    (192.168.1.253)

    自身のソケット Port 50000 #define ETHERNET_MY_PORT (50000)

    接続先ソケット IP 192.168.1.201 #define ETHERNET_DST_IPADDR (192.168.1.201)

    接続先ソケット Port 50001 #define

    ETHERNET_DST_PORTNO

    (50001)

    3.2.4.2 エンタープライズセキュリティ対応 WLAN Client モードパラメータ

    項目 初期値 プログラムでの定義(wlan_eap_config.h)

    周波数帯域 5GHz #define BAND RSI_BAND_5GHZ

    SSID TEST #define SSID "TEST"

    認証方式 EAP-PEAP

    (MSCHAPV2)

    #define METHOD

    #define INNER

    "PEAP"

    "\"auth=MSCHAPV2\""

    ID test-user #define IDENTITY "\"test-user\""

    パスワード 12345678 #define EAP_PASS "\"12345678\""

    項目 初期値 プログラムでの定義(ether_app.h)

    IP アドレス 192.168.1.200 #define ETHERNET_MY_IPADDR (192.168.1.200)

    サブネットマスク 255.255.255.0 #define ETHERNET_MY_SUBNET (255.255.255.0)

    ゲートウェイアドレス 192.168.1.253 #define

    ETHERNET_MY_GATEWAY

    (192.168.1.253)

    自身のソケット Port 50000 #define ETHERNET_MY_PORT (50000)

    接続先ソケット IP 192.168.1.201 #define ETHERNET_DST_IPADDR (192.168.1.201)

    接続先ソケット Port 50001 #define

    ETHERNET_DST_PORTNO

    (50001)

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    25 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.4.3 アクセスポイントモードパラメータ

    項目 初期値 プログラムでの定義(wlan_ap_config.h)

    周波数帯域 5GHz #define BAND RSI_BAND_5GHZ

    SSID TEST #define SSID "TEST"

    セキュリティの種類 WPA2 #define SECURITY_MODE 2

    暗号化の種類 CCMP #define ENCRYP_MODE 2

    PSK(事前共有鍵) 12345678 #define AP_PSK "12345678"

    WLAN クライアント数 8 #define MAX_WIFI_CLIENTS 8

    項目 初期値 プログラムでの定義(ether_app.h)

    IP アドレス 192.168.1.200 #define ETHERNET_MY_IPADDR (192.168.1.200)

    サブネットマスク 255.255.255.0 #define ETHERNET_MY_SUBNET (255.255.255.0)

    ゲートウェイアドレス 192.168.1.253 #define

    ETHERNET_MY_GATEWAY

    (192.168.1.253)

    自身のソケット Port 50000 #define ETHERNET_MY_PORT (50000)

    接続先ソケット IP 192.168.1.201 #define ETHERNET_DST_IPADDR (192.168.1.201)

    接続先ソケット Port 50001 #define

    ETHERNET_DST_PORTNO

    (50001)

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    26 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.4.4 BT スレーブモードパラメータ

    項目 初期値 プログラムでの定義(bt_srave_config.h)

    デバイス名 BT-Slave-AP-Sa

    mple

    #define BT_SET_LOCAL_NAME "BT-Slave-AP-Sample"

    PIN コード 1234 #define BT_PINCODE "1234"

    3.2.4.5 BT マスターモードパラメータ

    項目 初期値 プログラムでの定義(bt_master_config.h)

    デバイス名 BT-Master-AP-S

    ample

    #define BT_SET_LOCAL_NAME "BT-Master-AP-Sample"

    接続相手のデバイス名 BT-Slave-AP-Sa

    mple

    #define

    BT_REMOTE_DEVICE_NAME

    "BT-Slave-AP-Sample"

    PIN コード 1234 #define BT_PINCODE "1234"

    3.2.4.6 BLE ペリフェラルモードパラメータ

    項目 初期値 プログラムでの定義(ble_peripheral_config.h)

    デバイス名 BLE-Peri-AP-Sa

    mple

    #define

    BLE_SET_LOCAL_NAME

    "BLE-Peri-AP-Sample"

    ランダムアドレス 00:23:A7:11:2

    2:33

    #define BLE_SET_RAND_ADDR "00:23:A7:11:22:33"

    3.2.4.7 BLE セントラルモードパラメータ

    項目 初期値 プログラムでの定義(ble_central_config.h)

    デバイス名 BLE-Central-AP

    -Sample

    #define

    BLE_SET_LOCAL_NAME

    "BLE-Central-AP-Sample

    "

    接続相手のデバイス名 BLE-Peri-AP-Sa

    mple

    #define BLE_SET_RAND_ADDR "BLE-Peri-AP-Sample"

    ランダムアドレス 00:23:A7:44:5

    5:66

    #define

    BLE_REMOTE_DEVICE_NAME

    "00:23:A7:44:55:66"

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    27 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.5 サンプルプログラムの動作フロー(初期化処理)

    どの動作モードでも最初に行う共通の処理です。

    処理のいずれかでエラーが起きると、その後の処理が正常に動作しません。

    エラーが起きた際はボードと WM-RP-10 の接続などをご確認ください。

    1. 周辺機能の初期化

    タイマ、SPI、IRQ 割り込みの初期化を行います。

    2. WM-RP-10 初期化コマンド

    WM-RP-10 モジュールの初期化を行います。

    3. Board Ready 待ち

    WM-RP-10 モジュールの初期化後、Board Ready 状態になるまで待ちます。

    4. Bootload 処理

    Bootload 処理を行います。INTR 割り込み信号のアクティブはここで設定します。

    電源投入

    2.WM-RP-10

    初期化コマンド

    4.Bootload 処理

    3.BoardReady 待ち

    「WLAN モード」「BT モード」「BLE モード」

    それぞれのフローへ進む

    huro-

    1.周辺機能の初期化

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    28 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.6 サンプルプログラムの動作フロー(WLAN モード)

    3.2.6.1 サンプルプログラムの動作フロー(WLAN モード初期化共通部)

    BT, BLE 以外の動作モードを選択した際に、本項目の処理が行われます。

    1. Set Operating Mode コマンド

    WM-RP-10 モジュールの動作モードと TCP/IP の機能などを設定します。

    ・ oper_mode : 使用する動作モードを設定します。

    ・ feature_bit_map : セキュリティの有無、WPS 機能の有効/無効などについて設定します。

    ・ tcp_ip_fieature_bit_map : モジュール内蔵のプロトコルスタックを使用するか否かを設定します。内

    蔵プロトコルスタックを使用しない場合は、ソフトウェアにてプロトコル

    スタックを用意する必要があります。

    ・ custom_feature_bit_map : DFS チャネル帯の有効/無効(Access Point モードでは DFS チャネルは使

    用不可)、ext_custom_feature_bit_map パラメータの有効/無効などを

    設定します。

    ・ ext_custom_feature_bit_map : アンテナ外部接続の使用/不使用などを設定します。

    1.Set Operating Mode

    コマンド

    3.Init

    コマンド

    2.Band

    コマンド

    「Client モード」「Wi-Fi Direct モード」

    「Enterprise Security Client モード」「Access Point モード」

    それぞれのフローへ進む

    初期化フロー完了

    (4.Antenna Selection

    コマンド)

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    29 AN1533 AP-RX63N-0A サンプルプログラム解説

    2. Band コマンド

    電波の使用帯域を設定します。

    3. Init コマンド

    Band コマンドの次に行う必要のある初期化処理です。

    4. Antenna Selection コマンド

    アンテナの外部接続の使用/不使用などを設定します。(デフォルトはオンチップアンテナ有効)

    サンプルはオンチップアンテナを使用するため、本コマンドは省略しています。

    3.2.6.2 サンプルプログラムの動作フロー(WLAN Client モード)

    動作モードを「WLAN Client モード」を指定した場合に、本項目の処理が行われます。

    WLAN モード

    初期設定フロー

    完了

    1.Set Region

    コマンド

    2.Scan

    コマンド

    3.PSK

    コマンド

    4.Join

    コマンド

    5.Set IP Parameters

    コマンド

    「TCP client」のフローへ進む

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    30 AN1533 AP-RX63N-0A サンプルプログラム解説

    1. Set Region コマンド

    仕向地を設定します。アメリカ、欧州、日本を設定できます。

    2. Scan コマンド

    アクセスポイントをスキャンします。スキャン対象をすべてのチャネルにしたり、限定したりすることができます。

    3. PSK コマンド

    アクセスポイントの PSK(事前共有鍵)を設定します。セキュリティなしの場合、このコマンドは必要ありません。

    4. Join コマンド

    アクセスポイントに接続します。アクセスポイントの SSID、セキュリティの種類、データレート、送信出力レベルを設

    定します。

    5. Set IP Parameters コマンド

    IP アドレスを設定します。DHCP の使用/不使用を設定し、使用しない場合は IP アドレス、サブネットマスク、ゲート

    ウェイアドレスを設定します。

    なお、本コマンドは TCP/IP サンプルプログラム時にのみ使用されます。TCP/IP バイパスモードサンプルプログラムで

    は、ユーザが用意したプロトコルスタックの仕様に従って別途 IP アドレス等を設定してください。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    31 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.6.3 サンプルプログラムの動作フロー(Wi-Fi Direct モード)

    動作モードを「Wi-Fi Direct モード」を指定した場合に、本項目の処理が行われます。

    「TCP server」のフローへ進む

    3.メッセージ

    受信?

    1.Set Region

    コマンド

    2.Configure Wi-Fi Direct

    Peer-to-Peer Mode

    コマンド

    6.Join

    コマンド

    4.Wi-Fi Direct

    のメッセージ?

    5.デバイス名の

    取得

    Yes

    Yes

    No

    No

    WLAN モード 初期設定フロー

    完了

    7.Set IP Parameters コマンド

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    32 AN1533 AP-RX63N-0A サンプルプログラム解説

    1. Set Region コマンド

    仕向地を設定します。アメリカ、欧州、日本を設定できます。

    2. Configure Wi-Fi Direct Peer-to-Peer Mode コマンド

    インテント値、デバイス名、チャネル、SSID 接尾文字、PSK(事前共有鍵)を設定します。

    インテント値は 0 から 16 までの値を設定し、相手デバイスとのインテント値を比較し、大きいインテント値を設定した

    デバイス側が Group Owner になります。なお、インテント値を 16 にすると強制的に GO となります。

    GO になると、Wi-Fi Direct に対応していないデバイスからはアクセスポイントとして検出され、SSID は「DIRECT-[ラ

    ンダムな 2 文字][SSID 接尾文字]」になります。

    SSID 例:DIRECT-78Alpha

    (「DIRECT-」は固定文字列。「78」はランダム文字列。「Alpha」はサンプルプログラムで指定できる SSID)

    3. ネゴシエーション処理(メッセージ受信待ち)

    対向する Wi-Fi Direct デバイスの情報を受信待ちします。

    4. Wi-Fi Direct メッセージか判断

    メッセージを受信した後、データ内容を確認し、以下のレスポンス ID であれば、Wi-Fi Direct デバイスからのメッセー

    ジとして判断し、接続準備へ進めます。

    ・RSI_RSP_P2P_CONNREQ(0x30)

    ・RSI_RESP_WFD_DEV(0x54)

    5. デバイス名の取得

    Wi-Fi Direct デバイスとの接続には相手のデバイス名を必要とします。そのため、受信した Wi-Fi Direct メッセージか

    らデバイス名を取得します。

    6. Join コマンド

    接続する SSID を指定し、相手のデバイスと接続を行います。

    7. Set IP Parameters コマンド

    IP アドレスを設定します。DHCP の使用/不使用等を設定し、DHCP を使用しない場合は指定の IP アドレス、サブネッ

    トマスク、ゲートウェイアドレスを設定します。

    なお、本コマンドは TCP/IP サンプルプログラム時にのみ使用されます。TCP/IP バイパスモードサンプルプログラムで

    は、ユーザが用意したプロトコルスタックの仕様に従って別途 IP アドレス等を設定してください。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    33 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.6.4 サンプルプログラムの動作フロー(エンタープライズセキュリティ対応 WLAN Client モード)

    動作モードを「エンタープライズセキュリティ対応 WLAN Client モード」を指定した場合に、本項目の処理が行われます。

    1. Set Region コマンド

    仕向地を設定します。アメリカ、欧州、日本を設定できます。

    2. Set EAP Configuration コマンド

    認証方式、ID、パスワードを設定します。

    3. Scan コマンド

    アクセスポイントをスキャンします。スキャン対象をすべてのチャネルにしたり、限定したりすることができます。

    4. Join コマンド

    アクセスポイントに接続します。アクセスポイントの SSID、セキュリティの種類、データレート、送信出力レベルを設

    定します。

    WLAN モード

    初期設定フロー

    完了

    1.Set Region

    コマンド

    2.Set EAP Configuration

    コマンド

    3.Scan

    コマンド

    4.Join

    コマンド

    5.Set IP Parameters

    コマンド

    「TCP client」のフローへ進む

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    34 AN1533 AP-RX63N-0A サンプルプログラム解説

    5. Set IP Parameters コマンド

    IP アドレスを設定します。DHCP の使用/不使用を設定し、使用しない場合は IP アドレス、サブネットマスク、ゲート

    ウェイアドレスを設定します。

    なお、本コマンドは TCP/IP サンプルプログラム時にのみ使用されます。TCP/IP バイパスモードサンプルプログラムで

    は、ユーザが用意したプロトコルスタックの仕様に従って別途 IP アドレス等を設定してください。

    3.2.6.5 サンプルプログラムの動作フロー(アクセスポイントモード)

    動作モードを「アクセスポイントモード」を指定した場合に、本項目の処理が行われます。

    1. Set Region AP コマンド

    仕向地を設定します。国、ルール数、チャネル、チャネル数、送信出力レベルを設定します。

    2. Set IP Parameters コマンド

    IP アドレスを設定します。このコマンドを使用するタイミングが他のモードとは異なりますのでご注意ください。

    なお、本コマンドは TCP/IP サンプルプログラム時にのみ使用されます。TCP/IP バイパスモードサンプルプログラムで

    は、ユーザが用意したプロトコルスタックの仕様に従って別途 IP アドレス等を設定してください。

    WLAN モード

    初期設定フロー

    完了

    1.Set Region AP

    コマンド

    2.Set IP Parameters

    コマンド

    3.Configure AP Mode

    コマンド

    4.Join

    コマンド

    「TCP server」のフローへ進む

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    35 AN1533 AP-RX63N-0A サンプルプログラム解説

    3. Configure AP Mode コマンド

    チャネル、SSID、セキュリティの種類、暗号化の種類、PSK(事前共有鍵)、ビーコン間隔、DTIM 間隔、端末キープアラ

    イブ間隔、接続可能な WLAN クライアント数を設定します。

    4. Join コマンド

    アクセスポイントを生成します。SSID、データレート、送信出力レベルを設定します。SSID は Configure AP Mode コ

    マンドと同じ内容を設定してください。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    36 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.6.6 サンプルプログラムの動作フロー(TCP Server 通信)

    動作モードを「Wi-Fi Direct モード」「アクセスポイントモード」を指定した場合に、ネットワークへの参加成功後、本項目

    の処理が行われます。

    1. Open Socket コマンド

    TCP サーバのソケットをオープンします。ポート番号、接続可能な TCP クライアント数を設定します。

    なお、本コマンドは TCP/IP サンプルプログラム時にのみ使用されます。TCP/IP バイパスモードサンプルプログラムで

    は、ユーザが用意したプロトコルスタックの仕様に従ってソケットをオープンしてください。

    2. データ受信待ち

    受信するフレームのうち、レスポンス ID が RSI_RSP_DATA_RECEIVE(0x00)であるものがデータです。サンプルプロ

    グラム中の API「wmrp10_rsi_data()」でデータ受信を待つことができます。

    3. Send Data コマンド

    データを送信します。ディスクリプタ、送信データ、データサイズ、IP バージョンを設定します。

    サンプルではバージョンは IPv4 とし、受信したデータを設定することによりエコーバックを行っています。

    なお、本コマンドは TCP/IP サンプルプログラムと TCP/IP バイパスモードサンプルプログラムでは、WM-RP-10 に送信

    するデータは異なりますのでご注意ください。

    Join コマンド

    完了

    2.データ受信?

    Yes

    3.Send Data

    コマンド

    No

    1.Open Socket

    コマンド

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    37 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.6.7 サンプルプログラムの動作フロー(TCP Client 通信)

    動作モードを「WLAN Client モード」「エンタープライズセキュリティ対応 WLAN Client モード」を指定した場合に、ネッ

    トワークへの参加成功後、本項目の処理が行われます。

    1. Open Socket コマンド

    TCP クライアントのソケットをオープンします。ポート番号、接続先 IP アドレス、接続先ポート番号を設定します。

    なお、本コマンドは TCP/IP サンプルプログラム時にのみ使用されます。TCP/IP バイパスモードサンプルプログラムで

    は、ユーザが用意したプロトコルスタックの仕様に従ってソケットをオープンしてください。

    2. Send Data コマンド

    1 秒経過するたびにデータを送信します。ディスクリプタ、送信データ、データサイズ、IP バージョンを設定します。

    サンプルではバージョンは IPv4 とし、1 秒経過時に更新したデータ、1 バイトサイズを設定しています。

    なお、本コマンドは TCP/IP サンプルプログラムと TCP/IP バイパスモードサンプルプログラムでは、WM-RP-10 に送信

    するデータは異なりますのでご注意ください。

    3. データ受信待ち

    受信するフレームのうち、レスポンス ID が RSI_RSP_DATA_RECEIVE(0x00)であるものがデータです。サンプルプロ

    グラム中の API「wmrp10_rsi_data()」でデータ受信を待つことができます。

    Join コマンド

    完了

    1 秒経過?

    Yes

    2.Send Data

    コマンド

    No

    1.Open Socket

    コマンド

    3.データ受信?

    Yes

    No

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    38 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.7 サンプルプログラムの動作フロー(BT モード)

    3.2.7.1 サンプルプログラムの動作フロー(BT モード初期化共通部)

    動作モードに「BT スレーブモード」「BT マスターモード」を選択した際に、本項目の処理が行われます。

    1. Set Operating Mode コマンド

    WM-RP-10 モジュールの動作モードと TCP/IP の機能などを設定します。

    WM-RP-10 モジュールの動作モードでは WLAN and BT coexistence mode を選択してください。

    2. Set Local name コマンド

    デバイス名を設定します。

    3. Set Profile Mode コマンド

    SPP プロファイルを設定します。

    1.Set Operating Mode

    コマンド

    3.Set Profile Mode

    コマンド

    2.Set Local name

    コマンド

    「BT Slave モード」「BT Master モード」それぞれの処理へ進む

    初期化フロー完了

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    39 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.7.2 サンプルプログラムの動作フロー(BT スレーブモード)

    動作モードに「BT スレーブモード」を選択した際に、本項目の処理が行われます。

    BT モード

    初期設定フロー

    完了

    1.Set Connectability mode

    コマンド

    2.Set Device Discovery mode

    コマンド

    イベント判断

    User pincode

    request イベント

    User linkkey

    save イベント

    User linkkey

    request イベント

    3.イベント

    待ち

    接続完了?

    Auth complete

    イベント

    Yes

    No

    4.SPP イベント 待ち

    SPP 受信?

    5.SPP Transfer コマンド

    No

    Yes

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    40 AN1533 AP-RX63N-0A サンプルプログラム解説

    1. Set Connectability mode コマンド

    BT 接続を許可します。

    2. Set Device Discovery mode コマンド

    WM-RP-10 を被検索状態(スレーブモード)に設定します。

    このコマンドを実行することにより Master から検索されるようになります。

    limited discovering mode はタイムアウト付き、enable discovering mode はタイムアウトなしです。

    3. イベント待ち・イベント判断

    Masterからの接続要求がイベントとして通知されます。イベントはMasterの要求する接続手順により異なるため、Slave

    は受け取ったイベントから接続手順を判断し適切な処理を行う必要があります。

    ・ User pincode request イベント : PIN コードの入力要求をされたときに発生するイベントです。

    これを受信することで Pincode Request Reply コマンドを実行する必

    要があります。

    接続を要求する Master と同じ PIN コードを設定してください。

    あるいは、Master で PIN コードの入力が必要になった場合はこの値を

    設定してください。

    ・ User linkkey save イベント : 接続完了通知を受信した時に発生するイベントです。

    再接続に使用するリンクキーとともにこのイベントが通知されます。

    本サンプルではリンクキーをスタック領域に保存していますが、不揮

    発性メモリに保存すれば、電源 OFF、ON 後の次回接続時の Linkkey

    Reply で positive reply の設定が可能となります。

    ・ User linkkey request イベント : リンクキーの入力要求をされたときに発生するイベントです。

    過去に接続したことがあり、再接続する場合に通知されることがある

    場合、Linkkey Reply コマンドを実行してください。

    前回接続したときのリンクキーが保存してある場合は positive reply

    を設定し、保存していない場合は negative reply を設定します。

    ・ Auth complete イベント : 接続完了通知を受信した時に発生するイベントです。

    4. SPP イベント待ち

    SPP を用いて Master からデータの受信待ちを行います。

    5. SPP Transfer コマンド

    SPP を用いて Master から受信したデータを送信します。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    41 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.7.3 サンプルプログラムの動作フロー(BT マスターモード)

    動作モードに「BT マスターモード」を選択した際に、本項目の処理が行われます。

    続きは次のページ

    BT モード

    初期設定フロー

    完了

    1.Inquiry コマンド

    イベント判断

    Inquiry response イベント Inquiry complete イベント

    2.イベント待ち

    Inquiry 完了?

    イベント判断

    3.Bond コマンド

    Yes

    No

    4.イベント待ち

    User linkkey

    request イベント

    Auth complete

    イベント User linkkey

    save イベント

    User pincode

    request イベント

    接続完了? No

    Yes

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    42 AN1533 AP-RX63N-0A サンプルプログラム解説

    1. Inquiry コマンド

    BT デバイスを検索します。WLAN のスキャンに相当するコマンドです。

    2. イベント待ち

    BT デバイスの検索結果はイベントとして通知されます。そのイベントを待ちます。

    ・ Inquiry response イベント : BT デバイスの検索結果を受信した時に発生するイベントです。

    目的とするデバイスの情報を検索結果から取得してください。

    ・ Inquiry complete イベント : BT デバイスの検索が完了した時に発生するイベントです。

    3. Bond コマンド

    BT デバイスに接続します。

    ただし、あくまで接続の最初の手続きであり、このコマンドが成功しても接続が完了したわけではありません。

    また、Bond コマンドが成功すると Bond Response イベントが通知されますが、サンプルプログラムでは Bond

    Response イベントにて特別な処理は行いません。

    1 秒経過?

    Yes

    6.SPP Transfer

    コマンド

    No

    5.SPP Connect

    コマンド

    SPP 受信?

    Yes

    No

    前のページの続き

    7.SPP イベント

    待ち

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    43 AN1533 AP-RX63N-0A サンプルプログラム解説

    4. イベント待ち

    ・ User linkkey request イベント : BT デバイスとの接続に必要とするリンクキーの入力要求されたとき

    に発生するイベントです。

    Linkkey Reply コマンドを実行してください。

    過去に接続したことがあり、そのときのリンクキーを使う場合は

    「positive reply」の応答をし、リンクキーがない場合は「negative

    reply」の応答をします。

    ・ User pincode request イベント : PIN コードの入力要求をされたときに発生するイベントです。

    Pincode Request Reply コマンドを実行してください

    ・ User linkkey save イベント : PIN コードを入力した接続が成功した場合、再接続に使用するリンク

    キーを通知されると共に発生するイベントです。

    ・ Auth complete イベント : 接続完了通知を受信した時に発生するイベントです。

    5. SPP Connect コマンド

    SPP 通信の接続用コマンドです。接続相手のアドレスを指定して接続します。

    6. SPP Transfer コマンド

    1 秒ごと SPP を用いて Master から 1 バイトのデータを送信します。

    7. SPP イベント待ち

    SPP を用いて Master からデータの受信待ちを行います。

    データを受信していた場合は、SPP を用いて受信したデータを送信します。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    44 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.8 サンプルプログラムの動作フロー(BLE モード)

    3.2.8.1 サンプルプログラムの動作フロー(BLE モード初期化共通部)

    動作モードに「BLE ペリフェラルモード」「BLE セントラルモード」を選択した際に、本項目の処理が行われます。

    1. Set Operating Mode コマンド

    WM-RP-10 モジュールの動作モードと TCP/IP の機能などを設定します。

    WM-RP-10 モジュールの動作モードでは WLAN and BTLE coexistence mode を選択します。

    2. Set Local name コマンド

    デバイス名を設定します。

    3. BLE Set Random Address コマンド

    任意のランダムアドレスを設定します。

    1.Set Operating Mode

    コマンド

    3.BLE Set Random Address

    コマンド

    2.Set Local name

    コマンド

    「BLE Peripheral モード」「BLE Central モード」それぞれの処理へ進む

    初期化フロー完了

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    45 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.8.2 サンプルプログラムの動作フロー(BLE ペリフェラルモード)

    動作モードに「BLE ペリフェラルモード」を選択した際に、本項目の処理が行われます。

    1. Add GATT Service Record コマンド

    使用するサービスを設定します。

    Bluetooth SIG であらかじめ定義されたサービスを使用するか、独自サービスを作成することができます。サンプルでは

    あらかじめ定義された「バッテリーサービス(Battery Service)」を設定しています。

    ※バッテリーサービスとは Bluetooth SIG であらかじめ定義されたサービスです。

    バッテリー値の通信を想定したサービスですが、データ構造が単純で分かりやすいという特徴があります。

    1.Add GATT Service Record

    コマンド

    3.BLE Set Advertise Data

    コマンド

    2.Add Attribute Record

    コマンド

    BLE モード

    初期設定フロー

    完了

    4.Advertise Local Device

    コマンド

    1 秒経過?

    5.バッテリー値の更新

    6.Set Local Attribute Value

    コマンド

    Yes

    No

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    46 AN1533 AP-RX63N-0A サンプルプログラム解説

    2. Add Attribute Record コマンド

    サービスのキャラクタリスティックを設定します。

    キャラクタリスティックとはサービスを構成する要素のようなものであり、これも Bluetooth SIG であらかじめ定義さ

    れています。

    まずキャラクタリスティックを宣言し、次に Read/Write 等の属性と値を設定します。

    サンプルでは、バッテリー値(Battery Level)を宣言し、Read only、値は 100 を設定しています。

    3. BLE Set Advertise Data コマンド

    アドバタイジングデータを設定します。

    構成は Bluetooth SIG の Generic Access Profile(GAP)で定義されています。

    4. Advertise Local Device コマンド

    アドバタイジングをします。

    5. 1 秒経過後、バッテリー値の更新

    1 秒経過するたびにバッテリー値を更新します。

    6. Set Local Attribute Value コマンド

    バッテリー値のキャラクタリスティックを設定します。

    個々のキャラクタリスティックはハンドルで指定します。「2.Add Attribute Record コマンド」でバッテリー値のキャ

    ラクタリスティックを設定したときと同じハンドルを指定します。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    47 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.2.8.3 サンプルプログラムの動作フロー(BLE セントラルモード)

    動作モードに「BLE セントラルモード」を選択した際に、本項目の処理が行われます。

    1.BLE Scan

    コマンド

    5.Query Device State

    コマンド

    BLE モード

    初期設定フロー

    完了

    目的のデバイス?

    2.イベント待ち

    4.BLE Connect

    コマンド

    Connected?

    6.Query Profile

    コマンド

    7.Read Characteristic Value by UUID

    コマンド

    Yes

    Yes

    No

    No

    終了

    3.BLE デバイスのアドレス取得

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    48 AN1533 AP-RX63N-0A サンプルプログラム解説

    1. BLE Scan コマンド

    BLE デバイスをスキャンします。

    2. イベント待ち

    Scan Response イベントを待ちます。目的とするデバイスのレスポンスが通知されるまで待ち続けます。

    サンプルでは「BLE-Peri-AP-Sample」というデバイス名のレスポンスを待つようにしています。

    3. BLE デバイスのアドレス取得

    目的とするデバイスのアドレスを取得します。

    また、BLE Scan コマンドを再発行し、Scan 動作を停止させます。

    4. BLE Connect コマンド

    BLE デバイスに接続します。

    5. Query Device State コマンド

    デバイスの状態を取得します。接続状態になるまで取得を続けます。

    6. Query Profile コマンド

    サービスのハンドルを取得します。サービスの UUID を設定します。

    サンプルはバッテリーサービスの UUID 0x180F(GATT_SERVICE_BATTERY でマクロ定義)を設定し、ハンドルを取得

    しています。

    7. Read Characteristic Value by UUID コマンド

    キャラクタリスティックを取得します。

    キャラクタリスティックの UUID とハンドルを設定します。

    サンプルはバッテリー値の UUID 0x2A19(GATT_CHAR_BATTERY_LEVEL でマクロ定義)と「6.Query Profile コマン

    ド」で取得したハンドルを設定し、バッテリー値を取得しています。

    https://www.apnet.co.jp/

  • Copyright© ALPHA PROJECT Co.,LTD All right reserved

    https://www.apnet.co.jp

    アプリケーションノート AN1533

    ALPHA PROJECT Co.,LTD.

    49 AN1533 AP-RX63N-0A サンプルプログラム解説

    3.3 WLAN/Bluetooth 共存モード(TCP/IP バイパスモード時限定)

    WM-RP-10 には TCP/IP バイパスモード時に限り、一部 WLAN モードと BT/BLE モードを同時に使用できる WLAN/Bluetooth

    共存モードが使用可能です。

    TCP/IP バイパスモードサンプルプログラムでは下記ソースコードの赤字を同時使用したい動作モードに対応した値に変更す

    ることで、無線 LAN 機能と Bluetooth 機能を併用できます。

    その後、開発環境上で必�