Haribit Intern day3 AT指令测试TCP连接

ESP32固件

ESP-WROOM-32(ESP-WROOM-32 是 ESP32-WROOM-32 的曾用名)模块,4MB Flash,无 PSRAM。
接线图
上图仅作示意,根据实际固件情况组装。连接好后,将起到UART作用的USB口插入主机,可将固件内部TTL电平信号输入主机并提供通信串口。

用AT指令测试TCP连接

1. 下载netassist

下载net assist网络调试助手
运行软件。建立主机的TCP服务器。
忽略主界面的hello world

2. 配置TCP服务器

协议类型选择 TCP server
本地主机地址 192.168.137.1
本地主机端口8080
(本地主机地址可以自动检测)
开启TCP服务器
注意主机和固件处于同一网络环境下。

3. ESP32连网

AT 模块连接 AT 串口到 PC,并上电,确定 AT 功能正常。

发送
AT
收到
OK

设置 AT 模块为 STA 模式(STA 模式下才能连接路由器 AP 热点)

发送
 AT+CWMODE=1 
收到
OK

(进入 STA 模式,1 为 STA,2 为 AP,3 为 AP+STA。)
发送 AT+CWJAP=“SSID”,“PWD” 连接路由器,SSID 为路由器 AP 热点名称,PWD 为路由器热点密码。

发送
AT+CWJAP="ssid","password"
收到
WIFI CONNECTED
WIFI GOT IP

OK

查询模块 ip 地址,判断是否与 PC 在同一网段下

发送
AT+CIFSR
收到
+CIFSR:STAIP,"192.168.50.15"
+CIFSR:STAMAC,"30:ae:a4:04:75:f0"

OK

连接 TCP Server

AT+CIPSTART="TCP","192.168.50.190",8089
CONNECT

OK

ERROR是因为地址写错了

4. 模块发送命令给TCP server

模块发数据给 TCP Server

先发送 AT 命令 AT+CIPSEND=x,其中 x 表示要发送的数据长度,告诉 AT 解析器,我要发 x 字节的数据,你准备好接收。

AT 解析器成功识别之后返回OK

发送
AT+CIPSEND=6
收到
OK

>

当看到 > 的时候,就可以发数据了,但一定要发送 x 字节数据,否则多余的数据会被丢掉,并返回 busy p…

5. TCP server 发送消息给模块

TCP Server 直接发数据就可以,WiFi 模块收到后,显示 +IPD,x:data 格式的信息。其中 +IPD 表示 WiFi 模块收到了对端的数据,x 表示收到的数据长度,data 表示收到的数据内容。

+IPD,32:This is from server!

6. 模块透传

首先设置数传模式为透传模式,指令 AT+CIPMODE=1。1:透传模式;0:普通模式。他们的主要区别是在透传模式可以在 AT+CIPSEND 指令后一直发送数据(直到退出透传发送),而普通模式下每次发送数据必须使用 AT+CIPSEND=x 来指定数据长度。

AT+CIPMODE=1

OK
AT+CIPSEND

OK

>

##退出透传
发送 +++ 后停顿 1 秒。使用串口工具一次性发送 +++ 而不是手动一个个发送,否则会导致误检测成数据。

这是 AT 指令的一个标准约定。

如果此时想切换成 普通数传模式,发送 AT+CIPMODE=0 指令。

总结

完成AT基于指令集的WiFi模块操作。
明天根据eclipse的开发插件配置开发环境。
遇到了电源线断了的情况,重新焊上即可。目前固件运行几秒就关机了,怀疑是没电了,明天换换电池试试。

教程来自于文章:
固件TCP连接测试

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值