天天看點

什麼是AT指令集

AT指令介紹及用法

AT 指令

AT 即Attention,AT指令集是從終端裝置(Terminal Equipment,TE)或資料終端裝置(Data Terminal Equipment,DTE)向終端擴充卡(Terminal Adapter, TA)或資料電路終端裝置(Data Circuit Terminal Equipment,DCE)發送的。通過TA,TE發送AT指令來控制移動台(Mobile Station,MS)的功能,與GSM 網絡業務進行互動。使用者可以通過AT指令進行呼叫、短信、電話本、資料業務、傳真等方面的控制。90年代初,AT指令僅被用于Modem操作。沒有控制行動電話文本消息的先例,隻開發了一種叫SMS BlockMode的協定,通過終端裝置(TE)或電腦來完全控制

SMS。幾年後,主要的行動電話生産廠商諾基亞、愛立信、摩托羅拉和HP共同為GSM 研制了一整套AT指令,其中就包括對SMS的控制。AT指令在此基礎上演化并被加入GSM 07.05标準以及現在的GSM07.07标準,完全标準化和比較健全的标準。如:對SMS的控制共有3種實作途徑:最初的Block Mode;基于AT指令的Text Mode;基于AT指令的PDU Mode。到現在PDU Mode已經取代BlockMode,後者逐漸淡出。GSM 子產品與計算機之間的通信協定是一些AT指令

集,AT指令是以AT作首, 字元結束的字元串,AT指令的響應資料包在 中。每個指令執行成功與否都有相應的傳回。其他的一些非預期的資訊(如有人撥号進來、線路無信号等),子產品将有對應的一些資訊提示,接收端可做相應的處理。

示例:CDMA modem DTE

AT< CR>

< LF> OK < LF>

ATTEST< CR>

< CR> ERROR < LF>

如果AT指令執行成功,“OK”字元串傳回;

如果AT 指令文法錯誤或AT 指令執行失敗,

“ERROR”字元串傳回。

1.相關的GSM AT指令 

與SMS有關的GSM AT指令(from GSM07.05)如表1所示: 

表1 相關的GSM AT指令

AT 指令 

功 能 

AT+CMGC 

Send an SMS command(發出一條短消息指令) 

AT+CMGD 

Delete SMS message(删除SIM卡記憶體的短消息) 

AT+CMGF 

Select SMS message formate(選擇短消息資訊格式:0-PDU;1-文本) 

AT+CMGL 

List SMS message from preferred store(列出SIM卡中的短消息PDU/text: 0/“REC UNREAD”-未讀,1/“REC READ”-已讀,2/“STO UNSENT”-待發,3/“STO SENT”-已發,4/“ALL”-全部的) 

AT+CMGR 

Read SMS message(讀短消息) 

AT+CMGS 

Send SMS message(發送短消息) 

AT+CMGW 

Write SMS message to memory(向SIM記憶體中寫入待發的短消息) 

AT+CMSS 

Send SMS message from storage(從SIN|M記憶體中發送短消息) 

AT+CNMI 

New SMS message indications(顯示新收到的短消息) 

AT+CPMS 

Preferred SMS message storage(選擇短消息記憶體) 

AT+CSCA 

SMS service center address(短消息中心位址) 

AT+CSCB 

Select cell broadcast messages(選擇蜂窩廣播消息) 

AT+CSMP 

Set SMS text mode parameters(設定短消息文本模式參數) 

AT+CSMS 

Select Message Service(選擇短消息服務) 

對短消息的控制共有三種模式: 

Block Mode 

基于AT指令的PDU Mode 

基于AT指令的Text Mode 

使用Block模式需要手機生産廠家提供驅動支援,目前,PDU Mode 已取代 Block Mode, Text Mode比較簡單,本文重點介紹模式PDU Mode,以西門子公司的産品TC35T為例。 

2.計算機與TC35T的通信 

(1)RS232序列槽連接配接 

由于TC35T自帶RS232序列槽線,故隻需将其連接配接到計算機序列槽即可。打開超級終端,選擇相應的序列槽,将端口參數設定為:速率—4800、奇偶校驗位—無、資料位—8、停止位—1、流量控制—硬體。 

(2)連接配接測試 

輸入“AT”然後回車,螢幕上傳回“OK”表明計算機與TC35T已連接配接成功,TC35T能夠正常工作。這時就可以測試各類AT指令。 

當測試指令“AT+CMGS=?”時,如果傳回“OK”标明TC35T支援該指令。該指令的完整文法如下: 

如果此時TC35T處于PDU Mode(即“AT+CMGF?”傳回“0”) 

AT+CMGS=PDU is given<^Z/ESC> 

如果短消息發送成功,則傳回“OK”,并顯示資訊号: 

+CMGS: [,] 

