当前位置: 首页 > article >正文

使用安信可Ai-WB2-12F开启wifi与手机通信TCP-IP(AT指令)

当时在做两个单片机之间无线通信,或者单片机与手机无线通信,就像找一个蓝牙和wifi双模的无线模块,一开始看ESP8684(ESP32-C2)这个芯片模组是有wifi和蓝牙的,买回来后才发现他不可以在程序运行中更换蓝牙或者wifi模式,每次需要更改只能重新下载固件,价格大概7块左右,如果需要满足上诉的需求的话,就只能上esp32经典模组了,那价格又高了不少,而且属于有点浪费资源了,后面就发现了这个安信可的Ai-WB2-12F模组,只需要8块左右,就可以蓝牙wifi双模同时开启,于是就使用了这个作为我的无限模块通信设备,使用后准备写一篇博客记录一下与单片机的通信过程和使用过程


这个模组买回来就自带了合适的固件,也可以自己更改固件,但是大部分情况都是适用的

https://blog.csdn.net/Boantong_/article/details/125781602?spm=1001.2014.3001.5501
这个是固件升级说明文档,我们只烧录一个文件,因此,烧录软件部分章节,看5.3部分内容



官方文档中AT指令的使用已经写的比较详细了,这里就简单说一下一些我遇到的问题,其余的查看文档足够解决问题了

模组总资料:
https://docs.ai-thinker.com/wb2

AT指令使用文档
https://aithinker-combo-guide.readthedocs.io/en/latest/index.html


这些命令都可以到AT命令集中去查看那些后面的数字参数是什么意思


这里我用的正点原子的xcom串口助手,进行串口调试

建议每次要设置这些网络时,先复位一下模组,否则有时候网络连接可能会出问题

AT+RST


然后就是按照AT指令文档的使用示例去发送对应的AT指令




如果遇到这个错误,也可以去查看错误码找到相应的问题,不过更快的解决方案是直接发送复位指令,然后发送成功后
这样就可以让手机连接这个模组的热点了
我这里是手机应用商店下载的一款网络调试工具,名字叫做【网络调试精灵】
我们先让手机连接这个模组的热点,账号密码就是刚刚发送的AT指令中包含的数据

手机连接了wifi热点后,无线模组会打印:

然后我们手机打开调试工具
因为无线模组是服务端,所以我们需要在工具中建立一个TCP客户端
主机ip地址可以查看

通过文档我们可以知道黑色框中就是ip地址
我们手网络工具上也填写这个地址端口就是刚刚发送的
 

AT+SOCKET=3,6666

后面的“6666”

填写这些信息后,点击连接,显示连接成功,如果连接失败的话注意看wifi是不是被自动切换了,或者端口是不是开错了,以及wifi模块有没有正常工作(电流不够可能会开启不了wifi,确保电源能提供最大电流超过500mA)

有这个代表连接成功了
其他的发送数据和接收数据,官方的文档也写得很清楚


我们发送:

手机网络调试工具显示:


然后我们客户端发数据(手机网络调试工具)

这是我网络调试工具发送的
这是我串口接收的

我们这串口工具显示有接收数据
这里因为我想直接读取我最新的发送数据于是我改了读取格式

AT+SOCKETRECVCFG=1


如果你按照默认的格式读取,那么还需要发送读取指令,去读取消息队列中缓存的数据

你还需要发送:

AT+SOCKETREAD=2

去读取数据,那些参数都可以去官方文档查找

AT+SOCKETRECVCFG=0

这样就实现了手机上网络调试工具与无线模组通信,这样以后很多内容就可以无线查看数据和调整参数了,例如制作平衡小车,更改pid参数,就可以用这种方法,当然也可以自己制作软件或者微信小程序调用官方的API代码,还是比较简单的,这里就简单的使用一下别人制作的软件了


http://www.kler.cn/a/288917.html

相关文章:

  • 《Java核心技术I》Swing的网格包布局
  • ffmpeg之播放一个yuv视频
  • 大恒相机开发(2)—Python软触发调用采集图像
  • 面试基础篇---迭代器,yield, tcp, 等
  • Pytorch | 从零构建EfficientNet对CIFAR10进行分类
  • CNN和Transfomer介绍
  • 在Spring框架中,如何实现依赖注入?请列举几种注入方式。请解释Spring Boot的自动配置特性,并讨论其如何简化Web应用开发。
  • 释放GPU潜能:PyTorch中torch.nn.DataParallel的数据并行实践
  • PhpStorm下调试功能配置
  • 【C语言】结构体新的理解
  • css重置样式表 reset.css 格式化默认css样式
  • JavaWeb基础 -- SpringMVC请求和响应
  • Unity 3D学习资料集合
  • 山东大学OLED透明展示柜案例:科技赋能,创新展示新体验
  • 使用HTTP代理注意的点
  • shell脚本发送随机请求
  • 计算机视觉之 GSoP 注意力模块
  • 《第二十六章 IO 流 - 字节流》
  • 在项目中使用 redis存储 数据,提高 项目运行速度
  • 【Linux】 理解 Linux 中的 `dup2` 函数
  • Spring框架中的@EventListener注解浅谈
  • 【C++ Primer Plus习题】8.2
  • 直播路由器的原理是什么
  • Linux CentOS 7.39 安装mysql8
  • rabbitmq发送的消息接收不到
  • 告别文档处理烦恼,PDF Guru Anki一键搞定所有