APIリファレンス

最終更新: 2018/9

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にある場合に使用可能です。