AT指令

AT指令

從終端設備向終端适配器或數據電路終端設備
AT指令是應用于終端設備與PC應用之間的連接與通信的指令。AT 即Attention。每個AT命令行中隻能包含一條AT指令;對于AT指令的發送,除AT兩個字符外,最多可以接收1056個字符的長度(包括最後的空字符)。
  • 中文名:AT指令
  • 目的:連接與通信
  • 特點:最多可以接收1056個字符的長度
  • 應用:終端設備與PC應用之間

簡介

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指令是以AT作首, 字符結束的字符串,AT指令的響應數據包在中。每個指令執行成功與否都有相應的返回。其他的一些非預期的信息(如有人撥号進來、線路無信号等),模塊将有對應的一些信息提示,接收端可做相應的處理。

示例:CDMA modem DTE

AT< CR>

< LF> OK < LF>

ATTEST< CR>

< CR> ERROR < LF>

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

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

“ERROR”字符串返回。

相關的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為例。

計算機與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”指令即可讀出短消息内容。

PDU數據格式分析

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

PDU字符串為:

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

91—10010001

BIT No.

7

6

5

4

3

2

1

0

Name

1

數值類型

号碼鑒别

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

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

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

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

⑷11—文件頭字節。

11&h=00010001&b

BIT No.

7

6

5

4

3

2

1

0

Name

TP-RP

TP-UDHI

TP-SPR

TP-VFP

TP-RD

TP-MTI

value

0

0

0

1

0

0

0

1

應答路徑—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—被叫号碼,經過了位移處理,實際号碼為“1368099”。

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

⑼00—協議标識TP-PID(TP-Protocol-Identifier)

BIT No.

7

6

5

4

3

2

1

0

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.

7

6

5

4

3

2

1

0

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”

短消息編碼

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

短消息的發送與接收案例

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

(1)設置短消息中心

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

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

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

> test ^z ;

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

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

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

AT+CMGR=8

返回信息如下:

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

注意事項

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

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

相關詞條

相關搜索

其它詞條