注:此文档用于通过个人编写AT指令进行快速搭建wiota网络通信,可参考文档进行通信测试。
具体测试请以官网标准固件为准
固件下载
异步版本:
fast_at_wiota_async.bin (292.6 KB)
源代码: Jzouzou/fast_at_wiota_async (github.com)
同步版本:
iote:fast_at_wiota_iote.bin (293.2 KB)
源代码: Jzouzou/fast_at_wiota_iote (github.com)
ap:fast_at_wiota_ap.bin (941.7 KB)
源代码: Jzouzou/fast_at_wiota_ap (github.com)
异步版本快速启动AT指令说明文档
1.1AT+WIOTAFASTBOOT
用于快速启动协议栈
Command:+WIOTAFASTBOOT=< mode >,< isReceiver >,[< freq >]
mode:必选参数 设置wiotacofig模式
-
mode == 0:普通模式 256 200K
-
mode == 1:高速模式 未验证
-
mode == 2:远传模式 未验证
-
mode == 3:使用静态数据中的config
isRecevier: 必选参数 设置是否为接收方
-
isRecevier == 0:FALSE 设置为发送方 ID = 0x87654321
-
isRecevier == 1:TURE 设置为接收方 ID = 0x12345678
frequency:可选参数 设置频点,若不输入则为默认值45
例:
AT+WIOTAFASTBOOT=0,0
AT+WIOTAFASTBOOT=0,1,40
1.2AT+WIOTAFASTSEND
用于快速发送数据,使用指令后,给接收方发送数据,数据为Hello Wiota!
发送成功 返回 Send succ
发送失败 返回 Send fail
例:AT+WIOTAFASTSEND
1.3AT+WIOTACYCLESEND
周期发送数据测试
Command:AT+WIOTACYCLESEND
使用后,每过五秒发送给接收方发送一次数据(发送结束后再等待五秒再执行下次发送),数据为Hello Wiota! 发送数据的超时时间为五秒
例:AT+WIOTACYCLESEND
Command:AT+WIOTACYCLESEND=< timeout>,< data_len>,< delaytime>,< recvid>
timeout:超时时间,单位ms
data_len:生成发送数据的数据长度
delaytime:延时时间,单位ms
recvid:接收方USERID 为0的话为广播
例:AT+WIOTACYCLESEND=5000,20,6000,12345678
1.4AT+WIOTAENDCYCLE
Command:AT+WIOTAENDCYCLE
结束周期发送数据测试
例:AT+WIOTAENDCYCLE
2 异步版本指令使用流程
注:< 表示为发送指令无误后接收到的数据
发送端 | 接收端 | |
---|---|---|
初始化 | AT+WIOTAFASTBOOT=0,0 <+WIOTAINIT: OK +WIOTAUSERID=0x87654321: OK +WIOTASYSTEMCONFIG=1,1,1,8,1,3,0x0,0x21456981: OK +WIOTAFREQ=45: OK +WIOTASUBFNUM: 8: OK +WIOTABCROUND=3: OK +WIOTAPOWER=0: OK +WIOTAMCS=0: OK +WIOTARUN=1: OK OK |
AT+WIOTAFASTBOOT=0,1 <+WIOTAINIT: OK +WIOTAUSERID=0x12345678: OK +WIOTASYSTEMCONFIG=1,1,1,8,1,3,0x0,0x21456981: OK +WIOTAFREQ=45: OK +WIOTASUBFNUM: 8: OK +WIOTABCROUND=3: OK +WIOTAPOWER=0: OK +WIOTAMCS=0: OK +WIOTARUN=1: OK OK |
发送端发送指令,发送数据Hllo wiota! 给接收端 | AT+WIOTAFASTSEND |
+WIOTARECV,-58,17,0,0,12,Hello Wiota! |
进行周期发送 | <ok cycle thread ==========The 1TH cycle send======== Send succ ==========The 2TH cycle send======== Send succ ==========The 3TH cycle send======== Send succ |
>+WIOTARECV,-58,15,0,0,12,Hello Wiota! +WIOTARECV,-58,15,0,0,12,Hello Wiota! +WIOTARECV,-58,15,0,0,12,Hello Wiota! |
发送端发送指令,根据输入的数据长度生成字符串进行周期发送 | AT+WIOTACYCLESEND=10000,100,3000,12345678 | +WIOTARECV,-49,17,0,0,100,abcdefghijklmnopqrstuvwxyzabc defghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcde fghijklmnopqrstuv |
生成20字节数据进行周期发送测试 | <timeout = 10000 len = 20 delay_time = 6000 abcdefghijklmnopqrstOK cycle thread ==========The 1TH cycle send======== Send succ ==========The 2TH cycle send======== Send succ ==========The 3TH cycle send======== Send succ |
<+WIOTARECV,-58,17,0,0,20,abcdefghijklmnopqrst +WIOTARECV,-58,17,0,0,20,abcdefghijklmnopqrst +WIOTARECV,-58,17,0,0,20,abcdefghijklmnopqrst |
结束周期发送 | AT+WIOTAENDCYCLE |
同步版本快速启动AT指令说明文档(AP和IOTE均适用)
1.1AT+WIOTAFASTBOOT
用于快速启动协议栈
Command:+WIOTAFASTBOOT==< mode>,[< freq>]
mode:必选参数 设置wiotacofig模式
-
mode == 0:普通模式 256 200K
-
mode == 1:高速模式 未验证
-
mode == 2:远传模式 未验证
-
mode == 3:使用静态数据中的config
frequency:可选参数 设置频点,若不输入则为默认值45
例:
AT+WIOTAFASTBOOT=0
AT+WIOTAFASTBOOT=0,40
1.2AT+WIOTAFASTSEND
用于快速发送数据,使用指令后,发送数据为Hello Wiota!
发送成功 返回 Send succ
发送失败 返回 Send fail
例:AT+WIOTAFASTSEND
1.3AT+WIOTACYCLESEND
周期发送数据测试
Command:AT+WIOTACYCLESEND
使用后,每过五秒发送给接收方发送一次数据(发送结束后再等待五秒再执行下次发送),数据为Hello Wiota! 发送数据的超时时间为五秒
例:AT+WIOTACYCLESEND
Command:AT+WIOTACYCLESEND==< timeout>,< data_len>,< delaytime>
timeout:超时时间,单位ms
data_len:生成发送数据的数据长度
delaytime:延时时间,单位ms
例:AT+WIOTACYCLESEND=5000,20,6000
1.4AT+WIOTAENDCYCLE
Command:AT+WIOTAENDCYCLE
结束周期发送数据测试
例:AT+WIOTAENDCYCLE
2.同步版本指令使用流程
注:< 表示为发送指令无误后接收到的数据
AP端 | IOTE端 | |
---|---|---|
初始化 | AT+WIOTAFASTBOOT=0 | AT+WIOTAFASTBOOT=0 |
需先初始化AP再初始化IOTE端 | <+WIOTAINIT: OK +WIOTACONFIG=0,1,1,0,1,0,3,0,1,0x21456981: OK +WIOTAFREQ=45: OK +WIOTARUN=1: OK OK |
<+WIOTAINIT: OK +WIOTACONFIG=0,1,1,0,1,0,3,0,1,0x21456981: OK +WIOTAFREQ=45: OK +WIOTARUN=1: OK +WIOTACONNECT: OK OK |
iote发送数据给ap | AT+WIOTAFASTSEND | |
iote发送指令后可在ap接收到数据 | <+WIOTARECV:0x87654321,0,12: Hello Wiota! |
<Send succ OK |
ap发送广播消息 | AT+WIOTAFASTSEND | |
ap发送广播消息后网络下所有终端均可收到 | <Send succ OK |
<+WIOTARECV,1,12,Hello Wiota! |
iote进行周期发送测试 | AT+WIOTACYCLESEND | |
ap可定时接收到终端发送的消息 | >+WIOTARECV:0x87654321,0,12: Hello Wiota! +WIOTARECV:0x87654321,0,12: Hello Wiota! +WIOTARECV:0x87654321,0,12: Hello Wiota! |
>ok cycle thread ==========The 1TH cycle send======== Send succ ==========The 2TH cycle send======== Send succ ==========The 3TH cycle send======== Send succ |
iote设置参数后进行周期发送 | AT+WIOTACYCLESEND=10000,200,6000 | |
根据设置后的延时时间,发送超时时间以及发送数据长度进行周期发送 | <+WIOTARECV:0x87654321,0,20: abcdefghijklmnopqrst +WIOTARECV:0x87654321,0,20: abcdefghijklmnopqrst +WIOTARECV:0x87654321,0,20: abcdefghijklmnopqrst |
<timeout = 10000 len = 20 delay_time = 6000 abcdefghijklmnopqrstOK cycle thread ==========The 1TH cycle send======== Send succ ==========The 2TH cycle send======== Send succ ==========The 3TH cycle send======== Send succ |
结束iote周期发送测试 | AT+WIOTAENDCYCLE <OK |
|
ap进行周期发送广播测试 | AT+WIOTACYCLESEND | |
iote可定时接收到ap发送的消息 | >ok cycle thread ==========The 1TH cycle send======== Send succ ==========The 2TH cycle send======== Send succ ==========The 3TH cycle send======== Send succ |
>+WIOTARECV:1,12,Hello Wiota! +WIOTARECV:1,12,Hello Wiota! +WIOTARECV:1,12,Hello Wiota! |
ap设置参数后进行周期发送 | AT+WIOTACYCLESEND=10000,200,6000 | |
根据设置后的延时时间,发送超时时间以及发送数据长度进行周期发送 | <timeout = 10000 len = 200 delay_time = 6000 abcdefghijklmnopqrstOK cycle thread ==========The 1TH cycle send======== Send succ ==========The 2TH cycle send======== Send succ ==========The 3TH cycle send======== Send succ |
>+WIOTARECV:1,20,acdefghijklmnopqrst +WIOTARECV:1,20,acdefghijklmnopqrst +WIOTARECV:1,20,acdefghijklmnopqrst |
结束ap周期发送测试 | AT+WIOTAENDCYCLE <OK |