[i=s] 本帖最后由 _奶咖君_ 于 2025-4-22 17:02 编辑 [/i]
前言:很有幸的参与到安信可的免费申请 | 高性能WiFi+BLE双模Ai-WB2-32S-Kit活动,还是第一批申请通过的,中间经历了各种阴差阳错(没有第一时间看到申请成功名单然后提交信息,又经历了端午假期,端午假期结束又没时间测试了)直到现在,终于有时间测试一下。
申请的时候选择的了作业二,WIFI与蓝牙的基础通信,看起来是最简单和基础的一项测试,也是最契合我司对WIFI模块的使用要求。下面就是我的作业。
一、开箱上电
简单的观察了一下开发板发现已经内置了CH340,预留了USB接口。拿出数据线,接上电脑。欸,没动静,灯也不亮,基于工作的敏感性赶紧拔掉了数据线(后面知道多虑了)。打开常用的串口调试助手,再次接上开发板。叮咚,出现了一个新的COM口,嗯应该是没问题。

按下开发板上的复位键,看到了开机信息。嗯没坏。就这样的。

二、从AT命令测试到固件升级再到丢到AT指令手册。。。
既然板子没问题,那就开始测一测AT命令吧,从官网上下载了AT命令手册。简单的AT,没问题。扫描WIFI列表?Emmm奇怪为什么ERROR?

把“?”删掉,再试一试,欸,出来了。。为什么和手册上的对不上呢?(这时的我还没有意识到问题的严重性)

继续测试下条命令把。主动模式扫描指定SSID,这个好,直接扫描我们公司的WiFi

这下好了直接是未知命令了!突然才意识到我去,发来的东西固件不是最新的?!赶紧翻看之前的开机信息,

好么和手册里的3.6.0差了好几代了。。好吧需要看看怎么升级固件了。
下载固件升级软件,下载固件包,打开固件烧录教程视频(我去什么鬼,愣是没看懂,好像中间一段还剪辑反了,后期扣钱),看完了视频,回头一看下载的文件(我去,网页下载的速度齁慢,还是请上迅雷吧)。
打开软件根据网页教程软件如下配置

- 串口参数选择,基本上只需要更改对应的COM口就行,其他保持默认。
- 勾选Single Download Options 下 Enable前的复选框,再点击Browse后选择 合成文件里的.bin文件,这个就是新的固件,虽然好像和手册里的版本还是对不上,但是应该是最新的了。
- 注意这里点击Create&Download之前,一定不要手贱 点了Open Uart,这里不需要提前打开串口。看主板的原理图,应该是利用了CH340上RST和DTR来对单片机进行复位和进入升级模式的选择。
当出现了Please Press Reset Key! 提示时,就按下主板上的复位按键,然后要做的就是等待,直到最后出现[All Success] ,很好我这里并没有出现什么差错,一遍过。

回到我的串口调试助手,再按下复位键。欸嘿,升级成功了。

那么再尝试一下之前有问题的AT命令吧,为什么该是错误就还是错误,慢慢意识到:淦,AT手册看错了?然后就翻到和固件对应的AT手册连接,,是个网页版的AT命令集。很好看这个吧。
测试了几个命令之后让我确信,这个网页版的手册,才是目前这个固件版本的手册。

三、WIFI通讯测试
前提条件终于是凑齐了,开始WIFI通讯测试。
1. 连接无线路由器
用到的命令有:
-
查询WIFI的工作模式,查看手里的模块是否工作再STA模式,STA模式才能去连接无线路由器。
AT+WMODE?
-
扫描WIFI列表,这里使用带有过滤的扫描WIFI列表的命令
AT+WSCAN=isiot
-
连接AP热点,连上无线路由器
AT+WJAP=isiot,xxxxxxxxx
-
查询连接信息(可选)
AT+WJAP?
开始实践,复位模块,显示开机信息之后发送查询工作模式命令,查看一下模块的工作模式,,应该到手之后默认的都是STA模式。。

