AT指令集超詳細解析(內含EC20模塊datasheet)

一. AT指令語法

基本原理

 使用AT指令與串口通信,是一種“禮尚往來”的通信方式,即當控制端輸入一個AT指令後,與之通信的外部設備將會回覆一個結果,就這樣一對一的進行。
以最簡單的AT指令爲例,當串口連接好以後,使用

busybox microcom -s 115200 ttyUSB2

當然,4G模塊接入樹莓派後會模擬出多個模塊,如果選擇的ttyUSB不對可多嘗試記下;進入串口通信模式,當我輸入一個AT後,設備將會回覆一個OK
在這裏插入圖片描述
每輸入一次AT設備都會回覆一個OK,就可以利用不同的指令,結合設備的返回碼來與設備通信。

其實,當我敲下AT 回車後,發送給設備的指令實際是

AT<CR>

也就是 “AT\r”
“\r” 是指回到行首,但不會換到下一行,而當我們收到OK時,實際上是收到了

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

也就是 “\r\nOK\r\n
" /r/n " 合起來纔是Windows下的Enter,即回到行首並新建一行。從上面的圖中可以看到,OK的確換到了新的一行,當我們在敲AT時,又是在新的一行。

  • 基本語法
    這些AT命令的格式爲“ AT<x><n> ”或 “AT&<x><n>,其中以"<x>”爲命令,並且“ <n>"是該命令的參數。 例如“ ATE <n>”,它告訴DCE是否應根據“ <n>”的值將收到的字符回顯到DTE。 “ <n>”是可選,如果缺少默認值,將使用默認值。
  • S參數語法
    這些AT命令的格式爲“ ATS <n> = <m>”,其中“ <n>”是要設置的S寄存器的索引,“ <m>”是要分配給它的值。S參數語法這些AT命令的格式爲“ ATS <n> = <m>”,其中“ <n>”是要設置的S寄存器的索引,“ <m>”是要分配給它的值。

AT指令和響應類型

Test Command AT+<x>=? 此命令返回參數和值範圍的列表由相應的寫命令或內部進程設置
Read Command AT+<x>? 命令返回參數的當前設置值或參數
Write Command AT+<x>=<…> 此命令設置用戶可定義的參數值。
Execution Command AT+<x> 取受UE內部流程影響的被變量參數

二. AT指令集中的幾個重要術語

TE (Terminal Equipment):
終端設備,比如一臺計算機,一部手機,與DTE等價.它是和信息網絡的一端相接的可提供必要功能的設備,這些功能使得用戶可以通過接入協議接入網絡。發送信息,接收信息。

TA(Terminal Adapter)
終端適配器,提供終端適配功能的物理實體,是一種接口設備,與DCE等價。比如SIM300模塊

DCE(Data Communications Equipment)
數據通信設備,它在DTE和傳輸線路之間提供信號變換和編碼功能,並負責建立、保持和釋放鏈路的連接,如Modem。DCE設備通常是與DTE對接,因此針腳的分配相反。其實對於標準的串行端口,通常從外觀就能判斷是DTE還是DCE,DTE是針頭(俗稱公頭),DCE是孔頭(俗稱母頭),這樣兩種接口才能接在一起。

DTE(Data Terminal Equipment)
數據終端設備,具有一定的數據處理能力和數據收發能力的設備。DTE提供或接收數據,例連接到調制解調器上的計算機就是一種DTE。DTE提供或接收數據,連接到網絡中的用戶端機器,主要是計算機和終端設備。與此相對的,在網絡端的連接設備稱爲 DCE ( Date Circuit - terminating Equipment )。DTE與進行信令處理的DCE相連。 它是用戶—網絡接口的用戶端設備,可作爲數據源、目的地或兩者兼而有之。 DTE通過DCE設備(例如,調制解調器)連接到數據網絡,且一般使用DCE產生的時鐘信號。DTE包括像計算機、協議轉換器和多路複用器這樣的設備。

ME Mobile Equipment : 移動設備,比如手機,就屬於ME

MS Mobile Station : 移動臺,在移動中使用的通信站或者手持臺。

