AT命令使用和简单介绍

这篇具有很好参考价值的文章主要介绍了AT命令使用和简单介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. AT命令基本介绍

1.1 基本介绍

AT 命令(AT Commands)最早是由发明拨号调制解调器(MODEM)的贺氏公司(Hayes)为了控制 MODEM 而发明的控制协议。后来随着网络带宽的升级,速度很低的拨号 MODEM 基本退出一般使用市场,但是 AT 命令保留下来。

在嵌入式开发中,经常是使用AT命令去控制各种通讯模块,比如ESP8266 WIFI模块、4G模块、GPRS模块等等。一般就是主芯片通过硬件接口(比如串口、SPI)发送AT命令给通讯模块,模块接收到数据之后回应响应的数据。

在这个通讯过程中其实就是涉及AT命令客户端AT命令服务器,AT命令集就是他们互相约定好的协议接口。大概的通讯结构如下:
AT命令使用和简单介绍

其中,AT客户端通常是主芯片作为客户端,AT服务器一般就是各种通讯模块。

1.2 AT命令组成和通讯过程

  1. AT命令由三个部分组成,分别是前缀、主体和结束符。其中前缀由字符 AT 构成;主体由命令、参数和可能用到的数据组成;结束符一般为 <CR><LF> ("\r\n")。

    比如 AT+CWMODE=3\r\n 这条命令,AT就是前缀,中间就是主体部分,\r\n 就是结束符。

  2. AT命令通讯过程的实现,需要AT Client 和 AT Server 两部分共同完成。

  3. AT客户端和AT服务器之间硬件通讯接口,一般最常用的是串口,也有SPI接口等。

  4. AT Client主要作用是主动发送AT命令,然后等待AT Server的响应数据,并对响应数据或者AT Server主动发送的数据(即URC数据)进行解析。

  5. AT Server 返回给 AT Client 的数据有两种。命令响应数据和 URC 数据(unsolicited result code)。

    命令响应数据:AT Client 发送命令后 AT Server 回应的响应状态和信息。

    URC数据:AT Server 主动发送给 AT Client 的数据。比如 AT Server接收到网络的数据后,会主动把这些数据发送给 AT Client ,又或者 WIFI 断开连接等,也会主动发数据告知 AT Client。

2. 基于ESP8266使用AT命令

2.1 ESP8266常用命令

命令 功能
AT 回复OK。主要用于查询模块是否正常工作
AT+RST 复位模块
ATE0/ATE1 关闭/打开命令回显功能
AT+CWMODE=1 设置WIFI模式为 WIFI station 模式
AT+GMR 获取模块版本信息
AT+CIFSR 查询模块IP地址
AT+CIPMUX=0/1 0:单连接。1:开启多连接。这时可以支持多个TCP客户端接入模块(模块作为TCP Server)。当使能了多连接之后,后面的有些指令就要带上连接号了,不然模块会识别为错误的AT指令。
AT+CWJAP=“SSID”,“password” 连接WIFI。SSID是WIFI名称,password是WIFI密码。
AT+CIPSTART=“TCP”,“192.168.0.102”,8080 ESP8266作为TCP Client连接到TCP服务器。TCP代表协议,192.168.0.102是服务器IP,8080是服务器端口。
AT+CIPSEND=n ESP8266模块向TPC Server发送数据,n表示要发送多少个字节。如果这条命令发送成功的话,会回复 OK 然后接着下一行回复 ‘>’ 这个符号。
然后再接着向模块写入n字节数据(超过n字节的话,会丢弃超过的数据),这个时候就相当于发送出去了。如果回复 SEND OK 表示发送成功,回复 SEND FAIL 表示发送失败。
+IPD,n:xxxxxxxxxxx 当模块接收到 TCP Server 发送的数据时,会回复这条数据给主芯片(AT Client)。其中n,表示接收到了n字节,: 号后面就是 TCP Server 实际发送过来的数据。
AT+CIPCLOSE ESP8266模块断开与 TCP Server 的网络连接。
AT+CWQAP ESP8266模块断开 WIFI 连接。

2.2 ESP8266模块AT命令收发实验

ESP8266模块是使用串口对外作为通讯接口的,我们可以通过串口发送各种AT命令配置模块、收发数据等等。

我们使用电脑上运行的串口助手作为 AT Client 发送命令和接收模块的响应数据、URC数据,ESP8266模块作为AT Server。

1、USB转串口连接ESP86266模块

首先,使用USB转串口,接线到ESP8266模块。我们只要连接模块的 VCC、GND、RX、TX,这四个引脚即可。如下图:

AT命令使用和简单介绍

连接好之后,USB转串口插到电脑上。然后使用串口助手发送上面介绍的常用AT命令。

2、PC串口助手发送AT命令

PC段运行串口助手,通过串口助手发送AT命令给ESP8266模块,如下,记录了AT发送命令和命令响应数据。

[13:46:03.634]发→◇AT+GMR
[13:46:03.639]收←◆AT+GMR
AT version:1.2.0.0(Jul  1 2016 20:04:45)
SDK version:1.5.4.1(39cb9a32)
v1.0.0
Mar 11 2018 18:27:31
OK


[13:46:10.170]发→◇AT+CIFSR
[13:46:10.174]收←◆AT+CIFSR
+CIFSR:APIP,"192.168.4.1"
+CIFSR:APMAC,"4a:55:19:c7:ed:ad"
+CIFSR:STAIP,"192.168.0.100"
+CIFSR:STAMAC,"48:55:19:c7:ed:ad"

OK


