第6章 UART(シリアル)インターフェースから使う
本章では、AWL13とホストシステムとをUARTインターフェースで接続して、UARTモードでAWL13の無線LAN機能を使う方法を説明します。UARTモードの詳細については、ローム社Webサイトのサポートページからダウンロードできる「BU1805GUシリーズ TCP/IP内蔵WLAN仕様書」を参照してください。また、AWL13をUSB/SDIOインターフェースで接続して使用する場合は、7章Linux無線LANインターフェースから使うを参照してください。
AWL13をUART起動モードまたはフラッシュ起動モードに設定し、ホストシステムとUART(シリアル)インターフェースで接続して使用する場合を総称して、UARTモードと呼びます。実際の操作を行う前に、UARTモードの概要について説明します。
UART起動モードで起動しホストからファームウェアをダウンロードするか、フラッシュ起動モードで起動しフラッシュメモリからファームウェアをロードした後、ファームウェアが実行されます。ファームウェア実行後の動作モードには、以下の4種類があります。
-
イニシャルモード
ファームウェア実行直後のモードです。ホストからのモード選択指示を待ち、指示されたモードに遷移します。
-
コンフィグモード
設定の変更と保存を行うモードです。イニシャルモードで、一定時間以内に0x20(スペース記号)を8回連続で受信すると、コンフィグモードに遷移します。
-
ターミナルモード
対向機器と直接シリアルインターフェースで接続したかのように、データを透過的に送受信するモードです。このモードの途中で設定変更することはできませんが、その分、簡単にデータ通信を行うことができます。イニシャルモードで一定時間以内にモード遷移を伴う入力を受信しなかったか、コンフィグモードでrunコマンドを受け付けると、ターミナルモードに遷移します。
-
コミュニケーションモード
WPSによる自動無線LAN設定など、高度な機能の利用を想定したモードです。イニシャルモードで一定時間以内に0xf1または0x09を8回連続で受信すると、コミュニケーションモードに遷移します。
各動作モード間の状態遷移は、下記に示す通りです。まず、ファームウェア実行直後は必ずイニシャルモードとなります。その後、コンフィグモード、ターミナルモード、コミュニケーションモードのいずれかのモードに遷移します。実際にデータ通信を行うことができるのは、ターミナルモードかコミュニケーションモードだけです。
AWL13のUARTモードでは、以下の方法で設定を変更できます。
-
コンフィグモード
- コンフィグモードでは、コマンドベースで設定を変更できます。コンフィグモードで変更した設定は、再起動後に反映されます。
-
コミュニケーションモード
- コミュニケーションモードでは、パケットベースで設定変更できます。コミュニケーションモードで変更した設定は、UART設定を除き、即座に反映されます。
-
HTTP経由(Webブラウザ)
- Webブラウザ等でAWL13の80番ポートに接続すると、HTTP経由で設定変更できます。HTTP経由で変更した設定は、再起動時に反映されます。
変更できる設定には、以下のものがあります。
表6.1 変更可能な設定
機能 | 説明 |
---|
UART設定 | ボーレート、データ幅、パリティの有無、ストップビット長、フロー制御などUARTの通信プロトコルに関する設定や、バッファサイズ、デリミタなど通信方式に関する設定 |
無線LAN設定 | 通信モード、使用チャンネル、SSID、暗号モード、認証モードなど無線LANの設定 |
TCP/IP設定 | IPアドレス、サブネットマスク、ゲートウェイ、DHCP、DNS、ポート番号などネットワークに関する設定 |
コンフィグモードで表5.1「アクセスポイントの設定」で調べたアクセスポイントの設定に合わせて無線LAN接続の設定をし、ターミナルモードで通信する具体的な手順について説明します。
例として、フラッシュ起動モードで起動する場合を考えます。「フラッシュメモリへのファームウェアの書き込み」を参照して、適切なファームウェアを書き込んで下さい。
DIPスイッチをフラッシュ起動モード用に設定しAWL13に電源を投入すると、ファームウェアがフラッシュメモリから自動的にロードされ、実行されます。ファームウェアが実行されると、イニシャルモードのモード選択状態となります。モード選択状態では、AWL13はモード選択時間の間[]、0x2b('+')を100[msec]ごとにホストに送信します。モード選択時間内に、ホストから0x20(スペース記号)を送信し続けると、コンフィグモードへ移行します。
| |
---|
ファームウェア実行時にINITボタンが押下されており、かつ、3秒間その状態が維持された場合、内蔵EEPROMに保存されている設定が初期化されます。
|
コンフィグモードへの移行が成功した場合、以下のような表示になります。
| モード選択時間の間、AWL13は0x2b('+')を送信します。 |
| ホストから0x20(スペース記号)を送信し続けると、コンフィグモードに移行します。 |
| |
---|
新しいバージョンのファームウェアで起動した場合、必ず設定をデフォルト値に戻して下さい。
| 設定をデフォルト値に戻します。 | | 設定を内蔵EEPROMに保存します。 |
|
暗号化方式が、WPA-PSKまたはWPA2-PSKの場合は、図6.4「WPA2-PSK(AES)で接続する場合の無線LAN設定手順」を、暗号化方式がWEP64またはWEP128の場合は、図6.5「WEP128で接続する場合の無線LAN設定手順」を参考に無線LANの設定を行ってください。
| 無線LANのネットワークタイプをインフラストラクチャモードに設定します。 |
| 無線LAN通信に使用するチャンネルを設定します。指定可能な値は1〜13のいずれかです。 |
| AWL13が参加する無線LANネットワークのSSID(サービスセット識別子)を設定します。32バイト以下の任意の文字列を指定できます。 |
| 無線LAN通信に使用する暗号方式を設定します。WPA-PSK(TKIP)に設定する場合は"wpa-tkip"を、WPA2-PSK(AES)に設定する場合は"wpa2-aes"を指定します。 |
| PSK[]として使用されるパスフレーズを設定します。8から63文字のASCII印字可能文字または64桁の16進数文字列を指定できます。 |
| 無線LANのネットワークタイプをインフラストラクチャモードに設定します。 |
| 無線LAN通信に使用するチャンネルを設定します。指定可能な値は1〜13のいずれかです。 |
| AWL13が参加する無線LANネットワークのSSID(サービスセット識別子)を設定します。32バイト以下の任意の文字列を指定できます。 |
| 無線LAN通信に使用する暗号方式を設定します。WEP64に設定する場合は"wep64"を、WEP128に設定する場合は"wep128"を指定します。 |
| WEPキーを設定します。WEP64の場合は10桁の、WEP128の場合は26桁の16進数文字列を指定します。 |
無線LAN設定に続いて、TCP/IP設定を行います。図6.6「TCP/IP設定手順」では必要最低限の設定項目だけ示しています。ターミナルモードのデフォルト設定では、AWL13がTCPサーバーとなり、16384番ポートを使用します。
コンフィグモードで設定した値は、再起動するまで反映されません。内蔵EEPROMに保存されていない設定は再起動すると失われてしまうため、必ず設定を保存してください。
再起動し、ホストから何も送信しないで待っていると、自動でターミナルモードへ移行します。評価ボードのLED1が点滅している間は、アクセスポイントとの接続が確立されていません。LED1が点灯状態となれば、接続が確立されたことを示します。
接続の確認方法の一例として、ここでは、AWL13の対向機がLinux PCの場合の手順を紹介します。まず、対向機でpingコマンドを実行し、AWL13がネットワークに参加できているか確認します。
正常に接続できている場合、図6.9「pingコマンドによる接続確認」に示すような結果が得られます。もし、pingへの反応が無い場合、無線LAN設定を再度確認してください。
続いて、telnetコマンドを使用して、AWL13とのデータ通信ができるかを確認します。
図6.10「telnetコマンドによるデータ通信」のように表示されれば、AWL13とのデータ通信が可能です。telnetの画面に入力した文字が、そのままAWL13のホストに送信され、AWL13のホストから送信した文字が、telnetの画面にそのまま表示されます。もし、telnertで接続できない場合、TCP/IP設定を確認してください。