三. 一般命令

ATI 顯示產品標識信息

ATI命令用來返回模塊的產品標識信息:
在這裏插入圖片描述
可以看到,我的模塊式移遠的EC20F.,Revision是修訂標識
最大響應時間:300ms

AT+GMI , AT+CGMI 獲取製造商

在這裏插入圖片描述
最大響應時間:300ms

AT+GMM , AT+CGMM 申請TA模型識別

和查型號差不多
在這裏插入圖片描述

AT+GMR , AT+CGMR 請求軟件版本的TA修訂標識

在這裏插入圖片描述
可以發現,最上面的命令包含了這3個命令。
最大響應時間:300ms

AT+GSN , AT+CGSN 獲取模塊IMEI號

在這裏插入圖片描述
IMEI號,即國際移動設備識別碼(International Mobile Equipment Identity,IMEI),通常所說的手機序列號,移動通信設備都會有一個IMEI號,就像身份證。
最大響應時間:300ms

AT&F 將所有當前參數設置爲製造商默認值

例如

AT&F0

最大響應時間:300ms

AT&V 顯示當前配置

在這裏插入圖片描述
最大響應時間:300ms

AT&W 保存設置

將當前參數存儲到用戶定義的配置文件。
下面不標明最大響應時間的,默認300ms

AT&Z 將所有當前參數設置爲用戶定義的配置文件

該命令以非易失性方式將當前AT命令設置恢復到用戶定義的配置文件內存(如果之前已將它們存儲在AT&W中)。 同一命令行上的任何其他AT命令,可能會被忽略。

ATQ 設置結果代碼演示模式

此參數設置確定TA是否將任何結果代碼發送到TE。 信息文字以響應方式傳輸不受此設置影響.

if \<n>=0:
OK
if\<n>=1:
none

<n> :
0 —— TA發送結果代碼
1 —— 結果代碼被禁止而不發送

ATV TA響應格式

該命令確定與AT命令結果代碼一起發送的標題和尾部的內容和信息回覆。
結果代碼,它們的數字等效形式以及每種用法的簡要說明在列表中列出。
例如:
在這裏插入圖片描述
各響應結果對應的數字:

ATV1 ATV0
OK 0
CONNECT 1
RING 2
NO CARRIER 3
ERROR 4
NO DIALTONE 6
BUSY 7
NO ANSWER 8

ATE 設置命令回顯模式

輸入的命令是否能在屏幕打印
例如 ATE0,ATE1
在這裏插入圖片描述

A/

該命令重複上一個AT命令行,“ /”充當行終止符。
在這裏插入圖片描述

ATS3 設置命令行終止符

該命令確定模塊識別的字符以終止傳入的命令行。 它還爲結果代碼和信息文本以及通過ATS4設置的字符值生成。

ATS4 設置響應格式字符

該命令確定模塊爲結果代碼和信息文本生成的字符,以及通過ATS3設置的命令行終止字符。

ATS5 設置命令行編輯字符

該命令確定模塊用來刪除緊靠其前的字符值,AT命令行中的字符(即等於退格鍵)。

AT+CFUN 設置電話功能

  1. AT+CFUN=?
    列出所有功能對應序號
  2. AT+CFUN?
    查詢當前設置的電話功能,返回的是fun的值
  3. AT+CFUN=<fun>[,<rst>]
    設置電話功能

<fun>
0 —— 最低功能
1 —— 完整功能(默認)
4 —— 禁止ME發送和接收RF信號

\rst>
0 —— 將ME設置爲功能級別之前,請勿重置ME。當未給出時,這是默認設置。
1 —— 重置ME。 復位後,該設備可以正常使用。 該值僅用於 = 1

AT+CMEE 錯誤訊息格式

  1. AT+CMEE=?
    列出支持的功能
  2. AT+CMEE?
    查看當前設置
  3. AT+CMEE=<n>
    設置錯誤訊息格式

<n>
0 —— 禁用結果代碼
1 —— 啓用結果代碼並使用數值
2 —— 啓用結果代碼並使用詳細值
這個設置比較有必要,當發生錯誤時如果光知道錯誤號還要去查詢,具體看下圖:
在這裏插入圖片描述

