APIリファレンス

WLAN APIs

コマンドID コマンド名 機能
0x0001 iSDIO_WLAN_Scan 接続可能な無線LANの探索をします。
0x0002 iSDIO_WLAN_Connect ステーションとしての無線LANの接続をします。
0x0003 iSDIO_WLAN_Establish アクセスポイントとしての無線LAN接続の確立をします。
0x0005 iSDIO_WLAN_StartWPS ステーションとしてのWPSによる無線LAN接続設定の開始をします。
0x0007 iSDIO_WLAN_Disconnect 無線LANを切断します。

Common APIs

コマンドID コマンド名 機能
0x0011 iSDIO_WLAN_SetCurrentTime FlashAirの日時設定を行います。
0x0015 iSDIO_WLAN_SetChannel アクセスポイントのチャンネル番号の設定を行います。

Server Upload APIs

コマンド名 機能
iSDIO_WLAN_Request 各HTTPメッセージの送信を行います。

Original APIs

コマンドID コマンド名 機能
0xE200 iSDIO_WLAN_Bridge ブリッジモードを起動します。
0xE201 iSDIO_WLAN_BridgeGetByRegister ブリッジモード情報を取得します。

Other APIs

コマンド名 機能
iSDIO_WLAN_GetSSIDs アクセスポイント数を取得します。
iSDIO_WLAN_GetSSID アクセスポイント名を取得します。
iSDIO_WLAN_GetStatusData Status Registerの出力データを取得します。
iSDIO_WLAN_GetResponseData Response Data Register Portの出力データを取得します。
iSDIO_WLAN_GetVersion バージョン情報を取得します。
iSDIO_WLAN_SetWaitResponseTime Response待機のタイムアウト値を変更します。
iSDIO_WLAN_Check_WLANConnect WLAN接続をチェックします。
iSDIO_WLAN_Check_WLAN WLANのOn/Off状態をチェックします。
iSDIO_WLAN_Get_WLAN_Status Status Registerの”WLAN”データを取得します。

共有メモリ

コマンド名 機能
iSDIO_WLAN_ReadSharedMemory Shared Memoryを読み込みます。
iSDIO_WLAN_WriteSharedMemory Shared Memoryへ書き込みます。
iSDIO_WLAN_GetFlashAirVersion CIDからFlashAirのバージョンと容量確認を行います。

iSDIO_WLAN_Scan

接続可能な無線LANを探索します。探索した結果はレスポンス取得を行う必要があります。

書式

