saservice 发表于 2023-8-26 22:00

ESP8266 无线wifi AT 指令操作详解

指令集分为:

基础 AT 命令、
Wifi 功能 AT 命令、
TCP/IP 工具箱 AT 命令等。
指令分类

测试命令 :“该命令用于查询设置命令或内部程序设置的参数以及其取值范围”
查询命令 :“该命令用于返回参数的当前值”
设置命令 :“该命令用于设置用户自定义的参数值”
执行命令:“该命令用于执行受模块内部程序控制的变参数不可变的功能”
注意:
1)不是每条 AT 指令都具备上述 4 类命令。
2)后文指令中[ ]内数据为缺省值,不必填写或可能不显示。
3)波特率 115200。
4)参数为字符串的,需要加上双引号。例如:AT+CWSAP=“ESP_756190”,“20130826”,1,4

基础 AT 命令、

AT 测试 AT 响应 OK
AT+RST 重启模块 响应 OK
AT+GMR 查看版本信息 响应 8 位版本号
wifi 功能指令

AT+CWMODE (选择 WIFI 应用模式 )

说明
        此指令需重启后生效(AT+RST)。
                指令参数<mode>:
                1 - Station 模式;
                2 - AP 模式;
                3 – AP + Station 共存模式。             
                示例:AT+CWMODE=1,AT+CWMODE? 获取当前模式

AT+CWJAP (加入 AP)

说明
        指令参数:
        <ssid>字符串参数,接入点名称
        <pwd>字符串参数,密码最长 64 字节 ASCII
示例:AT+CWJAP="wifi_name","1231456",需要连接的wifi 名称和密码

AT+CWLAP 列出当前可用 AP

说明
响应参数说明:
                <ecn>0 OPEN
               1 WEP
               2 WPA_PSK
               3 WPA2_PSK
                4 WPA_WPA2_PSK
                <ssid>字符串参数,接入点名称
                <rssi>信号强度       
示例:AT+CWLAP               
响应
        成功,返回AP列表
        + CWLAP: <ecn>,<ssid>,<rssi>
        OK
        或者
        失败,返回
        ERROR


AT+CWQAP (退出与 AP 的连接 )

说明
        响应参数说明:
        <ecn>0 OPEN
       1 WEP
       2 WPA_PSK
       3 WPA2_PSK
        4 WPA_WPA2_PSK
        <ssid>字符串参数,接入点名称
        <rssi>信号强度
示例:AT+CWQAP=?       
响应
        成功,返回AP列表
        + CWLAP: <ecn>,<ssid>,<rssi>
        OK
        或者
        失败,返回
        ERROR

AT+CWSAP (设置 AP 模式下的参数)

说明
        指令参数:
        <ssid>字符串参数,接入点名称
        <pwd>字符串参数,密码最长 64 字节
        ASCII
        <chl>通道号
        <ecn>加密方式
        0 OPEN
        1 WEP
        2 WPA_PSK
        3 WPA2_PSK
        4 WPA_WPA2_PSK
示例:AT+CWSAP="8266","12345678",6,4(该模块的名称和链接密码,通道和加密方式)
响应
        返回当前 AP 参数+CWSAP:<ssid>,<pwd>,<chl>,<ecn>

AT+ CWLIF (查看已接入设备的 IP)

说明 <ip addr> : 已接入设备的 IP 地址
示例:AT+ CWLIF
响应 <ip addr>
        OK

TCP/IP 指令
8. AT+CIPSTATUS (获得连接状态 )

说明
        响应值说明:
        <id>连接的 id 号 0-4
        <type>字符串参数,类型 TCP 或 UDP
        <addr>字符串参数,IP 地址
        <port>端口号
        <tetype>0:本模块做 client 的连接
       1:本模块做 server 的连接
        示例:AT+CIPSTATUS=1,"TCP","192.168.0.105",1234,1
响应
        返回当前模块的连接状态和连接参数。
        STATUS:<stat>+ CIPSTATUS:<id>,<type>,<addr>,<port>,<tetype>
        OK

AT+CIPSTART (建立 TCP 连接或注册 UDP 端口号 )

示例:AT+CIPSTART=2,“TCP”,“192.168.1.122”,8080//建立TCP连接
响应
        1) 单路链接:若设置 AT+CIPMUX=0+CIPSTART:(<type>取值列表),(<IP address>范围),(<port>范围)+CIPSTART:(<type>取值列表),(<domain name>范围),(<port>范围)
        OK
        2)多路链接: 若设置 AT+CIPMUX=1+CIPSTART:(id),(<type>取值列表),(<IP address>范围),(<port>范围)+CIPSTART: (id), (<type>取值列表),(<domain name>范围),(<port>范 围)
       
        OK - 格式正确且连接成功
        或者
        ERROR – 失败
        或者
        ALREAY CONNECT - 连接已存在

AT+CIPSEND (发送数据)

说明
        指令参数:<id>需要用于传输连接的 id 号<length>数字参数,表明发送数据的长度,最大为 2048
示例:AT+CIPSEND   (只在透传模式下有效),当输入单独一包”+++”返回指令模式。
设置指令:
                1)单路连接时(+CIPMUX=0)AT+CIPSEND=<length>
                2)多路连接时(+CIPMUX=1)AT+CIPSEND=<id>,<length>
响应
        响应返回指定长度的数据。收到指令后先换行返回”>”,然后开始接收串口数据,当数据长度满 length时发送数据。
        如果未建立连接或连接被断开,返回ERROR
        如果数据发送成功,返回 SEND OK

AT+CIPCLOSE (关闭 TCP 或 UDP)
说明
        指令参数:<id>需要关闭的连接 id 当 id 为 5 时关闭所有连接(开启server 后 id 为 5 无效)
