Wifi shield V2(SKU:TEL0047)

概 述

WizFi210是一块可以利用动态电源管理达至低功耗(待机:34.0μA; 接收:124mA; 输出:126mA)的WIFI模块。相对市面上其他的WIFI模块,其功耗是相对低的。如果使用WizFi210来设计产品,其功耗也相对较低,而且可以设置待机模式(即当产品需要长期启动,但不需要长期运行。这样的话,可以在不需要运行的时候,设定待机模式,减少浪费电源。待要运行的时候,再唤醒)。 基于WizFi210的WIFI无线模块提供TTL电平串口到IEEE802.11b/g/n无线通信的桥接。任何具有TTL串口的设备都可以很容易地建立起无线网络,实现远程管理和控制。内部集成多种通信协议及其加密算法。只需要简单的设置即可实现多种场合的应用。兼容Arduino 接口规格,方便应用到Arduino项目中。

性能描述

1.标准Arduino叠层设计,可轻松插接到标准Arduino、MEGA、Romeo等控制器上

2.嵌入式IEEE802.11b/g/n无线网络

3.支持访问接入点(AP)、客户端、网关以及串口到WLAN等模式

4.支持协议:UDP, TCP/IP (IPv4), DHCP, ARP, DNS, HTTP/HTTPS Client and Server(*)

5.支持WEP, WPA/WPA2–PSK, Enterprise, EAP-FAST, EAP-TLS, EAP-TTLS, PEAP 加密

6.支持UART, SPI(*), I2C(*)接口

7.支持TTL串口到无线的应用

8.数据流传输速率:11、5.5、2Mpbs (802.11b)

9.工作电压:5V,功耗<200Ma

10.无线标准:IEEE802.11b/g/n

11.频率范围: 2.4 - 2.497 GHz

12.输出功率:8dBm ± 1dBm

13.数据速率:54Mbps-1Mbps

14.调制类型:DSSS, CCK

15.尺寸:长54× 宽49 × 高11mm

16.重量:约40g

模块的使用

硬件安�

第一步,给Arduino下载一个与串口无关的程序,比如Blink;

第二步,将wifi Shield V2插入到Arduino板上;

第三步,将wifi Shield V2的WIFI/USB跳线插到USB端;

第四步,使用USB电缆线连接Arduino板;

第五步,打开串口助手sscom32,波特率选择115200,端口选择Arduino的COM口,发送新行打钩。

配置模块(动态主机设定协议)【推荐使用这个配置方式】

AT-----------------------------------------------------检测 Module 与串口是否连通,能否接收 AT 命令

[OK] --------------------------------------------------[]为模块响应返回

AT+WD--------------------------------------------------从当前的网络中解除连接

[OK]

AT+WWPA=dfrobot!---------------------------------------设置AP密码为dfrobot!

[OK]

AT+NDHCP=1---------------------------------------------使用DHCP(动态主机设定协议)

[OK]

AT+WAUTO=0,dfrobot,,0----------------------------------设置为AP模式并连接到AP(dfrobot)和使用通道0

[OK]

AT+NAUTO=1,1,,5001-------------------------------------设置为TCP服务器和端口号为5001

[OK]

AT+XDUM=1----------------------------------------------------使UART信息无效

[OK]

ATA----------------------------------------------------自动连接

IP SubNet Gateway

192.168.1.107: 255.255.255.0: 192.168.1.1

[OK]

配置模块(自定义IP地址)

AT-----------------------------------------------------检测 Module 与串口是否连通,能否接收 AT 命令

[OK] --------------------------------------------------[]为模块响应返回

AT+WD--------------------------------------------------从当前的网络中解除连接

[OK]

AT+WWPA=dfrobot!---------------------------------------设置AP密码为dfrobot!

[OK]

AT+NDHCP=0---------------------------------------------不使用DHCP(动态主机设定协议)

[OK]

AT+NSET=192.168.1.155,255.255.255.0,192.168.1.1--------默认设置 固定IP,子网掩码,网关(请根据自己所使用的路由器IP做相应设置)

[OK]

AT+WAUTO=0,dfrobot,,0----------------------------------设置为AP模式并连接到AP(dfrobot)和使用通道0

[OK]

AT+NAUTO=1,1,,5001-------------------------------------设置为TCP服务器和端口号为5001

[OK]

ATC1---------------------------------------------------下一个重启时自动连接

[OK]

AT&W0--------------------------------------------------保存设置

[OK]

ATA----------------------------------------------------自动连接

IP SubNet Gateway

192.168.1.155: 255.255.255.0: 192.168.1.1

[OK]

如下图所示为wifi Shield V2的配置过程:

<File:Wifi> shield V2_1.jpg

无线系统设置

如下图所示,PC1通过无线或有线网络连接到AP,PC2通过USB电缆线将Arduino与wifi Shield V2模块连接,两台计算机则通过无线网络进行通信。