int32_t iSDIO_WLAN_Scan(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生

コマンドID

0x0001


iSDIO_WLAN_Connect

ステーションとして指定されたアクセスポイントのSSID、ネットワークキーで無線LANを接続します。

書式

int32_t iSDIO_WLAN_Connect(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id,
        uint8_t                     *ssid,
        uint16_t                    ssid_size,
        uint8_t                     *ntwk_key,
        uint32_t                    ntwk_key_size
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

[in] *ssid

接続先アクセスポイントのSSID (最大32byte)

[in] ssid_size

接続先アクセスポイントのSSIDのバイト数

[in] *ntwk_key

ネットワークキー (最大64byte)

[in] ntwk_key_size

ネットワークキーのバイト数(0の場合は暗号化なし)

戻り値

E_iSDIO_OK

正常終了

E_iSDIO_INVALID_PARAM

不正パラメータ

E_iSDIO_CMD_BUF_OVERFLOW

コマンドバッファ不足

E_iSDIO_TIMEOUT

タイムアウト発生

E_iSDIO_DEVICE_ERROR

デバイスエラー

E_iSDIO_UNKNOWN_ERROR

不明なエラー

コマンドID

0x0002


iSDIO_WLAN_Establish

アクセスポイントとして指定されたアクセスポイントのSSID、ネットワークキーで無線LAN接続を確立します。

書式

int32_t iSDIO_WLAN_Establish(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id,
        uint8_t                     *ssid,
        uint16_t                    ssid_size,
        uint8_t                     *ntwk_key,
        uint32_t                    ntwk_key_size,
        iSDIO_WLAN_EcnMode_t        encMode
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

[in] *ssid

接続先アクセスポイントのSSID (最大32byte)

[in] ssid_size

接続先アクセスポイントのSSIDのバイト数

[in] *ntwk_key

ネットワークキー (最大64byte)

[in] ntwk_key_size

ネットワークキーのバイト数(0の場合は暗号化なし)

[in] encMod

暗号モード

  • iSDIO_WLAN_ENCMODE_NO_ENCRYPTION = 0x00

    暗号化なし

  • iSDIO_WLAN_ENCMODE_OPEN_SYSTEM_AND_WEP = 0x01

    Open System and WEP

  • iSDIO_WLAN_ENCMODE_SHARED_KEY_AND_WEP = 0x02

    Shared Key and WEP

  • iSDIO_WLAN_ENCMODE_WPA_PSK_AND_TKIP = 0x03

    WPA-PSK and TKIP

  • iSDIO_WLAN_ENCMODE_WPA_PSK_AND_AES = 0x04

    WPA-PSK and AES

  • iSDIO_WLAN_ENCMODE_WPA2_PSK_AND_TKIP = 0x05

    WPA2-PSK and TKIP

  • iSDIO_WLAN_ENCMODE_WPA2_PSK_AND_AES = 0x06

    WPA2-PSK and AES

戻り値

E_iSDIO_OK

正常終了

E_iSDIO_INVALID_PARAM

不正パラメータ

E_iSDIO_CMD_BUF_OVERFLOW

コマンドバッファ不足

E_iSDIO_TIMEOUT

タイムアウト発生

E_iSDIO_DEVICE_ERROR

デバイスエラー

E_iSDIO_UNKNOWN_ERROR

不明なエラー

コマンドID

0x0003


iSDIO_WLAN_StartWPS

ステーションとして、WPSによる無線LAN接続設定を開始します。

書式

int32_t iSDIO_WLAN_StartWPS(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id,
        uint8_t                     *ssid,
        uint16_t                    ssid_size,
        iSDIO_WLAN_WPSMode_t        wpsMode,
        uint8_t                     *pin,
        uint32_t                    pin_size
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

[in] *ssid

接続先アクセスポイントのSSID (最大32byte)

[in] ssid_size

接続先アクセスポイントのSSIDのバイト数

[in] wpsMode

WPSモード

  • iSDIO_WLAN_WPSMODE_WITH_PIN = 0x01

    WPS with PIN

  • iSDIO_WLAN_WPSMODE_WITH_PBC = 0x02

    WPS with PBX

[in] *pin

PINコード (最大byte)

[in] pin_size

PINコードのバイト数

戻り値

E_iSDIO_OK

正常終了

E_iSDIO_INVALID_PARAM

不正パラメータ

E_iSDIO_CMD_BUF_OVERFLOW

コマンドバッファ不足

E_iSDIO_TIMEOUT

タイムアウト発生

E_iSDIO_DEVICE_ERROR

デバイスエラー

E_iSDIO_UNKNOWN_ERROR

不明なエラー

コマンドID

0x0005

注意点

wpsModeでiSDIO_WLAN_WPSMODE_WITH_PBCを指定する場合、ssid, pinにはNULL、ssid_size, pin_sizeには0を指定してください。


iSDIO_WLAN_Disconnect

無線LANを切断します。

書式

int32_t iSDIO_WLAN_Disconnect(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生

コマンドID

0x0007


iSDIO_WLAN_SetCurrentTime

FlashAirの日時設定を行います。

書式

int32_t iSDIO_WLAN_SetCurrentTime(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id,
        iSDIO_WLAN_Date_t           currentDate,
        iSDIO_WLAN_Time_t           currentTime
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

[in] currentDate

日付

typedef struct iSDIO_WLAN_Date_s {
  uint16_t day:5;   //!< 日
  uint16_t month:4; //!< 月
  uint16_t year:7;  //!< 年(1980年からの経過年)
} iSDIO_WLAN_Date_t;
[in] currentTime

時間

typedef struct iSDIO_WLAN_Time_s {
  uint16_t second:5;  //!< 秒
  uint16_t minute:6;  //!< 分
  uint16_t hour:5;    //!< 時
} iSDIO_WLAN_Time_t;

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生

コマンドID

0x0011


iSDIO_WLAN_SetChannel

アクセスポイントのチャンネル番号の設定を行います。FlashAirが一部のチャンネルをサポートしていない場合、このコマンドは拒否されます。
Capability Registerの”Channel Support”を確認する必要があります。
iSDIO Capability Register for Wireless LANを参照してください。

書式

int32_t iSDIO_WLAN_SetChannel(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id,
        uint8_t                     ch
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

[in] ch

チャンネル番号

  • 0x00

    自動

  • 0x01

    チャンネル1

  • 0x0E

    チャンネル14

  • 0x24

    チャンネル36

  • 0xA1

    チャンネル161

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生

コマンドID

0x0015


iSDIO_WLAN_Request

指定されたパラメータによって、各HTTPメッセージの送信を行います。

書式

int32_t iSDIO_WLAN_Request(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id,
        iSDIO_WLAN_httpType_t       host_type,
        uint8_t                     *hostname,
        uint32_t                    hostname_size,
        iSDIO_WLAN_MessageType_t    msg_type,
        uint8_t                     *message,
        uint32_t                    message_size,
        uint8_t                     *apnd_filename,
        uint32_t                    apnd_filename_size,
        iSDIO_WLAN_HeaderRemoval_t  headerRemoval
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

[in] host_type

ホストタイプ

  • HTTP通信

    iSDIO_WLAN_HTTP(0x00)

  • HTTPS通信

    iSDIO_WLAN_HTTPSSL

[in] *hostname

ホスト名

host_typeがHTTP通信の場合は、HTTPリクエストメッセージが送信されHTTPレスポンスメッセージを受信するホスト名を意味します。
プロキシサーバが使用される場合を除いて、ポート番号は80が使われます。
host_typeがHTTPS通信の場合は、SSL経由でHTTPメッセージをリクエストする以外は、HTTP通信と同じです。
プロキシサーバが使用される場合を除いて、ポート番号は443が使われます。

[in] hostname_size

ホスト名のバイト数

[in] msg_type

メッセージタイプ

  • レジスタから読み出し

    iSDIO_WLAN_MSG_REGISTER(0x00)

  • ファイルから読み出し

    iSDIO_WLAN_MSG_FILE(0x01)

[in] *message

メッセージ(ファイル名)

HTTPリクエストラインとHTTPメッセージヘッダー、HTTPメッセージボディで構成されるHTTPリクエストメッセージを意味します。
メッセージの格納先はレジスタまたはファイルから取得するので、msg_typeで格納場所を指定します。
レジスタ指定の場合は格納先のアドレスを指定、ファイル指定の場合は、ファイル格納先のパスとファイル名を指定します。

[in] message_size

メッセージ(ファイル名)のバイト数

[in] *apnd_filename

添付ファイル名

[in] apnd_filename_size

添付ファイル名のバイト数

[in] headerRemoval

ヘッダ付加情報

  • HTTPヘッダ有り

    iSDIO_WLAN_WITH_HEADER(0x00)

  • HTTPヘッダ無し

    iSDIO_WLAN_ONLY_BODY(0x01)

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生

備考

指定されたパラメータによって、各HTTPメッセージの送信を行います。パラメータは下記の組み合わせのみ有効です。

レジスタから読み込んだHTTPメッセージを送信

(処理詳細はiSDIO_WLAN_SendHTTPMessageByRegisterを参照)

host_type iSDIO_WLAN_HTTP
*hostname ホスト名が格納されているバッファの先頭アドレス
hostname_size ホスト名のデータ長
msg_type iSDIO_WLAN_MSG_REGISTER
*message メッセージが格納されているバッファの先頭アドレス
message_size メッセージデータ長
*apnd_filename NULL
apnd_filename_size 0
headerRemoval 設定不要

レジスタから読み込んだHTTPメッセージをファイル付きで送信

(処理詳細はiSDIO_WLAN_SendHTTPFileByRegisterを参照)

host_type iSDIO_WLAN_HTTP
*hostname ホスト名が格納されているバッファの先頭アドレス
hostname_size ホスト名のデータ長
msg_type iSDIO_WLAN_MSG_REGISTER
*message メッセージが格納されているバッファの先頭アドレス
message_size メッセージデータ長
*apnd_filename サーバに送信するファイルのパス
apnd_filename_size apnd_filenameのデータ長
headerRemoval 設定不要

SSLありで、レジスタから読み込んだHTTPメッセージを送信

(処理詳細はiSDIO_WLAN_SendHTTPSSLMessageByRegisterを参照)

host_type iSDIO_WLAN_HTTPSSL
*hostname ホスト名が格納されているバッファの先頭アドレス
hostname_size ホスト名のデータ長
msg_type iSDIO_WLAN_MSG_REGISTER
*message メッセージが格納されているバッファの先頭アドレス
message_size メッセージデータ長
*apnd_filename NULL
apnd_filename_size 0
headerRemoval 設定不要

SSLありで、レジスタから読み込んだHTTPメッセージをファイル付きで送信

(処理詳細はiSDIO_WLAN_SendHTTPSSLFileByRegisterを参照)

host_type iSDIO_WLAN_HTTPSSL
*hostname ホスト名が格納されているバッファの先頭アドレス
hostname_size ホスト名のデータ長
msg_type iSDIO_WLAN_MSG_REGISTER
*message メッセージが格納されているバッファの先頭アドレス
message_size メッセージデータ長
*apnd_filename サーバに送信するファイルのパス
apnd_filename_size apnd_filenameのデータ長
headerRemoval 設定不要

ファイルから読み込んだHTTPメッセージを送信

(処理詳細はiSDIO_WLAN_SendHTTPMessageByFileを参照)

host_type iSDIO_WLAN_HTTP
*hostname ホスト名が格納されているバッファの先頭アドレス
hostname_size ホスト名のデータ長
msg_type iSDIO_WLAN_MSG_FILE
*message 送信メッセージファイルのパス
message_size パスのデータ長
*apnd_filename NULL
apnd_filename_size 0
headerRemoval iSDIO_WLAN_WITH_HEADER or iSDIO_WLAN_ONLY_BODY

ファイルから読み込んだHTTPメッセージをファイル付きで送信

(処理詳細はiSDIO_WLAN_SendHTTPFileByFileを参照)

host_type iSDIO_WLAN_HTTP
*hostname ホスト名が格納されているバッファの先頭アドレス
hostname_size ホスト名のデータ長
msg_type iSDIO_WLAN_MSG_FILE
*message 送信メッセージファイルのパス
message_size パスのデータ長
*apnd_filename サーバに送信するファイルのパス
apnd_filename_size apnd_filenameのデータ長
headerRemoval iSDIO_WLAN_WITH_HEADER or iSDIO_WLAN_ONLY_BODY

SSLありで、ファイルから読み込んだHTTPメッセージを送信

(処理詳細はiSDIO_WLAN_SendHTTPSSLMessageByFileを参照)

host_type iSDIO_WLAN_HTTPSSL
*hostname ホスト名が格納されているバッファの先頭アドレス
hostname_size ホスト名のデータ長
msg_type iSDIO_WLAN_MSG_FILE
*message 送信メッセージファイルのパス情報
message_size パスのデータ長
*apnd_filename NULL
apnd_filename_size 0
headerRemoval iSDIO_WLAN_WITH_HEADER or iSDIO_WLAN_ONLY_BODY

SSLありで、ファイルから読み込んだHTTPメッセージをファイル付きで送信

(処理詳細はiSDIO_WLAN_SendHTTPSSLFileByFileを参照)

host_type iSDIO_WLAN_HTTPSSL
*hostname ホスト名が格納されているバッファの先頭アドレス
hostname_size ホスト名のデータ長
msg_type iSDIO_WLAN_MSG_FILE
*message 送信メッセージファイルのパス情報
message_size パスのデータ長
*apnd_filename サーバに送信するファイルのパス
apnd_filename_size apnd_filenameのデータ長
headerRemoval iSDIO_WLAN_WITH_HEADER or iSDIO_WLAN_ONLY_BODY

注意事項

SSLありの場合は、本API実行前にiSDIO_WLAN_SetCertificateまたはiSDIO_WLAN_SetCertificateByFileでルート認証を設定することを推奨します。
ルート認証を設定せずに本APIを実行した場合、ルート認証によるサーバ証明書を認証しないまま、FlashAirはコマンドを実行します。


iSDIO_WLAN_Bridge

ブリッジモードを起動します。
brgssidで指定されたSTAに接続し、その後apssidを使用したAPを起動します。

書式

int32_t iSDIO_WLAN_Bridge(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id,
        uint8_t                     *apssid,
        uint8_t                     *apnetworkKey,
        iSDIO_WLAN_EcnMode_t        encMode,
        uint8_t                     *brgssid,
        uint8_t                     *brgnetworkKey
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

[in] *apssid

AirNetから接続するためのSSID (最大32byte)

[in] *apnetworkKey

AirNetから接続するためのネットワークキー(最大64byte)

[in] encMode

暗号モード
ブリッジモードでは、下記が設定値となります。
iSDIO_WLAN_ENCMODE_WPA_PSK_AND_TKIP(0x03)
iSDIO_WLAN_ENCMODE_WPA2_PSK_AND_AES(0x06)

[in] *brgssid

TopNetへ接続するためのSSID(最大32byte)

[in] *brgnetworkKey

TopNetへ接続するためのネットワークキー(最大64byte)

戻り値

E_iSDIO_OK

正常終了

E_iSDIO_INVALID_PARAM

不正パラメータ

E_iSDIO_CMD_BUF_OVERFLOW

コマンドバッファ不足

E_iSDIO_TIMEOUT

タイムアウト発生

E_iSDIO_DEVICE_ERROR

デバイスエラー

E_iSDIO_UNKNOWN_ERROR

不明なエラー

コマンドID

0xE200

注意事項

  • BridgeはDisconnect状態でないと実行できません。
  • FlashAirが別の機器につながっている場合は、まずiSDIO_WLAN_Disconnectを実行してください。
  • Disconnect後、再度Bridgeを実行するには6秒後に実行してください。

iSDIO_WLAN_BridgeGetByRegister

ブリッジモード情報を取得します。取得したブリッジモード情報はResponse Data Register Portの出力データに設定されます。

書式

int32_t iSDIO_WLAN_BridgeGetByRegister(
        iSDIO_INFO_t                *info,
        uint32_t                    seq_id
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] seq_id

iSDIOコマンドシーケンスID

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生

コマンドID

0xE201

備考

ブリッジモード情報の構造は以下となります。

typedef struct iSDIO_WLAN_BridgeListItem_s {
        uint32_t    status;
        uint8_t     appssid[32+4];
        uint8_t     appnetworkKey[64+4];
        uint8_t     ipaddr[4];
        uint8_t     subnetMask[4];
        uint8_t     defGateWay[4];
        uint8_t     prefDnsServer[4];
        uint8_t     altDnsServer[4];
        uint8_t     brgssid[32+4];
        uint8_t     brgnetworkKey[64+4];
        uint8_t     brgIpaddr[4];
        uint8_t     brgsunetMask[4];
        uint8_t     brgdefGateWay[4];
        uint8_t     brgprefDnsServer[4];
        uint8_t     brgaltDnsServer[4];
} iSDIO_WLAN_BridgeListItem_t;

注意事項

本APIはブリッジモード情報をResponse Data Register Portに出力するためのものです。実際にブリッジモード情報を取得する場合はResponseData Register Portを読み出す必要があります。


iSDIO_WLAN_GetSSIDs

Scanしたアクセスポイント数を取得します。

書式

int32_t iSDIO_WLAN_GetSSIDs(
        iSDIO_INFO_t                *info,
        uint8_t                     *num
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[out] *num

アクセスポイント数

iSDIO_WLAN_Scan実行時のアクセスポイント数が取得されます。

戻り値

E_iSDIO_OK

正常終了

注意事項

iSDIO_WLAN_Scanのレスポンス取得後に実行する必要があります。
それ以外の状態で実施してもアクセスポイント数は正しく取得できません。


iSDIO_WLAN_GetSSID

Scanした指定番号に対応するアクセスポイント名を取得します。

書式

int32_t iSDIO_WLAN_GetSSID(
        iSDIO_INFO_t                *info,
        uint8_t                     number,
        uint8_t                     *ssid
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] number

指定番号(有効範囲は0~(Max-1))
指定番号オーバーの場合は、戻り値が不正パラメータとなります。

[out] *ssid

アクセスポイント名を格納するバッファの先頭アドレス
SSIDは最大32byteのため、最低32byteのバッファを準備してください。
iSDIO_WLAN_Scan実行時の指定番号のアクセスポイント名が取得されます。

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生

注意事項

iSDIO_WLAN_Scanのレスポンス取得後に実行する必要があります。
それ以外の状態で実施してもアクセスポイント数は正しく取得できません。


iSDIO_WLAN_GetStatusData

Status Registerの出力データを取得します。引数getbufで指定されたアドレスに現在のStatus Registerの情報が格納されます。

書式

int32_t iSDIO_WLAN_GetStatusData(
        iSDIO_INFO_t                *info,
        uint8_t                     *getbuf
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[out] *getbuf

取得バッファポインタ
StatusRegisterの出力データを格納するため512バイトのバッファが必要です。

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生


iSDIO_WLAN_GetResponseData

Response Data Register Portの出力データを取得します。引数getbufで指定されたアドレスに現在のResponse Data Register Portの情報が格納されます。

書式

int32_t iSDIO_WLAN_GetResponseData(
        iSDIO_INFO_t                *info,
        uint8_t                     *getbuf
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[out] *getbuf

取得バッファポインタ
Response Data Register Portの出力データを格納するため512byteのバッファが必要です。

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生


iSDIO_WLAN_GetVersion

Status Registerに格納されているバージョン情報(0x005f0-0x005ff)を読み出します。

書式

int32_t iSDIO_WLAN_GetVersion(
        iSDIO_INFO_t                *info,
        uint8_t                     *getbuf
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[out] *getbuf

取得バッファポインタ
バージョン情報を格納するために16byteのバッファが必要です。

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生


iSDIO_WLAN_SetWaitResponseTime

Response待機のタイムアウト値を変更します。タイムアウト値はmsで設定します。

書式

void iSDIO_WLAN_SetWaitResponseTime(
        uint32_t                     time
)

引数

[in] time

Response待機のタイムアウト値(ms)

戻り値

なし


iSDIO_WLAN_Check_WLANConnect

WLAN接続をチェックします。接続状態は、Status Registerの0506h(bit7)のConnectedで判断します。

書式

int32_t iSDIO_WLAN_Check_WLANConnect(
        iSDIO_INFO_t                *info,
        iSDIO_WLAN_Connect_t        *connect
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[out] connect

接続状態

  • WLAN接続状態

    iSDIO_WLAN_CONNECTED(0x01)

  • WLAN未接続状態

    iSDIO_WLAN_NO_CONNECTION(0x00)

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生


iSDIO_WLAN_Check_WLAN

WLANのOn/Off状態をチェックします。接続状態は、Status Registerの0506h(bit6-5)のInfra-Directで判断します。
※00:OFF、01/10:ON

書式

int32_t iSDIO_WLAN_Check_WLAN(
        iSDIO_INFO_t                *info,
        iSDIO_WLAN_OnOFF_t          *onoff
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[out] *onoff

無線LAN動作状態

  • WLAN On

    iSDIO_WLAN_ON(0x01)

  • WLAN OFF

    iSDIO_WLAN_OFF(0x00)

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生


iSDIO_WLAN_Get_WLAN_Status

Status Registerの”WLAN”データを取得します。WLAN情報はStatus Registerの0506hを取得します。

書式

int32_t iSDIO_WLAN_Get_WLAN_Status(
        iSDIO_INFO_t                *info,
        uint8_t                     *param
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[out] *param

WLANデータ
StatusRegisterのWLAN情報を格納するため1バイトのバッファが必要です。

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生


iSDIO_WLAN_ReadSharedMemory

Shared Memory(共有メモリ)からデータの読み込みを行います。

書式

int32_t iSDIO_WLAN_ReadSharedMemory(
        iSDIO_INFO_t                *info,
        uint32_t                    addr,
        uint32_t                    len,
        uint8_t                     buf
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] addr

読み出しアドレス(0~2047)

[in] len

データ長(1~2048)byte

[out] buf

読み出しデータ

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生


iSDIO_WLAN_WriteSharedMemory

Shared Memory(共有メモリ)へデータの書き込みを行います。

書式

int32_t iSDIO_WLAN_WriteSharedMemory(
        iSDIO_INFO_t                *info,
        uint32_t                    addr,
        uint32_t                    len,
        uint8_t                     buf
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[in] addr

書き込みアドレス(0~2047)

[in] len

データ長(1~2048)byte

[in] buf

書き込みデータ

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生


iSDIO_WLAN_GetFlashAirVersion

CIDからFlashAirのバージョンと容量確認を行います。

書式

int32_t iSDIO_WLAN_GetFlashAirVersion(
        iSDIO_INFO_t                *info,
        uint8_t                     cardver,
        uint16_t                    cardsize
)

引数

[in] *info

iSDIOカード制御情報へのポインタ

[out] cardver

カードバージョン

[out] cardsize

カード容量

戻り値

E_iSDIO_OK

正常終了

その他

エラー発生

備考

cardver、cardsizeとFlashAirのバージョンと容量の関係は以下の通りとなります。

cardver cardsize バージョンと容量
2 8 FlashAir W02 8G
2 16 FlashAir W02 16G
2 32 FlashAir W02 32G
3 8 FlashAir W03 8G
3 16 FlashAir W03 16G
3 32 FlashAir W03 32G
4 16 FlashAir W04 16G
4 32 FlashAir W04 32G
4 64 FlashAir W04 64G
255 0以外 バージョン不明でcardsize容量のFlashAir
255 0 バージョン、容量不明のFlashAir
0 0 FlashAirではない

注意

本関数はSDカードスロットが1スロットのシステムで、デバイスファイルが/dev/mmcblk0にある場合に使用可能です。