【ESP系列】AT指令案例

前言

  ESP系列芯片具有高性价比的联网功能,广受大家的认可。然而,在开发过程中,有时候我们想要使用ESP系列芯片的联网功能,却又不想为此编写繁杂的联网逻辑、串口交互逻辑等等。此时,我们可以运用AT指令来实现简洁的联网控制。本文将介绍这种基于AT指令的简单指令和案例,方便大家熟悉。

常用AT指令

  这里分三大类基础类 WIFI类 TCP/IP类,简单的介绍部分常用的AT之类。详细的指令应用案例,可以查看乐鑫官网的AT 命令集,包括AT 命令示例,指令和案例详解都有。然后,一般的AT配置命令,只用指令加个问号,就能查询器件当前的配置情况,例如:选择WIFI Station 模式的为指令为AT+CWMODE=1,然后AT+CWMODE?就能在返回数据中,知道查询器件当前的WIFI应用模式。

基础类

指令说明示例参数
AT响应测试AT
AT+RST重启模块AT+RST
AT+GMR查看版本信息

WIFI类

指令说明示例参数
AT+CWMODE=①选择 WIFI 应用模式AT+CWMODE=1①:0: 无 Wi-Fi 模式 1: Station 模式 2: SoftAP 模式 3: SoftAP+Station 模式
AT+CWJAP=①,②连接 APAT+CWJAP=“K30”,“12345678”①: WIFI名称 ②:WIFi密码
AT+CWLAP列出当前可用 APAT+CWLAP
AT+CWQAP断开与 AP 的连接
AT+CWSAP=①,②,③,④配置SoftAP模式参数AT+CWSAP=“ESP”,“1234567890”,5,3①:AP名称 ②:密码 ③:信道号 ④:加密方式

TCP/IP类

指令说明示例参数
AT+CIPSTATUS获得连接状态AT+CIPSTATUS
AT+CIPSTART=①,②,③建立 TCP 连接或注册 UDP 端口号AT+CIPSTART=“TCP”,“192.168.101.110”,1000①:网络连接类型 ②:IPv4 地址 ③:远端端口值
AT+CIPSEND=①发送数据AT+CIPSEND=50①:发送的数据长度
AT+CIPCLOSE关闭TCP 或 UDPAT+CIPCLOSE
AT+CIFSR获取本地 IP 地址AT+CIFSR
AT+CIPMUX=①启动多连接AT+CIPMUX=0①:0: 单连接 1: 多连接
AT+CIPSERVER=①,②配置为服务器AT+CIPSERVER=1,80①:0:关闭 1:开启 ②:端口号
AT+CIPMODE=①设置模块传输模式AT+CIPMODE=0①:0: 普通传输模式 1: Wi-Fi 透传接收模式,仅支持 TCP 单连接、UDP 固定通信对端、SSL 单连接的情况
AT+CIPSTO设置服务器超时时间AT+CIPSTO=30①:超时时间(Ms)

案例

​ 基本配置: 波特率:115200 串口通信时勾选上,发送新行。

​ [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rirImxrx-1681716930177)(0.png)]

​ 注意:在下面为了方便解释,我在AT指令后面加了注释,实际在使用AT指令时,不要加上。

  1. 存在测试。发送AT,如器件正常,应该会返回OK。

    AT

    在这里插入图片描述

  2. 重启模块,基本参数查看。比如,能看到SPI Speed,SPI Mode,SPI Flash Size等。

    AT+RST

    在这里插入图片描述

  3. WIFI连接案例

    在以下案例中,我用了自己的手机打开热点,创建了一个名称为K30,密码为12345678热点,方便测试。

    AT+CWMODE=1						//选择为Station模式
    AT+CWJAP="K30","12345678"		//连接AP
    

    在这里插入图片描述

  4. 设备做为 TCP 客户端

      使用电脑或手机软件做TCP服务端,ESP8266做客户端连接,一直都是失败的,怪。按照官方的示例,流程如以下这样,但是尝试了七八次到不行。很是奇怪,下次有时间在找找问题。二次修改,我用两块ESP01连接调试,一块TCP客服端,一块TCP服务端,连接发送数据就能正常发送。

    AT+CWMODE=1
    AT+CWJAP="K30","12345678"
    AT+CIPSTA?
    AT+CIPSTART="TCP","192.168.3.102",8080
    AT+CIPSEND=4
    
  5. 设备做为 TCP 服务器

    //建立TCP服务端流程
    AT+CWMODE=2			//设置 Wi-Fi 模式为 softAP
    AT+CIPMUX=1			//使能多连接
    AT+CWSAP="ESPDemo","12345678",5,3	//设置 softAP
    AT+CIPAP?    		//查询 softAP 信息(可不看)
    AT+CIPSERVER=1,80	//建立 TCP 服务器,并指定定端口
    //当客户端连接上后
    AT+CIPSEND=0,4		//指定id通道,发送指定长度字节信息
    //关闭TCP服务端
    AT+CIPCLOSE=0
    

    在这里插入图片描述

  6. 设备做为 TCP 客户端, UART Wi-Fi 透传 (未有时间实验,只是分享官方示例)

    AT+CWMODE=1								//选择为Station模式
    AT+CWJAP="espressif","1234567890"
    AT+CIPSTART="TCP","192.168.3.102",8080	//连接端口
    AT+CIPMODE=1							//进入 UART Wi-Fi 透传接收模式
    AT+CIPSEND								//进入 UART Wi-Fi 透传模式 并发送数据
    
    AT+CIPMODE=0	//退出 UART Wi-Fi 透传接收模式
    AT+CIPCLOSE		//关闭 TCP 连接
    

    使用 +++ 可退出 透传模式,回到 透传接收模式,此时 TCP 连接仍然有效。您也可以使用 AT+CIPSEND 命令恢复透传。

  7. 设备作为 TCP 服务器, UART Wi-Fi 透传 (未有时间实验,只是分享官方示例)

    AT+CWMODE=1
    AT+CWJAP="espressif","1234567890"
    AT+CIPMUX=1
    AT+CIPSERVERMAXCONN=1
    AT+CIPSERVER=1,8080
    AT+CIPMODE=1
    AT+CIPSEND
    
    AT+CIPMODE=0
    AT+CIPCLOSE
    

总结

  上述案例有些还未来的及测试。不过以测试的,介绍的还是挺详细了。还是能参考参考的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值