<File:Wifi> shield V2_2.jpg

1.AP配置

AP的无线配置如下所示 : SSID(身份验证):dfrobot

Channel(通道):0

Security(安全性):个人WPA/TKIP

WPA Shared Key(个人共享密钥):dfrobot!

2.在PC1中打开TCP&UDP测试工具,点击“创建连接”按钮将wifi Shield V2模块所配置好的类型、IP、端口号分别填入对话框中,点击“创建”。

<File:Wifi> shield V2_3.jpg

3.在PC2中打开串口助手设置波特率115200、数据位8、停止位1、校验位None、流控制None。

4.在PC1中TCP&UDP测试工具中点击“连接”,连接成功后PC1和PC2可进行相互通信。

点击发送,串口助手收到发送的内容dfrobot,同理,TCP&UDP测试工具也收到串口助手发的ok。

5.以上通信设置也可在一台PC机上实现。

6.需要重新设置参数,请先点击GPIO10(GPIO29)按钮,待STW灯熄灭后,AT指令才会有效。

Wifi Shield V2模块说明

按键说明

标注                 说明
RESET              V2.1版模块复位Arduino/V2.2版模块复位Arduino和wifi模块
GPIO10/GPIO29       V2.1此版本不起作用/ V2.2版模块GPIO29断开wifi网络连接
ALARM1              唤醒待机模式

LED指示灯说明

标注                 说明
POWER              电源信号指示
STW                串口到wifi网络通道状态指示
SDR                闪烁(-1-):串行数据收发(数据模式)
闪烁(-1-1-):串行数据收发(命令模式)
ASSOC              wifi Shield V2模块连接到AP的状态指示

跳线说明(V2.1版本)

标注                 说明
WIFI               Wifi模块串口连接到Arduino(使用Arduino和Wifi串口通讯)
USB                Wifi模块串口连接到USB(使用Arduino和串口助手配置Wifi模块)

开关说明

标注                 说明
RUN/PROG       V2.1版本模块:运行模式(Wifi模块正常工作)/程序模式(给Wifi模块更新固件) ;V2.2版本模块:Wifi模块串口RX连接到Arduino的RX/Wifi模块串口RX和Arduino的RX断开,不影响Arduino下载程序
USB/Arduino         V2.2版本模块:Wifi模块串口连接到USB(使用Arduino和串口助手配置Wifi模块)/Wifi模块串口连接到Arduino(使用Arduino和Wifi串口通讯)

V2.1模块使用常见问题

当V2.1模块连接到无线网络后(即:STW指示灯亮起),无法使用AT指令配置模块:

出现这样的问题我们可以利用WIZSmartScript工具来解决。

<File:Wifi> shield V2_test.jpg

首先打开“WIZSmartScript.exe”,在COM处输入Arduino的COM号和波特率(注:使用前先关闭串口助手sscom32)如下图所示:

<File:Wifi> shield V2_test_1.jpg

然后单击“Wizard”进行设置,如下图所示:

<File:Wifi> shield V2_test_2.jpg

单击“Find WizFi and Set Command Mode”按钮,会在下框中显示版本号“WizFi2101.1.0.0(W)”后,单击“Cancel”关闭该窗口,模块就退出无线连接状态,这时即可打开串口助手sscom32使用AT指令配置模块。

应用指导

(1)AP 搜寻

串口转WIFI的接口通过指定的SSID,BSSID或通道在指定的时间内命令无线通道搜寻WIFI无线AP和 ad hoc网络。搜寻可以查找指定SSID、BSSID的网络,指定的无线通道的网络或是这些条件的组合网络。

(2)网络连接管理

网络连接管理单元处理相关连接的事件,提供UDP、TCP连接端口(与我们熟知的BSD端口类似)。每个端口既可以和服务器也可以和客户端的连接。每一个连接有一个唯一的、单一16进制值(0~15)作为CID。可以在编译的时候允许有最大的连接数(达到16)。 注意:这个单一的十六进制数字的CID用于TCP、UDP、服务器和客户端的连接。

(3)自动连接操作

自动连接成功可以在有效的通信范围内充当一个串口通信接口,在不需要命令或用户干涉的情况下进行连接管理,这相当于替换了电缆通信。这种模式下,根据当前有效的参数值,基站自动建立无线网络连接,然后在主机和目标WizFi210之间透明地传输数据(数据模式)。没有状态信息发送到主机。

WizFi210的操作模式如下: 命令模式:在这种模式下,数据解析为WizFi210的控制命令。 数据模式:在这样模式下,串行数据传送到WiFi接口。

在数据模式,WizFi210的功能:

►从串口接收字符并通过连接的端口发送数据。

►从连接的端口接收数据然后通过串口发送数据。