如果短消息發送失敗,則傳回如下資訊号: 

+CMS ERROR: 

如果此時TC35T處于Text Mode(即“AT+CMGF?”傳回“1”) 

AT+CMGS=[,toda]text is entered<^Z/ESC> 

如果短消息發送成功,則傳回“OK”,并顯示資訊号: 

+CMGS: [,] 

如果短消息發送失敗,則傳回如下資訊号: 

+CMS ERROR: 

另外,由于使用的是TC35T,當有新的短消息到來時,需要TC35T産生提示,使用指令“AT+CNMI”。該指令的完整文法如下: 

AT+CNMI=[][,][,][,][,] 

如果有新的短消息來到,則TC35T将自動傳回下列提示: 

+CMTI: “SM”, 

此時讀出,然後用“AT+CMGR”指令即可讀出短消息内容。 

3.PDU資料格式分析: 

例如,我們要将字元“Hi”字元發送到目的地“13677328099” 

PDU字元串為: 

08 91 683108701305F0 11 00 0D 91 3176378290F9 00 00 00 02 C834 

⑴08—短資訊中心位址長度。指(91)+(683108701305F0)的長度。 

⑵91—短資訊中心号碼類型。91是TON/NPI遵守International/E.164标準,指在号碼前需加‘+’号;此外還有其它數值,但91最常用。 

91—10010001 

BIT No. 

Name 

數值類型 

号碼鑒别 

數值類型(Type of Number):000—未知,001—國際,010—國内,111—留作擴充; 

号碼鑒别(Numbering plan identification):0000—未知,0001—ISDN/電話号碼(E.164/E.163),1111—留作擴充; 

⑶683108701305F0—短資訊中心号碼。由于位置上略有處理,實際号碼應為:8613800731500(字母F是指長度減1)。這需要根據不同的地域作相應的修改。 

⑴、⑵、⑶通稱短消息中心位址(Address of the SMSC)。 

⑷11—檔案頭位元組。 

11&h=00010001&b 

BIT No. 

Name 

TP-RP 

TP-UDHI 

TP-SPR 

TP-VFP 

TP-RD 

TP-MTI 

value 

應答路徑—TP-RP(TP-Reply-Path):0—不設定; 1—設定 

使用者資料頭辨別—TP-UDHL(TP-User-Data-Header-Indicator):0—不含任何頭資訊; 1—含頭資訊 

狀态報告要求—TP-SPR(TP-Status-Report-Request):0—需要報告; 1—不需要報告 

有效期格式—TP-VPF(TP-Validity-Period-Format):00—不提供(Not present); 10—整型(标準);01—預留; 11—提供8位位元組的一半(Semi-Octet Represented) 

拒絕複制—TP-RD(TP-Reject-Duplicates):0—接受複制; 1—拒絕複制 

資訊類型提示—TP-MTI(TP-Message-Type-Indicator):00—讀出(Deliver); 01—送出(Submit) 

⑸00—資訊類型(TP-Message-Reference) 

⑹0B—被叫号碼長度。 

⑺91—被叫号碼類型(同⑵)。 

⑻3176378290F9—被叫号碼,經過了位移處理,實際号碼為“13677328099”。 

⑹、⑺、⑻通稱目的位址(TP-Destination-Address)。 

⑼00—協定辨別TP-PID(TP-Protocol-Identifier) 

BIT No. 

Bit No.7與Bit No.6: 00—如下面定義的配置設定Bit No.0—Bit No.5;01—參見GSM03.40協定辨別完全定義;10—預留;11—為服務中心(SC)特殊用途配置設定Bit No.0—Bit No.5。 

一般将這兩位置為00。 

Bit No.5:0—不使用遠端網絡,隻是短消息裝置之間的協定;1—使用遠端網絡。 

Bit No.0—Bits No.4:00000—隐含;00001—電傳;00010—group 3 telefax;00100—語音;00101—歐洲無線資訊系統(ERMES);00110—國内系統;10001—任何基于X.400的公用資訊處理系統;10010—Email。 

⑽00—資料編碼方案TP-DCS(TP-Data-Coding-Scheme) 

BIT No. 

Bit No.7與Bit No.6 :一般設定為00;Bit No.5:0—文本未壓縮,1—文本用GSM标準壓縮算法壓縮;Bit No.4:0—表示Bit No.1、Bit No.0為保留位,不含資訊類型資訊,1—表示Bit No.1、Bit No.0含有資訊類型資訊;Bit No.3與Bit No.2:00—預設的字母表,01—8bit,10—USC2(16bit),11—預留;Bit No.1與Bit No.0:00—Class 0,01—Class 1,10—Class 2(SIM卡特定資訊),11—Class 3。 

⑾00—有效期TP-VP(TP-Valid-Period) 

