ESP8266如何用AT指令连接WiFi?

2025-09发布4次浏览

ESP8266是一款低功耗的Wi-Fi微控制器,它可以通过AT指令集与Wi-Fi网络进行通信。使用AT指令连接WiFi的过程相对简单,主要包括以下几个步骤:

1. 硬件连接

首先,需要将ESP8266模块通过串口与微控制器或开发板连接。通常使用TX(发送)和RX(接收)引脚,并可能需要连接一个GND(地线)和一个VCC(电源)引脚。例如,如果使用Arduino,可以将ESP8266的TX连接到Arduino的RX,ESP8266的RX连接到Arduino的TX,并确保GND和VCC正确连接。

2. 设置串口通信

ESP8266需要通过串口接收AT指令。因此,需要设置串口通信参数,如波特率。常用的波特率是115200,但也可以根据模块的规格选择其他波特率。

3. 发送AT指令

通过串口发送AT指令来控制ESP8266模块。以下是一些常用的AT指令:

3.1 设置模块模式

首先,需要设置ESP8266模块的工作模式。通常使用AT+RST指令来重启模块,并进入AT指令模式。

AT+RST

3.2 设置Wi-Fi模式

使用AT+CWMODE指令来设置模块的工作模式。常见的模式有:

  • 1:Station模式(连接到现有Wi-Fi网络)
  • 2:SoftAP模式(作为Wi-Fi热点)
  • 3:Station+SoftAP模式
AT+CWMODE=1

3.3 连接到Wi-Fi网络

使用AT+CWJAP指令来连接到指定的Wi-Fi网络。需要提供网络名称(SSID)和密码。

AT+CWJAP="yourSSID","yourPassword"

3.4 验证连接

连接成功后,模块会返回一些信息,如IP地址。可以通过AT+CIFSR指令来获取模块的IP地址。

AT+CIFSR

4. 编程实现

在实际应用中,通常需要通过编程语言(如Python、Arduino等)来发送这些AT指令。以下是一个使用Python和pySerial库的示例:

import serial

# 初始化串口
ser = serial.Serial('/dev/ttyUSB0', 115200, timeout=1)

# 重启ESP8266
ser.write(b'AT+RST\n')
ser.readline()

# 设置Wi-Fi模式为Station
ser.write(b'AT+CWMODE=1\n')
ser.readline()

# 连接到Wi-Fi网络
ser.write(b'AT+CWJAP="yourSSID","yourPassword"\n')
ser.readline()

# 获取IP地址
ser.write(b'AT+CIFSR\n')
print(ser.readline().decode())

# 关闭串口
ser.close()

5. 注意事项

  • 确保ESP8266模块的电源稳定,电压通常为3.3V。
  • 在发送指令时,确保使用正确的波特率和串口配置。
  • 有些ESP8266模块可能需要特定的命令序列来进入AT指令模式。

通过以上步骤,可以成功地使用AT指令将ESP8266连接到Wi-Fi网络,并进一步进行数据传输和其他网络相关的任务。