串口主机可以发送退出命令来获得接口控制权,退出命令是“+++”序列,后面有一秒钟的间歇,在这一秒钟期间,串口不能收到其它字符。当WizFi210 收到这样的字符,WizFi210 将退出数据模式而进入到命令模式。在需要时,主机可以通过串口修改网络配置或其它参数。然而,WizFi210 不接收任何新的TCP/UDP、客户端/服务器或者数据请求连接。

ATO命令(ASCII 字符‘O’,不是数字‘0’)用于从命令模式返回到数据模式。

应用“AT+XETH=1”命令(允许硬件触发),通过GPIO29(GPIO10)端口,你可以在数据模式和命令模式之间切换,而不需要使用退出序列命令(“+++”)。但是要注意的是不同的固件版本GPIO端口也是不同的。

但是当你使用 GPIO29(GPIO10) 来转换数据/命令模式时, 应该保证该转换以及缓冲处理过程前后300ms内无UART输入。 使用WizFi210 的D2(GPIO31)、D4(GPIO28),你可以查看WizFi210 是否跟AP 关联,以及串口转WIFI 网络通道是否正常。 运行“AT+XDUM=1”命令(关闭UART消息),在数据模式下,所有UART 的信息将会被阻止。在这种情况下,你必须检查GPIO28 和GPIO31 确定关联断开还是网络连接关闭。 在数据模式,为了避免发送大量的数据包和小负载到网络,Nagle算法的等待时间可用于缓存将要发送的任何字符。等待时间是以10ms为单位进行设定的,该功能适合于UDP和TCP连接。

(4)应答代码

WizFi210通过串口可能返回给主机的代码,具体描述如下。

返回代码可以了解WizFi210是否执行了AT命令。在ASCII字符串的前面和后面都有回车字符(Carriage Return)(\r, 0x0d) 和上面是换行字符(Line Feed) (\n, 0x0a) 下面是ASCII字符。 如果用戶向WizFi210输入了“at”字符和换行字符(Line Feed ):

at +换行字符(Line Feed)(0x61 0x74 0x0d)

你能看到下面的数据:

at + 回车字符(Carriage Return)(0x61 0x74 0x0d) + \r\n[OK]\r\n (0x0d 0x0a 0x5b 0x4f 0x4b 0x5d 0x0d 0x0a)

<File:V2_10.png>

<File:VV2_40.jpg>

(5)AT命令举例

下面描述了AT命令。在应用例子中,WizFi210建立了与AP的连接,重启后自动打开了串口转无线网的通道。

<File:V2_12.png>

<File:V2_13.jpg>

AT命令

这一部分提供了串口转无线网的命令列表和它们的作用。参数都是ASCII码,比如:ATEn(n=1的时候)表示的是ASCII中的“A”、“T”、“E”、“1”。如果哪些参数是可供选择的,必选参数需加<>,可选参数需加[ ].如果一个参数是必选的,任何与之相关的子参数也是必选的;一个可选参数的子参数也是可选的。参数需按照命令描述中的顺序给出。当一个可选参数没有被提供时,逗号也应该保留在命令中。每个命令需以“AT”开头;任何其他其实字符可能会导致返回一个错误。

命令应答:在大多数情况下,有效命令返回OK。无效的输入返回ERROR:INVALID INPUT.

一些命令或许在此版本不被支持。

(1)命令接口

<File:VV2_14.jpg>

(2)UART/WizFi210接口配置

<File:V2_15.jpg>

<File:V2_16.jpg>

<File:VV2_16.jpg>

(3)文件管理

<File:V2_V.jpg>

(4)Wi-Fi 接口

<File:V2_18.jpg>

<File:V2_19.jpg>

<File:VV2_19.jpg>

(5)Wi-Fi安全

<File:V2_20.jpg>

<File:V2_21.jpg>

<File:VV2_21.jpg>

(6)无线配置

<File:V2_22.jpg>

(7)网络接口

<File:V2_23.jpg>

<File:VV2_23.jpg>

(8)连接管理

<File:V2_24.jpg>

<File:V2_25.jpg>

<File:VV2_25.jpg>

(9)电池(电量)检查

<File:V2_26.jpg>

(10)功率状态管理

<File:V2_27.jpg>

<File:VV2_27.jpg>

(11)自动连接

<File:V2_28.jpg>

<File:VV2_28.jpg>

(12)设置准备

<File:V2_29.jpg>

(13)其它

<File:VV2_30.jpg>

<File:V2_31.jpg>

<File:V2_32.jpg>

版本说明

版本号 更改时间 备注
V2.1 2011年7月29日 更换新的wifi模块
V2.2 2012年3月15日 1.手动断开网络按钮,从GPIO10更改为GPIO29; 2.USB和WIFI切换跳线更改为拨动开关; 3.V2.1的固件下载开关更改为短路焊盘PROG; 4.增加Arduino下载开关(避免wifi串口影响Arduino下载)。

<File:nextredirectltr.png>购买 [WiFi Shield V2 For Arduino低功耗无线wifi模块b/g/n(SKU:TEL0047)]