AT+CSCS 選擇字符集

AT指令集支持三種字符集,分別是GSM,IPA與UCS2字符集.

AT+CSCS=<cheset>

在這裏插入圖片描述

四. 串口控制命令

AT&C 設置數據載波檢測模式

在這裏插入圖片描述
1 表示總是開啓數據載波檢測功能
0 表示僅在有數據載體的情況下才打開

AT&D 設置DTR功能模式

該命令確定在數據模式期間,如果DTR線路從低電平更改爲高電平,UE將如何響應。

AT&D[\value>]

<value>
0 —— TA忽略DTR上的狀態
1 —— DTR上的低→高:在保持連接的呼叫的同時切換到命令模式。
2 —— DTR上的低→高:斷開數據調用,然後更改爲命令模式。 當DTR處於高級別時,自動應答功能已禁用。

AT+IFC 設置TE-TA本地數據流控制

  1. AT+IFC=?
    列出支持的設置
  2. AT+IFC?
    查看當前設置
  3. AT+IFC=<dce_by_dte>,<dte_by_dce>
    設置

<dce_by_dte> 指定TE從TA接收數據時將使用的方法
0 —— 無
2 —— RTS流量控制

<dte_by_dce> 指定TA從TE接收數據時將使用的方法
0 —— 無
2 —— CTS流量控制

在這裏插入圖片描述

AT+ICF 設置TE-TA控制字符框

該命令確定TA從TE接收到的串行接口字符成幀格式和奇偶校驗。

  1. AT+ICF=?
    查詢支持的設置
  2. AT+ICF?
    查看當前設置
  3. AT+ICF=[<format>,[<parity>]]
    設置

<format>
3 —— 8 數據 0 奇偶校驗 1 停止

<parity>
0 —— 奇數
1 —— 偶數

AT+IPR 設置波特率

我前面關於串口通信的文章有提到過波特率,具體就不在解釋了
在這裏插入圖片描述
在這裏插入圖片描述

五. 狀態控制命令

AT+CPAS 移動設備活動狀態

  1. AT+CPAS=?
    查看支持的狀態
  2. AT+CPAS
    TA返回ME的活動狀態<pa>

<pa>
0 —— 準備
3 —— 響
4 —— 正在通話或保持通話
在這裏插入圖片描述
在這裏插入圖片描述
AT+CLCC是列出當前呼叫列表

更多狀態控制命令請參考ET20的dataeet,後面會給出下載地址。

六. EC20 4G模塊SIM卡相關命令

AT+CIMI 獲取國際移動用戶識別碼

在這裏插入圖片描述

AT+CPIN 查詢SIM卡狀態

  1. AT+CPIN?
    回覆 +CPIN: <code>
  2. AT+CPIN=<pin>[,<new pin>]
    TA存儲密碼,例如(U)SIM PIN,(U)SIM PUK等,在操作之前這是必需的。 如果PIN碼是輸入兩次,TA將自動重複PIN。 如果沒有PIN請求待處理,未執行任何操作且發生了錯誤消息+ CME ERROR返回給TE。
    如果所需的PIN是(U)SIM PUK或(U)SIM PUK2,則第二針是必需的。 第二個銷釘用於更換(U)SIM中的舊針腳。

<code>
READY MT —— 不需要任何密碼
SIM PIN MT —— 正在等待提供(U)SIM PIN
SIM PUK MT —— 正在等待(U)SIM PUK
SIM PIN2 MT —— 正在等待提供(U)SIM PIN2
SIM PUK2 MT —— 正在等待(U)SIM PUK2被給予
PH-NET PIN MT —— 正在等待提供網絡個性化密碼
PH-NET PUK MT —— 正在等待提供網絡個性化解鎖密碼
PH-NETSUB PIN MT —— 正在等待提供網絡子集個性化密碼
PH-NETSUB PUK MT —— 正在等待提供網絡子集個性化解鎖密碼
PH-SP PIN MT —— 正在等待提供服務提供商的個性化密碼
PH-SP PUK MT —— 正在等待提供服務提供商個性化解鎖密碼
PH-CORP PIN MT —— 正在等待提供公司個性化密碼
PH-CORP PUK MT —— 正在等待公司個性化解鎖密碼

