GSM模組實現中文簡訊息發送

來源:互聯網
上載者:User

GSM模組支援兩種方式來發送和接收SMS簡訊息,文字模式和PDU(Protocol Description Unit)模式,文字模式只能發送普通的Ascill字元,要發送圖片,鈴聲,其它編碼的字元(如中文)就必須採用PDU模式。

   
PDU模式中,可以採用三種編碼方式來編碼要發送的 內容
,分別是7bit編碼,8bit編碼,16bit編碼,7bit編碼用於發送普通的Ascill字元,8bit編碼通常用於發送資料資訊,片和鈴聲,
而16bit編碼用於發送Unicode字元。三種編碼可以發送的最大字元分別是160,140,70。發送中文簡訊要採用PDU模式的Unicode編碼方式,具體步驟描述如下:    
(1)GB2321編碼到Unicode編碼的轉換。    
● 作業系統提供函數(有些系統不提供,如deltaos)。    
● 手動查表。    
(2)Unicode編碼到16bit編碼的轉換。    
● 得到的Unicode編碼後,還需要轉換成PDU的16bit編碼才可以正確的發送。    
●這個轉換過程中Unicode編碼最開始的0xffff標誌要去掉,在0xffff之後的內容才是真正的Unicode字元。    

Unicode是雙位元組,根據系統如果是小端位元組序(little-endian),也就是說,儲存的時候,先存低位再存高位,例如:“中”的
Unicode編碼是0x4E2D,儲存的時候是2D4E,在轉換到16bit編碼的時候要轉換順序,如果是大端位元組序(big-endian)如本系
統,就不需要轉換了。    
● 正確 計算 16bit編碼的訊息體長度,PDU規範中,包括訊息體本身。    
● 正確設定TYPE,TP-MR,TP-PID,TP-VP,在下文PDU格式中,依次設定為:11,00,00,08,01(以上都為16進位數)。    
(3)形成標準的發送包。 簡訊發送過程 分析
   
處理器通過向串口發送接收AT命令與GSM模組形成通訊迴路,通過AT命令實現對GSM模組的基本操作,用於傳送簡訊的AT命令如表1所示。    
傳送簡訊可用文字模式和協議資料單元模式(PDU,protocol data
unit)。大多手機不支援文字模式,只支援PDU模式。PDU模式是把簡訊本文經十六進位編碼後被傳送,其編碼總體上分為三個部分:服務中心號、接收方
手機號、簡訊內容,如“你好”簡訊PDU編碼是這樣的(其中xyz是手機號具體數字):
0011000B8131258698yxFz000801044F60597D,其意義如表2所示。

 

表1 傳送簡訊使用的AT命令
AT命令 功能 例子
AT+CMGF 設定簡訊的格式,0=PDU模式(預設),1=文字模式 AT+CMGF=0
AT+CSCA 擷取服務中心的號碼 AT+CSCA?
AT+CMGS 發送AT+CMGS= YYY ;其中 YYY 為TPDU的十進位長度 AT+CMGS=19
接收到“>” 響應後傳送簡訊內容  
表2 發送資料分析
接收號部分 簡訊內容部分
00 11 00 0B 8131208698yxFz 000801 04 4F605970
00:SCA以00寫入,應用預設的服務中心地址,該服務中心地址用AT+CSCA指令寫入11:PDU類型00:TP-MR表示MR 訊息 參考 0B:接收號字元數81:表示是國內代碼31258698yxFz:接收號 編碼時間長度度為奇數末尾追加“F”每兩個位元組進行位置交換,即13526889xyz 00:TP-PID協議標示 08:TP-DCS資料編碼方式 01:TP-VP有效期間 04:UDL使用者資料長度,用十六製表示4F60597D:簡訊內容的UNICODE編碼

 

   
如果發送成功,串口返回以下結果:       
+CMGS: X  這裡的X是個數字  

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.