VP value(&h) 

相應的有效期 

00 to 8F 

(VP+1)*5 分鐘 

90 to A7 

12小時+(VP-143)*30分鐘 

A8 to C4 

(VP-166)*1天 

C5 to FF 

(VP-192)*1 周 

⑿02—使用者資料長度TP-UDL(TP-User-Data-Length) 

⒀C834—使用者資料TP-UD(TP-User-Data)“Hi” 

4.短消息編碼 

設需要發送的短消息内容為“Hi”,使用的GSM字元集為7位編碼。首先将字元轉換為7位的二進制,然後,将後面字元的位調用到前面,補齊前面的差别。例如:H翻譯成1001000,i翻譯成1101001,顯然H的二進制編碼不足八位,那麼就将i的最後一位補足到H的前面。那麼就成了11001000(C8),i剩下六位110100,前面再補兩個0,變成00110100(34),于是“Hi”就變成了兩個八進制數 C8 34。 

5.短消息的發送與接收案例 

鑒于TC35(T)支援TEXT格式,我們在試驗中主要測試該格式。 

(1)設定短消息中心 

AT+CSCA="+8613800731500"(短消息中心); 

(2)設定短消息發送格式 

AT+CMGF=1 (1-TEXT; 0-PDU); 

(3)發送短消息(短消息内容為“test”) 

AT+CMGS="13508485560"(目的位址) 

> test ^z ; 

(4)設定短消息到達自動提示: 設定短消息到達提示當短消息被接收,将擷取指令: +CMTI:"SM",INDEX(資訊存儲位置) 

AT+CNMI=1,1,0,0,1(); 

(5)擷取短消息内容(Once more),假設INDEX=8。 

AT+CMGR=8 

傳回資訊如下: 

+CMGR: "REC UNREAD","+8613508485560",,"01/07/16,15:37:28+32",Once more 

6.注意事項 

(1)短消息中心一般不會改動,如果短消息中心号碼改動,在使用“AT+CSCA”語句時,記住TC35要重新啟動,否則TC35不能正常工作(TC35T不存在此問題)。 

(2)某些SIM卡帶有密碼,啟動時需要輸入密碼。

AT指令速查表

一、一般指令

AT+CGMI

 給出子產品廠商的辨別。

AT+CGMM

 獲得子產品辨別。這個指令用來得到支援的頻帶(GSM900,DCS1800或PCS1900)。當子產品有多頻帶時,回應可能是不同頻帶的結合。

AT+CGMR

 獲得改訂的軟體版本。

AT+CGSN

 獲得GSM子產品的IMEI(國際移動裝置辨別)序列号。

AT+CSCS

 選擇TE特征設定。這個指令報告TE用的是哪個狀态設定上的ME。ME于是可以轉換每一個輸入的或顯示的字母。這個是用來發送、讀取或者撰寫短信。

AT+WPCS

 設定電話簿狀态。這個特殊的指令報告通過TE電話簿所用的狀态的ME。ME于是可以轉換每一個輸入的或者顯示的字元串字母。這個用來讀或者寫電話簿的入口。

AT+CIMI

 獲得IMSI。這指令用來讀取或者識别SIM卡的IMSI(國際移動簽署者辨別)。在讀取IMSI之前應該先輸入PIN(如果需要PIN的話)。

AT+CCID

 獲得SIM卡的辨別。這個指令使子產品讀取SIM卡上的EF-CCID檔案。

AT+GCAP

 獲得能力表。(支援的功能)

A/ 

 重複上次指令。隻有A/指令不能重複。這指令重複前一個執行的指令。

AT+CPOF

 關機。這個特殊的指令停止GSM軟體堆棧和硬體層。指令AT+CFUN=0的功能與+CPOF相同。

AT+CFUN

 設定電話機能。這個指令選擇移動站點的機能水準。

AT+CPAS

 傳回移動裝置的活動狀态。

AT+CMEE

 報告移動裝置的錯誤。這個指令決定允許或不允許用結果碼“+CMEERROR:”或者“+CMSERROR:”代替簡單的“ERROR”。

AT+CKPD

 小鍵盤控制。仿真ME小鍵盤執行指令。

AT+CCLK

 時鐘管理。這個指令用來設定或者獲得ME真實時鐘的目前日期和時間。

AT+CALA

 警報管理。這個指令用來設定在ME中的警報日期/時間。(鬧鈴)

AT+CRMP

 鈴聲旋律播放。這個指令在子產品的蜂鳴器上播放一段旋律。有兩種旋律可用:到來語音、資料或傳真呼叫旋律和到來短信聲音。

AT+CRSL

 設定或獲得到來的電話鈴聲的聲音級别。

二、呼叫控制指令

ATD

 撥号指令。這個指令用來設定通話、資料或傳真呼叫。

