AT指令是什么?

内容纲要

AT指令的应用?

AT命令在通讯上有广泛的应用。不但是Windows XP中内置的命令,而且在当代手机通讯中起着重要的作用,能够通过AT指令控制手机的许多行为,包括拨叫号码、按键控制、传真、GPRS等。

在计算机系统中可以媲美Windows中的“计划任务”,而且在计划的安排、任务的管理、工作事务的处理方面,AT命令具有更强大更神通的功能。AT命令可在指定时间和日期、在指定计算机上运行命令和程序。注意:必须正在开启Task scheduler服务才能使用 at 命令。可以在命令窗口中输入net start schedule启动它,停止则使用net stop schedule。

AT指令是应用于终端设备与PC应用之间的连接与通信的指令。AT 即Attention。每个AT命令行中只能包含一条AT指令;对于AT指令的发送,除AT两个字符外,最多可以接收1056个字符的长度(包括最后的空字符)。

简单介绍AT指令用法

1、 测试命令(Test Command)

在AT指令后面加上“=?”即构成测试命令。例如“AT+CSCS=?”会列举出所有支持的字符集。

2、 读取命令(Read Command)

在AT指令后面加上“?”即构成读取命令。例如“AT+CSCS?”会列举出当前设置。

3、 执行命令(Execute Command)一般而言在AT指令后加上“=”及命令参数即可。有些命令例如AT+CMGR命令没有参数,直接就可以执行。

以上摘自:https://www.zhihu.com/question/286366537

AT 指令介绍

AT(Attention)指令是由 Dennis Hayes 发明的,所以也称为 Hayes command set。AT 指令最初是用来指导 modem 工作的,后面随着技术的发展,低速 modem 已经退出了市场,但 AT 指令却不断发展,并且在今天 AT 指令依旧扮演这非常重要的角色。

虽然在 PC 端、手机上已经没有了 AT 的使用,但其却在嵌入式行业里各类联网模块中发挥着重要的作用,而且不仅仅只应用在蜂窝模块,还应用到了 WiFi、BLE 等模块中。

相关标准

随着技术的发展,目前 AT 指令发展过程中形成两个重要标准:

  • V.250:该标准于 1995 年建立,1998 年重命名为 V.250

  • ETSI GSM 07.07(3GPP TS 27.007):用于控制 GSM modem 的 AT 指令集

    GSM 07.07 是基于 V.250 标准的。是目前最新的 AT 标准。

当下 AT 指令的应用

目前的 AT 指令着重应用在蜂窝模块、WiFi 模块、BLE 模块中,目的是为了简化嵌入式设备联网的复杂度。

AT 标准定义了 AT 命令的格式本身,比如命令以 AT 为前缀开头,以 或者 结尾,这被现有的 AT 模块所延用。

但是,由于每个厂家的模块不一样,实现的功能不一样,导致每个 AT 模块厂家有自己的一套私有的 AT 命令集,每一个 AT 模块厂家实现的 AT 指令集解析器也不一样(解析器实现的 AT 标准功能也参差不齐)。像上图所示的 AT 命令使用方式不被大多数模块厂家所实现。

AT 模块的应用框图

既然是指令集,那么必然会有指令集的解析处理,通常,我们把 AT 模块端的解析处理程序称为 AT Server,而将控制 AT 模块的处理器端的解析处理程序称为 AT Client。由 AT Client 发起命令请求,AT Server 回应处理结果。另外 AT Server 通过 URC(Unsolicited result code) 来主动给 AT Client 发送数据。

应用框图如下所示:

一些约定

AT 命令的常用格式:

AT+CMD=<xxx>[,<xxx>,<xxx>]

AT 指令以 AT 开始,以 \r 或者 \r\n 结尾,参数之间使用 , 隔开,字符串参数使用双引号 "" 包裹,整形参数不适用双引号。

  • <CR>:回车符

  • <LF>:换行符

  • <xxx>

    尖括号中的名称 xxx 在 AT 里是一个语法元素,要求必须指定。尖括号本身不会出现在命令行里。

  • [xxx]

    中括号中的名称 xxx 在 AT 里是一个语法元素,表示可选择指定。中括号本身不出现在命令行里。

四类 AT 命令

  • Test 命令:AT+<x>=?

    测试指令类似于命令行里的 help 指令,用于提供该命令的使用信息,以及命令参数的取值范围。

  • Read 命令:AT+<x>?

    用于查询该指令对应功能的当前值。

  • Set 命令:AT+<x>=<…>

    设置用户指定的参数到对应的功能里。

  • Execute 命令:AT+<x>

    执行相关操作。

响应结果字符串

AT 标准定义了标准的响应结果字符串:

  • \r\nOK\r\n

    如果 AT 指令被 AT Server 识别,并正确执行,则返回该结果。

    “ 标准中的 V1 模式下响应结果代码的方式。V0 模式下返回 0\r

  • \r\nERROR\r\n

    “ 标准中的 V1 模式下响应结果代码的方式。V0 模式下返回 4\r

数据模式与指令模式

在收到 +++,并且接下来 1s 内未收到其他数据的话,将从数据模式切换到指令模式。

数据模式,可以透传数据,client 发什么,server 就原封不动发出去。指令模式时,AT Server 需要解析 AT 指令,并作出响应。

参考

以上摘自:https://zhuanlan.zhihu.com/p/343952644

AT指令在Windows系统中的运用?

我们可以在“开始→运行”中输入AT命令,下面就来看看AT命令的一些实例分析。

1、定时关机

命令:at 21:00 ShutDown –S –T30

该命令运行后,到了21:00点,电脑会出现“系统关机”对话框,并默认30秒延时自动关机。

2、定时提醒

命令:at 12:00 Net Send 10.10.36.122与朋友约会的时间到了,快点准备出发吧!

其中Net Send是Windows内部程序,可以发送消息到网络上的其他用户、计算机。10.10.36.122是本机电脑的IP地址。这个功能在Windows中也称作“信使服务”。

3、自动运行批处理文件

如果公司的数据佷重要,要求在指定的日期/时间进行备份,那么运行:

命令:at 1:00AM /Every:Saturday My_BackUp.bat

这样,在每个Saturday(周六)的早上1:00点,电脑定时启动My_BackUp.bat批处理文件。My_BackUp.bat是一个你自行编制的批处理文件,它包含能对系统进行数据完全备份的多条命令。

4、取消已经安排的计划

命令:at 5 /Delete

有时候,你已经安排好的计划可能临时变动,这样你可以及时地用上述命令删除该计划(5为指派给已计划命令的标识编号),当然,删除该计划后,可以重新安排。

以上摘自:https://zhidao.baidu.com/question/60812618.html