然后搜索一下公司WIFI的SSID,嗯 不出意外的搜索到了。

连接无线路由器,出现WIFI_GOT_IP表示已经连上了WIFI

完事之后可以回过头查询一下模块分配的IP,看图分配了地址 192.168.0.179

2.TCP连接测试
用到的命令有:
-
创建SOCKET连接,这里我使用的一个网络调试助手的软件作为TCP服务端,所以模块这里选择TCP客户端模式来创建连接。我的服务端使用的IP和端口是192.168.0.110:65500
AT+SOCKET=4,192.168.0.110,65500
-
发送数据,这里简单使用单行模式发送数据。需要先创建连接之后才能获得ConID
AT+SOCKETSENDLINE=1,10,1234567890
-
设置接收模式,这里常用的设置为主动模式,接收到服务端的数据之后,直接输出数据。
AT+SOCKETRECVCFG=1
开始实践,创建TCP连接,发送命令之后要读取ConID,这个是后续通讯的关键。

测试发送。很好上报已经有了

修改接收模式

测试数据接收,从网络调试助手向模块发送数据

至此简单的上下通讯已经完成。下面整一段连续的压力测试,使用100ms间隔发送数据到服务器。
妈耶本来向上传一段视频,,结果一直上传失败,,罢了。

最后小发了300包数据,网络调试助手也成功的接收了300包。
四、蓝牙测试
由于蓝牙平时用的也比较少,,所以这里也是摸着石头过河,走一步看一步吧。
准备蓝牙调试软件,这里选用的叫做 Bluetooth LE Explorer的软件。
先查询一下模块蓝牙的工作模式

返回的9 表示蓝牙已关闭,我们这里让模块的蓝牙作为从机,PC的蓝牙作为主机。所以发送命令让模块工作在从机模式。

此时用蓝牙调试软件搜索蓝牙设备 就可以发现一个名字叫做ai-thinker的设备,这个就是我们的Ai-WB2的蓝牙。

配对之后就能看到一吨的ID,云里雾里不知所措,,

此时的模块也进入了一种透传模式,再此模式下,发送除了+++的任何命令均会被蓝牙发送上去,我们先发送+++ 进入AT命令模式,


查询一下模块的服务UUID,

哦 是不是很眼熟,,没错,软件连上蓝牙后也有这个UUID,
那么这个服务UUID下的两个UUID 哪个是发送 ,哪个是接收呢?
查询一下Tx特征UUID,顺便把Rx特征UUID也一块查了

很好,这个样就直到软件里面哪个是模块的发送 ,哪个是模块的接收。。
让我们通过软件再次连上模块的蓝牙,,

显示这个表示 软件和模块已经连接。
找到模块透传服务Tx特征UUID,点击进入,然后从串口调试助手发送一些信息,比如说:你好,安信可。

回头就可以看到软件里面已经接收到了来自模块的信息,

那么我们再次选择模块的透传服务Rx特征UUID,,表示我们可以下发信息到模块,比如发送:你好,Ai-WB2.

点击 Write之后就可以从串口调试助手这里看到 软件下发的信息。

那么至此,作业二的全部要求已经完成。。
五、后记
后记这里就是吐槽了,开发板上有个RGB灯,以为上电的时候会至少亮一个做为电源灯或者运行灯之类的,然而并不是,一上电着实吓了一跳。估计这里是给二次开发用的。然后就是AT指令手册问题,下载了官网的PDF,结果和模块的固件版本不一致,即便是有相同的命令,但是版本不同,格式也有差距。又找了一个网页版的AT命令手册才算和固件对上了。还有吐槽一下固件升级的教程视频,看视频下面的评论区也应该知道这个视频做的是有多差,中间还有剪辑问题。。后面看了写在CSDN上的图文版的完成了模块的升级。最后,这为什么发货之前不把固件升级好,非得发给客户之后让客户自己升级,唉,我看淘宝页面上都已经是最新的固件版本了。。