ATH

 挂機指令。

ATA

 接電話。

AT+CEER

 擴充錯誤報告。這個指令給出當上一次通話設定失敗後中斷通話的原因。

AT+VTD

 給使用者提供應用GSM網絡發送DTMF(雙音多頻)雙音頻。這個指令用來定義雙音頻的長度(預設值是300毫秒)。

AT+VTS

 給使用者提供應用GSM網絡發送DTMF雙音頻。這個指令允許傳送雙音頻。

ATDL

 重撥上次電話号碼。

AT%Dn

 資料終端就緒(DTR)時自動撥号。

ATS0

 自動應答。

AT+CICB

 來電信差。

AT+CSNS

 單一編号方案。

AT+VGR

AT+VGT

 增益控制。這個指令應用于調節喇叭的接收增益和麥克風的傳輸增益。

AT+CMUT

 麥克風靜音控制。

AT+SPEAKER

 喇叭/麥克風選擇。這個特殊指令用來選擇喇叭和麥克風。

AT+ECHO

 回音取消。

AT+SIDET

 側音修正。

AT+VIP

 初始化聲音參數。

AT+DUI

 用附加的使用者資訊撥号。

AT+HUI

 用附加的使用者資訊挂機。

AT+RUI

 接收附加使用者資訊。

三、網絡服務指令

AT+CSQ

 信号品質。

AT+COPS

 服務商選擇。

AT+CREG

 網絡注冊。獲得手機的注冊狀态。

AT+WOPN

 讀取操作員名字。

AT+CPOL

 優先操作員清單。

四、安全指令

AT+CPIN

 輸入PIN。

AT+CPIN2

 輸入PIN2。

AT+CPINC

 PIN的剩餘的嘗試号碼。

AT+CLCK

 裝置鎖。

AT+CPWD

 改變密碼。

五、電話簿指令

AT+CPBS

 選擇電話簿記憶存儲。

AT+CPBR

 讀取電話簿表目。

AT+CPBF

 查找電話簿表目。

AT+CPBW

 寫電話簿表目。

AT+CPBP

 電話簿電話查詢。

AT+CPBN

 電話簿移動動作。這個特殊指令使電話簿中的條目前移或後移(按字母順序)

AT+CNUM

 簽署者号碼。

AT+WAIP

 防止在下一次重起時初始化所有的電話簿。

AT+WDCP

 删除呼叫電話号碼。

AT+CSVM

 設定語音郵件号碼。

六、短消息指令

AT+CSMS

 選擇消息服務。支援的服務有GSM-MO、SMS-MT、SMS-CB。

AT+CNMA

 新資訊确認應答。

AT+CPMS

 優先資訊存儲。這個指令定義用來讀寫資訊的存儲區域。

AT+CMGF

 優先資訊格式。執行格式有TEXT方式和PDU方式。

AT+CSAS

 儲存設定。儲存+CSAS和+CSMP的參數。

AT+CRES

 恢複設定。

AT+CSDH

 顯示文本方式的參數。

AT+CNMI

 新資訊訓示。這個指令選擇如何從網絡上接收短資訊。

AT+CMGR

 讀短信。資訊從+CPMS指令設定的存儲器讀取。

AT+CMGL

 列出存儲的資訊。

AT+CMGS

 發送資訊。

AT+CMGW

 寫短資訊并存儲。

AT+CMSS

 從存儲器中發送資訊。

AT+CSMP

 設定文本模式的參數。

AT+CMGD

 删除短資訊。删除一個或多個短資訊。

AT+CSCA

 短信服務中心位址。

AT+CSCB

 選擇單元廣播資訊類型。

AT+WCBM

 單元廣播資訊辨別。

AT+WMSC

 資訊狀态(是否讀過、是否發送等等)修正。

AT+WMGO

 資訊覆寫寫入。

AT+WUSS

 不改變SMS狀态。在執行+CMGR或+CMGL後仍保持UNREAD。

七、追加服務指令

AT+CCFC

 呼叫繼續。

AT+CLCK

 呼叫禁止。

AT+CPWD

 改變追加服務密碼。

AT+CCWA

 呼叫等待。

AT+CLIR

 呼叫線确認限制。

AT+CLIP

 呼叫線确認陳述。

AT+COLP

 聯絡線确認陳述。

AT+CAOC

 費用報告。

AT+CACM

 累計呼叫計量。

AT+CAMM

 累計呼叫計量最大值。

AT+CPUC

 單價和貨币表。

AT+CHLD

 呼叫相關的追加服務。

AT+CLCC

 列出目前的呼叫。

AT+CSSN

 追加服務通知。

AT+CUSD

 無組織的追加服務資料。

AT+CCUG

 關閉的使用者組。

繼續閱讀