好用的蓝牙模块涨价 esp模块十分便宜
而盗版蓝牙模块连接稳定性不佳 经常会断连 还会有严重的电磁干扰(如果你的实验室有调智能车的选手而且他使用了无线串口图传的模块)
ESP32/ESP8266串口透传
- 使用更为成熟,更加好用的WIFI+TCP连接.(有什么模块能比穿墙路由器的信号功率还大?+TCP/IP丢包重发的特性)
- 使用ESP官方提供的AT固件,经过大量工程师和产品验证,避免自己编写代码出现bug.
- 本文使用最便宜的ESP-01s模块作为范例
基本操作
刷写固件
你也可以在这里参考官方教程
下载
在这里下载对应模块的固件
在这里下载ESP的Flash 下载工具
注:ESP公司的芯片有多个系列,分为ESP32 ESP32S2 ESP32S3 ESP32C2 ESP32C3等.
据我所知,只要你给芯片接上足够大的flash,一个系列芯片的固件可以通刷,就像STM32C8和STM32RB固件可以互刷一样,所以你只需要注意你购买的模块的flash容量和使用的核心芯片系列下载对应的固件即可.
这是我使用的固件,因为ESP官方的固件没有使用ESP-01s引出的管脚作为AT数据接口,所以对官方固件进行小小的修改,将固件使用的io口设置到原本的默认串口上.这样带来的一个问题是在模块启动的时候会输出无关的日志信息,且无法关闭,只需要在使用的时候控制EN脚重置模块配合屏蔽掉串口信息即可.
直接下载链接
硬件连接
- 3V3 —— 3V3
- GND —— GND
- RX —— TXD
- TX —— RXD
- IO0 —— GND
ESP-01S的GPIO0
是工作模式选择:悬空:Flash Boot,工作模式; 下拉:UART DownLoad,下载模式;
所以在上电时让ESP-01S进入烧录模式,这里有一个小窍门,等到下载时再接上3V3,先接上其余四根线就可以让模块进入下载模式.
烧录
下载好之后,请使用factory(工厂量产)的固件,设置量比较少.
打开工具,选择你使用的模块
按OK进入后,选择解压出来的factory固件bin文件,设置连接上的COM口和波特率(决定你的下载速度 下载失败可以考虑降低改制),其余按图片设置.
按下START,接上模块3V3线,等待进度条走完,没有出现红色报错即为成功.
测试
要求使用电脑和模块使用同一个局域网
打开一个网络调试软件
设置主机协议类型,检查ip地址,设置开放端口示例如下:
使用串口工具设置:
连接WiFi
1 | AT+CWJAP="WIFI名","WIFI密码" |
建立连接,用上面软件里设置的IP和端口
1 | AT+CIPSTART="TCP","目标IP",目标端口 |
设置WiFi透传传输模式
1 | AT+CIPMODE=1 |
进入 Wi-Fi 透传模式
1 | AT+CIPSEND |
发送一些消息,检查是否成功接收.
设置
去掉IO0 —— GND这根线,将模块连接到电脑上,依次设置:
WIFI和密码
1 | AT+CWJAP="WIFI名","WIFI密码" |
设置开机启动透传
1 | AT+SAVETRANSLINK=1,"192.168.31.210",8080,"TCP" |
使用姿势
模块-模块
未测试 待补充
模块-路由器-电脑
在设置开机启动透传命令里设置好网络调试助手的信息即可自动连接