隨著科技的飛速發(fā)展和人民生活水平的不斷提高,手機(jī)的普及率越來越高,更新也越來越快,價格也越來越便宜。因為手機(jī)工作的無線網(wǎng)絡(luò)覆蓋范圍廣,在信息傳遞方面性能穩(wěn)定、可靠,所以把手機(jī)作為信息傳遞的載體,與單片機(jī)結(jié)合起來構(gòu)成應(yīng)用系統(tǒng)有著強(qiáng)大的生命力和廣闊的應(yīng)用空間,特別是在遠(yuǎn)程數(shù)據(jù)傳輸、遠(yuǎn)程監(jiān)控等領(lǐng)域更是受到電子設(shè)計應(yīng)用工程師的關(guān)注。一些專業(yè)刊物也介紹了一些有關(guān)這方面的文章,然而由于手機(jī)的控制指令復(fù)雜,數(shù)據(jù)格式繁瑣,工程技術(shù)人員在進(jìn)行單片機(jī)與手機(jī)的硬軟件接口設(shè)計時經(jīng)常會遇到很多困難,有時還無資料可查。筆者在完成一個項目的開發(fā)過程中,針對幾種手機(jī)進(jìn)行了大量的測試和實驗,在此基礎(chǔ)上歸納出一些帶規(guī)律性的結(jié)論,對此結(jié)論,工程設(shè)計人員可拿來即用,大大縮短研發(fā)周期,現(xiàn)在把它公布出來,愿與廣大電子設(shè)計人員共享。
1 硬件接口技術(shù)方面
目前市場上流行的大部分手機(jī)幾乎都具有數(shù)據(jù)引出口,并基本上都支持與GsM短信息相關(guān)的AT控制指令(GSM-SMS-AT指令),手機(jī)通過數(shù)據(jù)口以串行方式接收指令并向外輸出數(shù)據(jù)。理論上講,在數(shù)據(jù)口中找出RxD、TxD和GND引腳與單片機(jī)的串口對應(yīng)連接即完成了硬件接口。然而,實際上由于不同品牌,不同型號手機(jī)的RxD、TxD和GND引腳并非一致,找查這三根線有時也非易事;況且手機(jī)數(shù)據(jù)口的電平既不是RS232電平,也不是TTL電平,與由5V供電的單片機(jī)串口還不能直接連接。最簡單可靠的方法是使用手機(jī)的數(shù)據(jù)線建立單片機(jī)與手機(jī)的硬件連接。手機(jī)數(shù)據(jù)線是專為連接PC機(jī)9針串口而設(shè)計的,信號電平為標(biāo)準(zhǔn)的RS232電平,只要單片機(jī)的串口也轉(zhuǎn)換為Rs 2 3 2電平,就可方便連接。9針串口引腳定義是固定的,即2腳為TxD(手機(jī)發(fā)送),3腳為RxD(手機(jī)接收)、5腳為GND。這樣,無論什么型號的手機(jī)與單片機(jī)的連接就成了固定連接,不需要知道手機(jī)數(shù)據(jù)口信號的具體定義,二者通過數(shù)據(jù)線的連接電路如圖1所示。
需要注意的是:不同手機(jī)數(shù)據(jù)線內(nèi)部電平轉(zhuǎn)換芯片的供電方式是不同的,有的是通過手機(jī)直接供電;有的是通過竊取PC機(jī)串口某些引腳(通常為4、6、7、8引腳)的電流經(jīng)內(nèi)部整流濾波穩(wěn)壓后提供。判斷的方法是將數(shù)據(jù)線一端插到手機(jī)數(shù)據(jù)口,測量另一端2腳與5腳之間的電壓,如果有一7V左右的電壓,則為前者,如果測不出電壓,則為后者,對于后者則需要單片機(jī)為4、6、7、8引腳任意一引腳提供+5V電壓即可,如圖1中虛線所示。
2 軟件接口技術(shù)及控制原理
單片機(jī)與手機(jī)的軟件接口其實就是單片機(jī)通過與GSM短信息有關(guān)的AT指令控制手機(jī)的控制技術(shù),如讀取手機(jī)的短消息內(nèi)容,刪除短消息內(nèi)容,列出手機(jī)中還未讀的短消息等。關(guān)于AT指令的功能描述見參考文獻(xiàn)[1,2]的文章內(nèi)容,此處不再贅述。然而,執(zhí)行一條指令,也并非某些資料中介紹得那么簡單。事實上,指令的執(zhí)行過程需要單片機(jī)與手機(jī)交互應(yīng)答完成,每一次發(fā)送或接收的字節(jié)數(shù)有嚴(yán)格的規(guī)定,二者必須依據(jù)這些規(guī)定實現(xiàn)數(shù)據(jù)交換,否則,通信就是失敗的。筆者經(jīng)過對幾種手機(jī)反復(fù)測試,總結(jié)出來一些規(guī)律,如表1所列。
對幾個問題說明如下。
①所有AT指令的指令符號、常數(shù)、PDu數(shù)據(jù)包等都是以ASCII編碼形式傳送的,比如“A”的ASCII編碼為41H,“T”的AscII編碼為54H,數(shù)字“0,,的AsCⅡ編碼為30H等。
②單片機(jī)控制手機(jī)工作,必須把手機(jī)的短信息工作模式設(shè)置為PDu格式,即通過指令A(yù)T+cMGF=O完成。
③單片機(jī)向手機(jī)發(fā)送每一條指令后,必須以回車符作為該條指令的結(jié)束,回車的ASCII編碼為0DH。例如,單片機(jī)向手機(jī)發(fā)送“AT+CMGF=0”這條指令,其ASCII編碼序列為“41H、54H、2BH、42H、4DH、47H、46H、3DH、30H、0DH”,最后一個字節(jié)0DH就是回車符,表示該條指令結(jié)束,如果沒有這個回車符,手機(jī)將不識別這條指令。
④當(dāng)手機(jī)接收到一條完整的AT指令后,手機(jī)并不立即執(zhí)行這條指令,而是先把剛才接收到的AT指令的全部ASCII編碼序列全部反發(fā)送出來(含0DH),然后發(fā)送一個回車符和換行符的ASCII編碼,即0DH和0AH,最后執(zhí)行該條指令。
⑤手機(jī)向單片機(jī)傳送短信息內(nèi)容時,其PDu數(shù)據(jù)包的內(nèi)容是以十六進(jìn)制表示的數(shù)據(jù),但并不是直接向單片機(jī)傳遞十六進(jìn)制數(shù)據(jù),而仍然是把每一位十六進(jìn)制數(shù)以AscII編碼來發(fā)送。這樣,二個字節(jié)的十六進(jìn)制數(shù)就變成4字節(jié)的ASCII碼。但是,PDU數(shù)據(jù)包中的數(shù)據(jù)字節(jié)長度部分仍然是實際字節(jié)長度,而不是變成AscII碼的字節(jié)長度,這在編程時應(yīng)特別注意,否則,接收的數(shù)據(jù)就不完整。單片機(jī)接收到PDU數(shù)據(jù)包數(shù)據(jù)后,必須將其恢復(fù)成十六進(jìn)制數(shù)據(jù),其算法如下:設(shè)a為接收的ASCII碼,b為轉(zhuǎn)換后的十六進(jìn)制數(shù)。如果a<39H,則b=a-30H;如果a>39H,則b=a-30H-07H,最后把前后兩個數(shù)合并為一個字節(jié)。
⑥手機(jī)向單片機(jī)應(yīng)答PDU數(shù)據(jù)包的字節(jié)數(shù)不包括前9字節(jié)數(shù)據(jù)(短信服務(wù)中心地址),但向單片機(jī)傳送PDU數(shù)據(jù)包時,包括這9個字節(jié)的數(shù)據(jù)。例如,如果手機(jī)應(yīng)答的PDU數(shù)據(jù)長度為50,而實際向單片機(jī)傳送的十六進(jìn)制數(shù)據(jù)為59字節(jié),ASCII碼為2×59字節(jié),所以,單片機(jī)必須按2×59字節(jié)接收PDU數(shù)據(jù)。
3 應(yīng)用實例
筆者利用上述原理和接口技術(shù)開發(fā)了一個項目:高速公路顯示導(dǎo)引系統(tǒng)。安裝在高速公路上的LED顯示屏實時顯示前方路段車輛通行態(tài)勢和天氣氣候情況,提醒并引導(dǎo)駕駛?cè)藛T,正確駕駛。該系統(tǒng)的使用一定程度上消除了許多交通事故隱患,從而保障了道路的暢通和人民生命財產(chǎn)的安全。該系統(tǒng)由控制中心和若干個顯示屏組成。控制中心實時將最新信息發(fā)送到各顯示屏。構(gòu)建控制中心與顯示終端的通信鏈路,傳統(tǒng)的方法要么鋪設(shè)光纜用有線方式實現(xiàn),要么構(gòu)建專用無線網(wǎng)用無線方式實現(xiàn)。因為高速公路的特殊性,控制中心與顯示終端之間的距離通常很遠(yuǎn),兩種方案都必須投入大量資金和巨大的施工工作量。如果采用GSM公眾無線傳輸網(wǎng)絡(luò),控制中心以短信息的形式把顯示信息發(fā)送到顯示終端的技術(shù)方案,則具有投資小,施工方便,工作可靠,運(yùn)行費用低等諸多優(yōu)點。
在控制中心,微機(jī)編輯好短信息后通過手機(jī)這個載體發(fā)送出去。在顯示終端,單片機(jī)通過讀取手機(jī)的短信息把它顯示到LED顯示屏上。項目的核心技術(shù)是單片機(jī)與手機(jī)的接口和PDU數(shù)據(jù)包中的漢字信息編碼。因為短信息中的漢字僅僅是一個編碼,單片機(jī)應(yīng)用系統(tǒng)將編碼變?yōu)闈h字點陣數(shù)據(jù),必須配置漢字字庫。按GSM07.05協(xié)議規(guī)定,短信息中的漢字編碼為Unicode編碼,如果構(gòu)建一個Unicode編碼的漢字字庫,確實是一件繁瑣的工作,因此,在設(shè)計單片機(jī)應(yīng)用系統(tǒng)時,采用如下兩點技術(shù)措施。
①單片機(jī)系統(tǒng)配置的字庫為GB-2312編碼的漢字庫,即區(qū)位碼漢字庫,該漢字庫在網(wǎng)上可免費下載,固化到Flash存儲芯片中即可。當(dāng)然這樣做的前提是PDU數(shù)據(jù)包中的漢字編碼必須為漢字內(nèi)碼而非Unicode編碼。
②控制中心編輯PDU數(shù)據(jù)包數(shù)據(jù)時,采用自定義數(shù)據(jù)方式,其中,代表漢字的數(shù)據(jù),直接取用漢字的機(jī)內(nèi)碼即可,免去了把機(jī)內(nèi)碼再轉(zhuǎn)換為Unicode編碼之苦。實踐證明,這是可行的。
采用以上技術(shù)措施的優(yōu)點,一是省去了兩種編碼的相互轉(zhuǎn)換;二是保證了數(shù)據(jù)的保密性,非系統(tǒng)內(nèi)用戶無法接收,即使接收也無法顯示。
該項目研制成功投入使用后,因顯示終端只接收不發(fā)送,幾乎沒有運(yùn)行成本。發(fā)送端(控制中心)可采用月租方式,也能把運(yùn)行費用降低到最低限度。因此該項目得到用戶滿意的評價。
GSM(Global System for Mobile communication)系統(tǒng)是目前基于時分多址技術(shù)的移動通訊體制中比較成熟、完善、應(yīng)用最廣泛的一種系統(tǒng)。目前已建成的覆蓋全國的GSM數(shù)字蜂窩移動通信網(wǎng),是我國公眾移動通信網(wǎng)的主要方式。主要提供話音、短信息、數(shù)據(jù)等多種業(yè)務(wù)。基于GSM短消息功能可以做成傳輸各種檢測、監(jiān)控數(shù)據(jù)信號和控制命令的數(shù)據(jù)通信系統(tǒng),能廣泛用于遠(yuǎn)程監(jiān)控、定位導(dǎo)航、個人通信終端等。由于公眾GSM網(wǎng)絡(luò)在全球范圍內(nèi)實現(xiàn)了聯(lián)網(wǎng)和漫游,建立上述系統(tǒng)不須再組建專用通信網(wǎng)絡(luò),所以具有實時傳輸數(shù)據(jù)功能的短消息應(yīng)用將得到迅速普及。
目前,人們設(shè)計的各類DTE設(shè)備基礎(chǔ)上以微處理器為核心,帶有RS232/RS485等通信接口,在物理層上很容易實現(xiàn)與GSM設(shè)置(如手機(jī)等)的連接。但對SMS協(xié)議的研究文獻(xiàn)卻較少,特別是用單片機(jī)控制手機(jī)的SMS(Short Message Service)收發(fā)的研究更少。筆者在用單片機(jī)設(shè)計基于GSM的SMS數(shù)據(jù)采集器時,對怎樣用單片機(jī)控制手機(jī)收發(fā)短信息進(jìn)行了探討。
1 串口控制SMS的工作原理
單片機(jī)與手機(jī)一般采用串行異步通信接口,具有紅外和通信電纜兩種連接方式,通信速度可設(shè)定,通常為19200bps。采用紅外接口的優(yōu)點是單片機(jī)系統(tǒng)與手機(jī)電氣隔離,相互不干擾,接口各自獨立,使用方便;缺點是通信距離較短,紅外傳播的方向性對接口相對位置有要求。采用電纜連接時,數(shù)據(jù)傳輸?shù)目煽啃暂^好;其主要缺點是接口的電氣參數(shù)不兼容,設(shè)計不當(dāng)時會對手機(jī)的通信質(zhì)量產(chǎn)生影響。筆者經(jīng)過實踐設(shè)計的接口電平轉(zhuǎn)換電路如圖1。
GSM的短信息業(yè)務(wù)SMS利用信令信道傳輸,這是GSM通信網(wǎng)所特有的。它不用撥號建立連接,把要發(fā)的信息加上目的地址發(fā)送到短信息服務(wù)中心,經(jīng)短消息服務(wù)中心完成存儲后再發(fā)送給最終的信宿。所以當(dāng)目的GSM終端沒開機(jī)時信息不會丟失。每個短消息的信息量限制為160字節(jié)。
現(xiàn)在市場上大多數(shù)手機(jī)均支持GSM07.05規(guī)定的AT指令集。該指令集是ETSI(歐洲通信技術(shù)委員會)發(fā)布的,其中包含了對SMS的控制。利用GSM手機(jī)的串行接口,單片機(jī)向手機(jī)收發(fā)一系列的AT命令,就能達(dá)到控制手機(jī)收發(fā)SMS的目的。ETSI的GSM07.05中用于SMS收發(fā)控制的主要AT命令見表1。
表1 常用AT指令GSM07.05Function(功能)ATE0RESETAT+CSMS選擇短信息服務(wù)AT+CPMS選擇短信息內(nèi)存AT+CMGF選擇短信息格式AT+CSCA短信息中心地址AT+CNMI顯示新收到的短信息AT+CMGR讀短信息AT+CMGS發(fā)送短信息AT+CMGL列出SIM卡中短信息AT+CMSS從SIM內(nèi)存中發(fā)短信息AT+CMGW向SIM內(nèi)存中寫入待發(fā)短信息AT+CMGD刪除SIM內(nèi)存中的短信息AT+CSCB選擇蜂窩廣播信息
GSM手機(jī)通過異步通信接口實現(xiàn)對SMS的控制共有三種接入?yún)f(xié)議:Block Mode;基于AT命令的TextMode;基于AT命令的PDU Mode。PDU模式是發(fā)送或接收手機(jī)SMS信息的一種方法,短信息正文經(jīng)過十六進(jìn)制編碼后被傳送。目前,PDU Mode應(yīng)用最為廣泛,基本上全國所有的電信局都提供支持PDU Mode的短消息業(yè)務(wù)。有些地址則不支持Text Mode和Block Mode,這就限制了這兩種接入?yún)f(xié)議的應(yīng)用,而且PDU Mode已有取代Block Mode的趨勢。為了保證系統(tǒng)具有廣泛的適用性,本文采用PDU模式收發(fā)SMS。
PDU相當(dāng)于一個數(shù)據(jù)包,它由構(gòu)成消息(SMS)的信息組成。作為一種數(shù)據(jù)單元,它必須包含源/目的地址、保護(hù)(有效)時間、數(shù)據(jù)格式、協(xié)議類型和正文,正文長度可達(dá)140字節(jié),它們都以十六進(jìn)制表示。PDU結(jié)構(gòu)根據(jù)短消息由移動終端發(fā)起或以移動終端為目的而不同。
當(dāng)由移動終端發(fā)起時,PDU的格式為:
SMSCPDU類型MRDAPIDDCSVPUDLUD(0~140octed)
當(dāng)以移動終端為目的時,PDU的格式為:
SMSCPDU類型OAPIDDCSSCTSUDLUD(0~140octed)
其中,SMSC為短消息業(yè)務(wù)中心地址,DA/OA為源/目的地址,PID為協(xié)議識別,DCS為數(shù)據(jù)編碼,UDL為用戶數(shù)據(jù)長度,UD為用戶數(shù)據(jù),VP為有效時間,MR指明是發(fā)出信息,SCTS指明短消息到達(dá)業(yè)務(wù)中心的時間。
2 PDU格式下短信息的接收
根據(jù)設(shè)置不同,手機(jī)將收到的短消息保存在緩存單元或存入SIM卡,單片機(jī)從手機(jī)中接收短消息實質(zhì)上就是從SIM或緩存中讀出信息。這主要利用AT+CMGR和AT+CMGL兩條指令來完成,其工作過程見圖2。
由于不同的廠商對AT指令集的解釋代碼和響應(yīng)信息不一樣,所以單片機(jī)首先要確認(rèn)能否與手機(jī)建立起通信,一般用ATE指令完成此確認(rèn);然后用AT+CMGF指令選定短消息的數(shù)據(jù)格式;在收到手機(jī)的正確回答反以AT指令完成讀出功能。一般用AT+CMGL讀取以前的信息,在收到手機(jī)的RING(振鈴)數(shù)據(jù)時,用AT+CMGR讀取實時信息。
以下是筆者設(shè)計的物流數(shù)據(jù)采集系統(tǒng)中用到的接收SMS的一個實例,它說明了PDU模式的應(yīng)用。單片機(jī)發(fā)送和接收(手機(jī)回答)均為ASCII碼。所用手機(jī)為SIEMENS S3508i。
操作過程如下({}內(nèi)為注釋):
發(fā)送:ATE
手機(jī)回答:OK {已建立聯(lián)接}
發(fā)送:AT+CMGF=0 {選用PDU格式}
手機(jī)回答:OK {允許選擇PDU格式}
發(fā)送:AT+CMGL=2 {列出已有的短信息}
手機(jī)回答:+CMGL:1,2,,24{1表示信息個數(shù),2表示未發(fā)信息,24表示信息總?cè)萘縸
0D71683108370105F004000D81683179133208F10000026080410033802632184CF682D
95E0DC2B36D3D170A0243106933D97A0243106933D97A02451068B1983492608
OK
以上這組PDU格式的十六進(jìn)制字符串,不但包含了短消息的內(nèi)容,同時包含了發(fā)送者的手機(jī)號碼、短信息中心號碼、短消息發(fā)送時間等。
下面對信息內(nèi)容進(jìn)行分析:
0D:短信息中心地址(號碼)長度。
91:短信息中心號碼類型,91是TON/NPI。TON/NPI遵守International/E.164標(biāo)準(zhǔn),指在號碼前需加'+'號;此外還可直有其他數(shù)值,但91最常用。
683108370105F0:SMSC 短信息所使用的服務(wù)中心號碼13807310500。它經(jīng)過十六進(jìn)制以字節(jié)為單位的高低半字節(jié)換位處理,號碼是奇數(shù)的添F,構(gòu)成一個HEX字節(jié)。
04:PDU類型,文件頭字節(jié)。
0B:主叫號碼長度。
81:主叫號碼類型。
3179133208F1:0A主叫號碼,也經(jīng)過了處理,實際號碼為13973123801。
00:PID,為協(xié)議標(biāo)識。
00:DCS短信息編碼類型是GSM Default Alphabet,即由7位ASCII碼移位組成8位十六進(jìn)制碼(octet),其方法見表2。
1sthexB0A6A5A4A3A2A1A02ndhexC1C0B6B5B4B3B2B13rdhexD2D1D0C6C5C4C3C24thhexE3E2E1E0D6D5D4D35thhexF4F3F2F1F0E6E5E46thhexG5G4G3G2G1G0F6F56thhexH6H5H4H3H2H1H0G6
02608041003380:SCTS短信息發(fā)送時間,02/06/08/14:00:33.08。
26:UDL經(jīng)處理后的8位碼(octet)短信息字節(jié)長度,它小于消息ASCII碼的長度。
32184CF682D95E30DC2B36D3D170A0243106933D97A0243106933D97A02451068B1983492608:UD 編碼后的PDU數(shù)據(jù),短信息內(nèi)容“2002/06/08/13:48ID102OKID103OK ID201FAIL”。
3 短信息的發(fā)送
與接收短信息一樣,發(fā)送時也要先建立聯(lián)接,傳送一些初始化指令,然后發(fā)送短消息內(nèi)容。下面是用SIEMENS S3508i發(fā)送一個短信息的例子,內(nèi)容為:“2002/06/08/13:48 ID102OK ID103OK ID201FAIL”。其ASCII碼為:“32030322F30362F30382F31333A34382049443130324F4B
2049443130334F4B2049443230314641494C20”。
發(fā)送:ATE {請求建立聯(lián)接}
手機(jī)回答:OK {已建立聯(lián)接}
發(fā)送:AT+CMGF=0 {選擇PDU模式}
手機(jī)回答:OK
發(fā)送:AT+CSMS=0{檢測手機(jī)是否支持SMS命令}
手機(jī)回答:OK
發(fā)送:AT+CMGS=52{發(fā)送短信息,52 octets(不包括最初9個短信息元字節(jié))}
手機(jī)回答:>{允許上傳數(shù)據(jù),ASCII碼是($20H,$2EH)}
發(fā)送:0891683108701305F011000B813179133208F10000AA2632184CF682D95
E30DC2B36D3D170A0243106933D97A0243106933D97A02451068B19834926081A
不計最初9個短消息信元字節(jié),本短信息有52字節(jié)(104個字符)。AT+CMGS僅說明了SMSC信息內(nèi)容的長度,在收到手機(jī)回答的>符號手才發(fā)送PDU數(shù)據(jù)串,并以(CTRL^Z)結(jié)束。
PDU數(shù)據(jù)串的內(nèi)容說明如下:
08:短信息信元SMSC(短信息中心號碼)的字節(jié)長度
91:短信息中心號碼類型,91表明中心號碼是國際通用電話號碼。
683108701305F0:短信息中心號碼:8613807310500。
11:PDU SMS發(fā)送的文件頭字節(jié)。這里11指正常發(fā)送短信息。
00:信息類型。這里00指讓手機(jī)自動加上主叫號碼。
0B:被叫號碼長度。
81:被叫號碼類型。
3179133208F1:被叫號碼13973123801。
00:協(xié)議標(biāo)識。
00:短信息編碼類型是GSM Default Alphabet。
AA:短信息被保留的時間為4天,其計算方法依照表3。
VP值短消息有效時間長度0~143(VP+1)×5分鐘144~16712時+(VP-143)×30分168~1961天×(VP-166)197~2551周×(VP-192)
26:PDU格式短信息編碼后字節(jié)長度。
32184CF682D95E30DC2B36D3D170A0243106933D97A0243106933D
97A02451068B1983492608:編碼后的PDU數(shù)據(jù),短信息內(nèi)容為“2002/06/08/13:
48ID102OKID103OK ID201FAIL”。
1A:ASCII碼CTRL^Z:報文結(jié)束標(biāo)志。
4 應(yīng)用情況及常見主要問題的解決
筆者用MCS-51系列的單片機(jī)研制了一個手持式的數(shù)據(jù)采集產(chǎn)品,通過SIMEENS手機(jī),利用GSM的SMS傳輸數(shù)據(jù)。經(jīng)過在國內(nèi)多個省市較大數(shù)量長期廣泛的使用,性能良好,沒有出現(xiàn)數(shù)據(jù)丟失的現(xiàn)象。證明上述設(shè)計用,性能良好,沒有出現(xiàn)數(shù)據(jù)丟失的現(xiàn)象。證明上述設(shè)計是正確的。但在調(diào)試和試用階段也遇到了如下問題:
(1)接口電平
手機(jī)的電纜接口電平一般是3V左右,單片機(jī)系統(tǒng)的工作電壓一般為2.7~5.5V,范圍較寬,為保證數(shù)據(jù)傳輸?shù)恼_,需在接口加電平限制電路,詳見圖1。
(2)部分城市無法使用
一些城市的SMS平臺不允許使用缺省短消息服務(wù)中心號碼的協(xié)議,只需在發(fā)送的PDU數(shù)據(jù)前面幾個字節(jié)加上中心號碼即可,詳見本文發(fā)送實例。
(3)不能接收已正確發(fā)送的短消息
除GSM的SMS信道擁塞原因外,主要是PDU中PID字節(jié)的設(shè)置,使得收到的信息要存入SIM卡,而SIM卡已滿,故不再接收信息。改變PID的設(shè)置即可。
(4)收不到開機(jī)前的短消息
主要是發(fā)送數(shù)據(jù)時,對短消息有效時間VP值設(shè)置不當(dāng)造成的。