[13:46:25.723]发→◇AT+CIPSTART="TCP","192.168.0.103",8080
[13:46:25.729]收←◆AT+CIPSTART="TCP","192.168.0.103",8080

[13:46:25.782]收←◆CONNECT

OK

[13:51:50.705]发→◇AT+CIPSEND=4
[13:51:50.710]收←◆AT+CIPSEND=4

OK
> 
[13:51:56.161]发→◇abcd
[13:51:56.166]收←◆
busy s...

Recv 4 bytes

[13:51:56.222]收←◆
SEND OK

[13:52:01.535]收←◆
+IPD,10:1234567890

下图记录了收发过程:

AT命令使用和简单介绍

如果要连接TCP Server,那么还有在电脑上开启一个TCP Server,这样ESP8266要连接TCP Server是才能连接成功。下面就开启了一个TCP服务器。

AT命令使用和简单介绍文章来源地址https://www.toymoban.com/news/detail-453362.html

到了这里,关于AT命令使用和简单介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux命令查看CPU、内存、IO使用情况简单介绍

    物理cpu就是计算机上实际安装的cpu,物理cpu数就是主板上实际插入的CPU数量。 在Linux上查看/proc/cpuinfo,其中的physical id就是每个物理cpu的id,有几个不同的physical id就有几个物理cpu。 每颗物理CPU可以有1个或者多个物理内核,通常每颗物理CPU的内核数都是固定的, 单核CPU就是有

    2024年02月10日
    浏览(52)
  • Midjourney-Commands 命令教程

    探索Midjourney之旅,学习绘画与AI,一同成长。加入「阿杰与AI」公众号,参与内容社群建设。 1.Midjourney 新手快速起步指南 2.Prompts-提示指令 3.Explore Prompting-提示指令的探索 4.Blend-叠加 5.Midjourney Discord的使用手册 6.Versions-版本 7.UpScalers-放大器 8.Midjourney 命令教程 9.Midjourney 参数

    2024年02月09日
    浏览(16)
  • 【ARM Trace32(劳特巴赫) 使用介绍 2 -- Trace32 cmm 脚本基本语法及常用命令】

    CMM ( Command Macro Model ) 是由 Lauterbach 公司定义的一种脚本语言,用于控制它的 TRACE32 调试器 系列。CMM脚本通常用于自动化调试或测试任务,例如加载代码,配置目标硬件,运行测试等。 SYStem(缩写sys) 是CMM脚本中的一条命令,它用于控制和查询目标系统的状态。以下是一些常

    2024年02月06日
    浏览(50)
  • Git命令集合2——附属命令Ancillary Commands与Interacting with Others

    Git命令集合索引目录 1. config - 获取和设置仓库或全局选项 解释: 用于获取和设置仓库或全局选项,例如用户名、邮箱等配置信息。 使用方式: git config --global user.name \\\"Your Name\\\" :设置全局用户名。 git config --global user.email \\\"your.email@example.com\\\" :设置全局用户邮箱。 导致结果:

    2024年02月01日
    浏览(23)
  • Github 打不开官网不能使用命令,现在一款简单又实用的免费 GitHub 加速神器介绍给你!

    今天给继续大家推荐一个堪称 GitHub 加速神器的开源项目。 这个开源项目就是: FastGitHub ,它主要解决 GitHub 打不开、用户头像无法加载、releases 无法上传下载、git-clone、git-pull、git-push 失败等问题。 该项目的好处就是专门针对 GitHub 访问速度慢的问题,具有合法性,可靠性,

    2024年02月03日
    浏览(59)
  • 最简单的git图解(最基本命令)

    这个命令用于将远程代码仓库克隆到本地,这是对任何项目进行开发前的第一步。 比如你本地本来并没有某个项目的代码仓库,此时随便找一个文件目录并进入cmd命令窗口,执行命令git clone [remote address],[remote address]就是对应的远程代码仓库地址,克隆完成之后,你便可以看

    2024年02月05日
    浏览(37)
  • AT24C02芯片使用介绍

    AT24C02简介       AT24C02是一个2K位串行CMOS E2PROM,内部含有256个8位字节,有一个16字节页写缓冲器。该器件通过IIC总线接口进行操作,有专门的写保护功能。应用于AT24C02制造过程的先进CMOS技术实质上减少了器件的功耗。              AT24C02特性       1、采用I2C 总线传输数据

    2023年04月14日
    浏览(44)
  • 简单介绍数据结构的基本概念

    数据 数据(Data)是 客观事物的符号表示 ,是 所有能输入到计算机中并被计算机程序处理的符号的总称 。例如:整数、字符串、图形、图像、声音和动画等 数据元素 数据元素(Data Element)是 数据的基本单位 ,有时也可被称为元素、记录等。 在计算机中通常作为一个整体

    2024年02月19日
    浏览(42)
  • ACL介绍及基本命令配置

    ACL :又称访问控制列表,它只是一个匹配用的工具,用于过滤经过接口的数据包,根据 规则 要么放通,要么丢弃。 在接口上利用通信五元素(源地址、目的地址、源端口、目的端口、协议)定义规则,经过接口的数据包根据规则匹配。 匹配规则:一个接口的一个方向只能

    2024年02月15日
    浏览(38)
  • Linux|奇怪的知识|一次性任务at命令的使用

    at命令是Linux的一个专有命令,该命令是旧的计划任务atd服务的客户端命令(at命令是c/s形式的软件套件里的client,客户端),主要的用处就是灵活制定一个工作计划,特定时间自动完成你所设定的任务。 好了,那么可能有老铁会说,这个at命令和crontab好像功能是重叠的,为什

    2024年02月06日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包