示例:AT+CIPCLOSE=1
响应
        如果输入正确,返回OK
        如果没有该连接则,返回Link is not

AT+CIFSR (获取本地 IP 地址 )
说明
        AP 模式下该指令无效。
        响应返回:<IP address> - 本机当前 IP 地址(station)
        示例:AT+CIFSR
        +CIFSR:STAIP,"192.168.0.102"
        +CIFSR:STAMAC,"64:v3:ec:12:31:a6"

AT+CIPMUX (启动多连接)
说明
        只有当连接都断开后才能更改,如果开启过 server 需要重启模块。
                指令参数:<mode>
                0 单路连接模式
                1 多路连接模式
                查询命令:AT+CIPMUX?
                设置指令:AT+CIPMUX=<mode>
示例:AT+CIPMUX=1,AT+CIPMUX=0
响应
        OK
        如果已经处于连接状态则,返回Link is builded

AT+CIPSERVER (配置为服务器)
说明
        指令参数:<mode>
        0 关闭 server 模式
        1 开启 server 模式
        <port>端口号,缺省值为 333
        开启 server 后自动建立 server 监听
        当有 client 接入会自动按顺序占用一个连接
        AT+ CIPMUX=1 时才能开启服务器
示例:
        AT+CIPSERVER=1,8080//创建服务器
        AT+CIPSERVER=0,8080//关闭服务器
响应
        开启 server 后自动建立 server 监听
        OK
        关闭 server 需要重启

AT+CIPMODE (设置模块传输模式)

说明
指令参数:
0 – 非透传模式;
1 – 透传模式
示例 AT+ CIPMODE=0,AT+ CIPMODE=1
响应 OK

AT+CIPSTO (设置服务器超时时间)

说明
< time>: 0~28800 服务器超时时间,单位为 s
示例:AT+ CIPSTO =1000

接收的数据
+IPD 接收到的数据

实际应用操作

AT+CWMODE=1
AT+CWJAP=“dajiating”,“xxxxxxx”
AT+CIPSTART=“TCP”,“192.168.0.105”,1234
AT+SAVETRANSLINK=1,“192.168.0.105”,1234,“TCP”
————————————————
版权声明:本文为CSDN博主「闰土小蒋」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_35653974/article/details/126700280

tpgf 发表于 2023-9-8 13:11

AT指令是应用于终端设备与PC应用之间的连接与通信的指令

xiaoqizi 发表于 2023-9-8 13:26

每个AT命令行中只能包含一条AT指令

木木guainv 发表于 2023-9-8 13:51

对于AT指令的发送,除AT两个字符外,最多可以接收1056个字符的长度(包括最后的空字符)

晓伍 发表于 2023-9-8 14:16

AT指令以回车作为结尾,响应或上报以回车换行为结尾

八层楼 发表于 2023-9-8 15:06

每个指令执行成功与否都有相应的返回

磨砂 发表于 2023-9-8 18:20

AT指令以回车作为结尾,响应或上报以回车换行为结尾

benjaminka 发表于 2023-11-5 10:09

AT指令的基本格式为“AT+命令=参数”,其中“AT+”为固定前缀,“命令”为指令名称,“参数”为指令参数。

houjiakai 发表于 2023-11-5 10:58

需要使用 AT+CWLAP 命令列出可用的 AP 列表,然后使用 AT+CWJAP 命令将 ESP8266 无线WiFi模组连接到指定 AP。在命令后面加上“OK”表示连接成功,否则表示失败。

hilahope 发表于 2023-11-5 11:46

一些指令之间存在依赖关系,需要按照正确的顺序执行。

beacherblack 发表于 2023-11-5 14:53

AT指令的执行需要一定的时间,需要等待执行结果返回后再执行下一条指令。

1988020566 发表于 2023-11-5 15:32

ESP8266的AT指令集分为测试命令和执行命令。测试命令用于查询设置命令或内部程序设置的参数以及其取值范围,执行命令用于执行受模块内部程序控制的变参数不可变的功能。

uptown 发表于 2023-11-5 16:26

ESP8266的AT指令集非常丰富,包括测试命令、执行命令、配置命令、操作命令等。

jackcat 发表于 2023-11-5 17:30

AT指令需要以“\r\n”结尾,表示回车和换行。并且,AT指令的执行结果会返回到串口,需要通过串口读取结果。此外,AT指令的执行需要一定的时间,需要等待执行结果返回后再执行下一条指令。

sesefadou 发表于 2023-11-5 19:57

可以通过 AT+CIPSTART 命令启动客户端或服务器模式,连接到远程服务器。如果连接成功,返回的值应为 OK。如果出现异常,可以使用 AT+CIPCLOSE 命令断开连接,以避免持续占用连接资源。

mikewalpole 发表于 2023-11-5 20:08

ESP8266的AT指令执行后,会返回一个结果。如果指令执行成功,返回的值通常为“OK”,否则返回的值可能为“Error”。

cashrwood 发表于 2023-11-5 20:26

ESP8266的AT指令集可以通过加密等方式进行安全性保护,以防止未经授权的访问和操作。

fengm 发表于 2023-11-5 21:44

ESP8266的AT指令操作涉及多个方面,包括基础指令、设置指令和查询指令等。

kmzuaz 发表于 2023-11-5 21:56

在进行AT命令操作时,需要确保命令已被正确接收并执行。如果命令执行失败,可能会导致ESP8266无法正常运行。

chenci2013 发表于 2023-11-5 22:21

ESP8266的AT指令可以进行重写,但需要注意,重写指令可能会导致一些设置被覆盖,因此在重写前需要确保已经保存好相关设置。
页: [1] 2 3 4
查看完整版本: ESP8266 无线wifi AT 指令操作详解