ESP8266的AT指令详解

文章目录

  • 1 树莓派串口设置
    • 1.1 打开mini UART
    • 1.2 交换映射关系
  • 2 ESP8266连线说明
  • 3 AT指令
    • 3.1 AT 基础指令
    • 3.2 station模式
    • 3.3 AP模式
    • 3.4 将模块作为TCP服务器
    • 3.5 将模块作为TCP客户端

1 树莓派串口设置

树莓派包含两个串口,一个称之为PL011 UART硬件串口(/dev/ttyAMA0),一个称之为mini串口(/dev/ttyS0)。
硬件串口由硬件实现,有单独的波特率时钟源,性能高、可靠。
mini串口时钟源是由CPU内核时钟提供,波特率受到内核时钟的影响,不稳定。想要通过树莓派的GPIO引脚进行稳定的串口通信,需要修改串口的映射关系。

PL011 UART串口默认用于蓝牙/无线模块,在需要数据连接可靠的情况下,可以使用PL011 UART串口,如果同时需要使用蓝牙模块,可以使用mini UART串口。

默认情况下serial0(GPIO串口已启用)使用的是ttyS0设备(mini串口),serial1(蓝牙)使用的是ttyAMA0设备(硬件串口PL011)。

在这里插入图片描述
我们接下来要做的事情就是将物理引脚上的TXD,RXD映射变为PL011.

1.1 打开mini UART

sudo raspi-config

ESP8266的AT指令详解_第1张图片
ESP8266的AT指令详解_第2张图片

  • 关闭serial登录功能,仅用于通信
    ESP8266的AT指令详解_第3张图片
  • 使能
    ESP8266的AT指令详解_第4张图片

ESP8266的AT指令详解_第5张图片

1.2 交换映射关系

  • pi3-miniuart-bt的设备树文件用于交换串口映射。用下面的命令查看
ls -l /boot/overlays/pi3-miniuart-bt*

在这里插入图片描述
启用该文件只需在/boot/config.txt文件末尾添加一行代码。

  • 编辑文件
sudo  vim  /boot/config.txt
  • 在末尾添加一行代码
dtoverlay=pi3-miniuart-bt
  • 修改完以后重启系统:
sudo reboot
  • 再查看串口映射关系:
    ESP8266的AT指令详解_第6张图片

2 ESP8266连线说明

ESP8266分为两种状态,烧录固件和运行FLASH

ESP8266的AT指令详解_第7张图片

运行状态GPIO0悬空即可,当需要下载固件的时候,将GPIO0拉低,然后将RST拉低2秒,GPIO2在两种状态都悬空就行。
在这里插入图片描述

3 AT指令

你可以选择将ESP8266连接树莓派,然后使用minicom调试工具对模块进行配置,也可以使用busybox中的microcom调试工具或者使用USB转TTL的芯片将模块与电脑相连,然后使用串口调试工具进行配置。
桦桦这里使用官方的调试工具。
http://wiki.ai-thinker.com/tools
乐鑫官网也有AT指令的文档,我自己总结了这篇文档,方便自己以后调试,也希望帮助到有需要的人。
ESP8266的AT指令详解_第8张图片

请一定注意,输入AT指令,要注意大小写,还有前后中间都不能有空格,以及符号必须是英文符号

3.1 AT 基础指令

ESP8266的AT指令详解_第9张图片
ESP8266有三种模式:

1 station模式,即相当于手机,可以连接家里的路由器
2 AP模式 即相当于路由器,其他的终端可以连接自己发出的热点信号
3 上两种共存

AT=RESTORE       //恢复出厂设置
AT               //测试是否连接上了
AT+RST			 //重启模块
AT+GMR           //查看版本信息
AT+PING="baidu.com" //测试联通性,下面我们没有连接路由器,当然就连接失败
AT+CWMODE?       //查询现在模块是什么模式
AT+CWMODE=?     //查询帮助信息
AT+CWMODE=3    //指定为第三种模式

AT+UART=<baudrate>,<databits:>,<stopbits>,<parity>,<flow control> 
          串口波特率   数据位      停止位    奇偶校验位    流控              
                    55 bit    11 bit     0: None    0:不使能流控
                    66 bit    21.5 bit   1: Odd     1:使能 RTS
                    77 bit    32 bit     2: EVEN    2:使能 CTS
                    88 bit                             3:同时使能 RTS 和 CTS
                 

ESP8266的AT指令详解_第10张图片
ESP8266的AT指令详解_第11张图片

3.2 station模式

  • 接下来我们连接路由器,使模块可以连接外网
AT+CWLAP	//列出所有能收到的WiFi信息
AT+CWJAP    //加入其中一个WiFi
AT+CIPSTA?  
AT+CIFSR

ESP8266的AT指令详解_第12张图片

3.3 AP模式

就是将自己设置为热点

AT+CWSAP="热点名字","密码","通道","ecn"
<ecn>   0 OPEN, 2 WPA_PSK, 3 WPA2_PSK, 4 WPA_WPA2_PSK

AT+CIPAP="自定义IP地址"
AT+CIPAP?    //查询作为AP的配置信息
AT+CWLIF    //查询连这个热点的IP

ESP8266的AT指令详解_第13张图片

  • 打开你手机,就会发现有一个HUAHUA的热点,当然了,ESP模块是没有NAT转换的,所以不能上网。
    ESP8266的AT指令详解_第14张图片

3.4 将模块作为TCP服务器

AT+CIPMUX=1			//设置为多链接模式
AT+CIPSERVER=1,6666  //使能服务器功能,并开端口6666
AT+CIPSERVER=0    //关闭服务器

ESP8266的AT指令详解_第15张图片

3.5 将模块作为TCP客户端

AT+CIPMUX=0		//单链接
AT+CIPSTART="TCP","192.168.0.106",12345
AT+CIPCLOSE    //关闭socket

ESP8266的AT指令详解_第16张图片

你可能感兴趣的:(树莓派,linux,物联网)