AT指令集

  • Post author:
  • Post category:其他





前言

在前面两篇文章中已经写完了关于串口通信方面的知识以及完成了串口通信,接下来看了AT操作。今天大概看完了AT指令,写一篇博客记录一下。



提示:以下是本篇文章正文内容,下面案例可供参考



一、什么是AT指令?

AT指令集是用于从终端设备(Terminal Equipment,TE)或数据终端设备(Data Terminal Equipment,DTE)向终端适配器(Terminal Adapter,TA)或数据电路终端设备(Data Circuit Terminal Equipment,DCE)发送的。其对所传输的数据包大小有定义:即对于AT指令的发送,除AT两个字符外,最多可以接收1056个字符的长度(包括最后的空字符)。每个AT命令行中只能包含一条AT指令;对于由终端设备主动向PC端报告的URC指示或者response响应,也要求一行最多有一个,不允许上报的一行中有多条指示或者响应。AT指令以回车作为结尾,响应或上报以回车换行为结尾。



二、AT指令集



1、busybox

在学习AT指令的时候,使用的的是树莓派4G模块。然后安装了一个busybox软件,busybox是一个集成了一百多个最常用的Linux命令和工具的软件。下面我们来看看怎么使用。

busybox microcom -s 115200 ttyUSB2


-s指定一下波特率和使用的串口。(串口必须是4G模块,不然不会回复消息给你)

在这里插入图片描述

可以看到每发送一个AT就会回复一个OK,我们就可以利用不同指令结合设备的返回码来与设备进行通信。下面来介绍一下AT指令集的用法。



2、 AT指令集用法

AT指令用法

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

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

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

AT指令是以AT作首, 字符结束的字符串,AT指令的响应数据包在 中。每个指令执行成功与否都有相应的返回。其他的一些非预期的信息(如有人拨号进来、线路无信号等),模块将有对应的一些信息提示,接收端可做相应的处理。

如上busybox软件发送AT指令,我们发送AT时,实际上发送给设备的是的是:

AT<CR>

即AT\r。“\r” 是指回到行首,但不会换到下一行,而当我们收到OK时,实际上是收到了:

<CR><LF><OK><CR><LF>

也就是 “\r\nOK\r\n”

” /r/n ” 合起来才是Windows下的Enter,即回到行首并新建一行。从上面的图中可以看到,OK的确换到了新的一行,当我们在敲AT时,又是在新的一行。

如果AT指令执行成功,”OK”字符串返回;

如果AT 指令语法错误或AT 指令执行失败,

“ERROR”字符串返回。



基本语法

这些AT命令的格式为

 AT<x><n> 或 AT&



版权声明:本文为persist_with原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。