<pin>
字符串類型。 密碼。 如果請求的密碼是PUK,例如(U)SIM PUK1,
PH-FSIM PUK或其他密碼,然後必須在後跟。
<new pin>
字符串類型。 如果請求的代碼是PUK,則需要新密碼

在這裏插入圖片描述

AT+CLCK 設備鎖

詳細用法見datasheet第61頁。

AT+CPWD 修改密碼

在這裏插入圖片描述

AT+CCID , AT+QCCID 顯示SIM的CCID號

在這裏插入圖片描述
因爲其他命令基本上用不上,所以就不一一列舉

七. 網絡服務命令

AT+COPS 操作員選擇

該命令可用於查看運營商的FDD-LTE網絡,可用於查看SIM的註冊情況

  1. AT+COPS=?
    返回支持的stat,運營商的長名稱,短名稱,FDD-LTE以及Act
  2. AT+COPS?
    返回當前SIM卡的相關信息
    格式如下:
    +COPS: <mode>[,<format>[,<oper>][,<Act>]]
    下面來看這些參數都對應了什麼內容:

<stat>
0 —— 未知
1 —— 位操作員可用
2 —— 當前操作員
3 —— 禁止操作員

<oper>
符合<mode>格式的運算符

<mode>
0 —— 自動模式。 <oper>字段被忽略
1 —— 手動操作員選擇。 <oper>字段應存在,並且可選
2 —— 手動從網絡註銷
3 —— 僅設置<format>(對於AT + COPS?Read Command),不要嘗試註冊/取消註冊(<oper>和<Act>字段將被忽略)。 該值在讀取命令的響應中無效。
4 —— 手動/自動選擇。 將顯示|字段。 如果手動選擇失敗,進入自動模式(<mode> = 0)

<format>
0 —— 長格式字母數字<oper>,最長16個字符
1 —— 短格式字母數字<oper>
2 —— 數字<oper>。 GSM位置區域識別號碼

<Act>
選擇了訪問技術。 值3、4、5、6僅在讀取響應中出現
MS處於數據服務狀態且不適用於AT + COPS寫入時的命令
0 —— GSM
2 —— UTRAN
3 —— GSM W/EGPRS
4 —— UTRAN W/HSDPA
5 —— UTRAN W/HSUPA
6 —— UTRAN W/HSDPA and HSUPA
7 —— E-UTRAN
100 ——CDMA
在這裏插入圖片描述

AT+CREG 網絡註冊狀態

該命令返回兩個參數
+CREG: <n>,<stat>

<n>
0禁 —— 用未經請求的網絡註冊結果代碼
1 —— 啓用未經請求的網絡註冊結果代碼+ CREG:<stat>
2 —— 啓用帶有位置信息的網絡註冊未經請求的結果代碼

<stat>
0 —— 未註冊。 我目前不在搜索新的運營商來註冊
1 —— 已註冊,本地網絡
2 —— 未註冊,但ME當前正在搜索新的運營商以註冊
3 —— 註冊被拒絕
4 —— 未知
5 —— 已註冊,漫遊網絡(外地網絡)
stat爲1,5 SIM都可用。
在這裏插入圖片描述

AT+CSQ 查看信號強度

在這裏插入圖片描述
第一個返回值爲信號強度,9 ~ 31 以內越高則信號越強,第二個參數爲通道誤碼率(百分比),99表示位置,如果返回99,99則表示SIM不可用,應該檢查下天線。
插EC20 4G模塊的天線時,要注意天線的位置,一個是main口,一個是div口,main主要負責就收發送,而div口只能接受,應將天線插到main口。

這就是一些AT較爲重要的命令,還有收撥電話與收發短信的指令將在下一篇博客總結。

下載鏈接:https://pan.baidu.com/s/1M6itx4z-Sd8Xjg0WDXmbIQ
提取碼:8gd6

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章