《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 解決方案 > 如何以OpenAT3.12為平臺將通信報文封裝進GSM Modem

如何以OpenAT3.12為平臺將通信報文封裝進GSM Modem

2010-12-12
來源:中電網

引  言
隨著經濟的發展以及國內工農業領域的自動化程度的提高,越來越多的場合需要遠程監控和操作的設備?;?a class="innerlink" href="http://www.cowatch.cn/tags/GSM" title="GSM" target="_blank">GSM網絡短信息設備的領域,GSM Modem是必不可少的設備,本文討論目前應用廣泛的基于Wavecom公司Q24PL001模塊的GSM Modem嵌入式程序設計,以實現將短信數據通信報文封裝進GSM Modem,從而簡化上位機軟件的工作量。
本文以OpenAT3.12嵌入式開發平臺為例,討論如何將遠程控制和數據采集通信報文封裝進以Q24PL001模塊為主的GSM Modem。
1  OpenAT操作系統介紹
OpenAT是Wavecom公司為GPRS/GSM無線CPU開發的一款實時操作系統,集成了內存分配、Flash管理、數據流管理、GPIO管理、總線管理、定時器管理等多種功能。底層為嵌入式API應用層,它包括程序初始化API、AT指令API、操作系統API、標準API、流控API、總線API等,包含了建立在OpenAT基礎之上的應用開發層函數庫。應用開發層(簡稱ADL)函數庫為開發人員提供了上層應用接口,簡化了嵌入式應用的開發;同時還提供了嵌入式應用程序框架,包括消息解析器和服務聲明機制。基于以上原因,OpenAT應用程序開發人員在開發應用程序時,更多的時間用于調用服務處理函數,使系統更專注于程序本身的優化。
2  GSM Modom的硬件結構和應用程序
GSM模塊在工業領域中比較重要的一個應用就是用來做GSM Modem,這也是GSM模塊一個最簡單的應用。如圖1所示,一個常規通用GSM Modem的系統結構包括電源、RS232接口、GSM模塊、LED指示燈、SIM卡和天線等部分。

GSM Modem核心模塊采用Wavecom公司的無線CPU模塊Q24PL001。在Q24PL001模塊中,OpenAT與應用程序的結構關系如圖2所示。Q24PL001集成了ARM7內核的32位CPU,內嵌OpenAT操作系統內核,支持OpenAT嵌入式應用程序設計。
3  基于短信遠程控制系統的結構
如圖3所示,基于GSM網絡的短信遠程控制系統通常包括以下幾個部分:GSM Modem、上位機監控終端、移動運營商的GSM網絡和GSM終端等。
在一般產品設計中,GSM Modem作為發送GSM短信息的工具使用。PC機通過RS232串口與GSM
Modem相連,根據通信協議處理短信數據將處理好的短信數據包打包,通過RS232串口發送一系列標準Ar指令控制GSM Modem,由其將短信數據包發送至終端系統。本文重點研究簡化上位機軟件,將數據處理過程交給GSM Modem嵌入式系統軟件處理的方法。
4  GSM短信遠程控制系統的通信報文設計
對于GSM遠程通信系統,數據通信報文并無統一標準,設計者可以根據具體情況自由設計不同通信終端之間的數據通信報文。由于GSM網絡的短信數據通信接收端可以通過普通手機實現短信接收,所以必須在短信數據通信報文設計中進行數據加密設計,以防止非法用戶對GSM短信數據通信報文的破解和濫用,保證整個SMS短信控制系統的穩定性。為了便于介紹,在此以非加密的GSM短信數據通信報文為例,介紹GSM短信通信報文的設計。
一個常用GSM短信數據通信報文設計格式如下:
其中,以$S作為短信數據通信報文的幀頭字節;6個字符作為接收端的認證密碼;S/T代表本報文的發送方為GSMModem(S)或短信終端(T);報文內容受短信數據長度的限制,一般在100字節以下;以#作為報文的結束符。
基于如上報文定義,一條上位機發出的SMS報文示例如下:
$S000000S0000AA100RlY2W3R4Y5G6Y7W5B#
其中,$S為數據幀頭;000000為SMS終端默認的認證密碼;S表明本數據來自GSM
Modem;0000為服務器設備ID編號;AA表示當前數據命令;10為十六進制數據0x10,表示當前數據內容長度字節;0R1G2W3R4G5G6Y7W為報文內容;5B為校驗碼;#為結束符。
同理,短信終端返回至GSM Modem的SMS報文示例為:
$S888888T0055CC1930RX1YX2YX3YX4YX5Y6Y7YXEF#
其中,$S為數據幀頭;888888為SMS上位機服務器端默認的認證密碼;T表明數據來自短信終端;0055為終端設備ID編號;CC表示當前返回數據命令;19為十六進制數據0x19,表明當前返回數據內容長度字節;30RX1YX2YX3YX4YX5Y6Y7YX為返回數據內容;EF為校驗碼;#為結束符。
5 GSM Modem短信數據通信報文處理流程
采用常規的上位機軟件來進行設計,將數據通信報文整理好后再根據一系列的AT命令組合發送至GSM
Modem,同時還需要解析來自若干個SMS終端的數據通信報文。常規上位機服務器端軟件處理短信數據的流程如圖4所示。
上位機軟件數據處理過程中,需要不停地對GSMModem進行操作,響應GSM Modem接收到的數據,處理發送數據包。在整個過程中,GSM Modem只作為數據傳輸工具,不參與任何的數據處理;而一般的SMS遠程監控通信系統的通信報文多達幾十乃至上百條,會導致上位機軟件工作量非常大。為了便于上位機程序簡化開發,結合Q24PL001模塊自身支持OpenAT嵌入式軟件的特點,將短信數據通信報文的發送處理和接收解析流程嵌入GSMModem內,只保留一些簡單的AT命令接口給上位機軟件控制,大大減小了上位機軟件的工作量。
6  基于OpenAT的通信協議報文封裝
OpenAT嵌入式操作系統是為廣泛的基于GSM/GPRS的模塊系統應用而設計的,用于實現嵌入式的短信數據通信協議報文封裝,可以大大提高GSM Modem硬件系統的資源利用率?;贠penAT的程序設計流程分為SIM卡服務聲明、短信服務聲明、發送數據包處理和接收數據包數據解析等部分。
6.1  SlM卡初始化程序
在OpenAT嵌入式程序中,啟動SIM卡初始化的聲明函數為adl_simSubscribe(bpt_SimInitHandler,"
")。其中,bpt_SimInitHandler為SIM卡
聲明返回函數:
其中,事件ADL_SIM_EVENT_FULL_INIT表明SIM的初始化完成。
6.2  短信服務初始化程序
在OpenAT嵌入式程序設計中,當返回函數返回狀態為ADL_SIM_EVENT_FULL_INIT時,表明系統SIM卡初始化過程成功完成,系統可以進入短信聲明流程。短信功能聲明函數為:
ptk_SmsHandler=adl_smsSubscribe((adl_smsHdlr_f)bpt_SmsDataHandler,\(adl_smsCtrlHdlr_f)bpt_SmsCtrlHandler,ADL_SMS_MODE_TEXT);
其中,ptk_SmsHandler為短信聲明函數返回句柄;bpt_SmsDataHandler為短信數據處理返回函數;bpt_SmsCtrlHandler為短信發送狀態事件返回函數;ADL_SMS_MODE_TEXT參數表示采用TEXT模式進行短信數據傳輸。bpt_SmsDataHandler短信數據返回函數定義如下:
在該函數中,smsTel為接收到的短信電話號碼,smsTimeLength為TEXT模式下的短信時間戳,smsText為接收到的短信數據內容。
SmsCtrlHandler短信發送事件返回狀態定義如下:
其中,ADL_SMS_EVENT_SENDING_OK事件表明短信發送成功。
6.3  SMS通信協議發送實現
對示例通信報文$S000000S0000AA100R1Y2W3R4Y5G6Y7W5B#來說,報文的頭和尾以及S服務器標志為固定字節;000000為終端訪問密碼,從Q24PL001模塊內部Flash中調用;服務器ID碼0000及終端SIM卡號碼,同樣從內部Flash中通過OpenAT嵌入式API函數adl_flhRead函數調用;命令字AA為固定命令字節;報文內容通過AT命令接收自上位機軟件。
該數據通信協議發送時通過OpenAT嵌入式API函數adl_smsSend()函數發送。adl_smsSend函數定義如下:
adl smsSend(ptk SmsHandler,Telephone,Message,ADL_SMS_MODE_TEXT)
其中,ptk_SmsHandler為6.2節中短信聲明返回句柄;Telephone參數為目標的SIM卡號碼;Message為封裝好的SMS短信數據通信報文;ADL_SMS_MODE_TEXT表明采用TEXT格式的短信傳輸。
6.4  數據通信協議的接收處理
對于GSM Modem接收到的短信數據報文的處理,相當于發送短信數據報文的解包過程,主要過程在GetSmsDataPackage()函數中實現。處理后數據發送至上位機軟件格式為:
RES:0001,8,30RX1YX2YX3YX4YX5Y6Y7Y
返回數據通過串口發送至上位機,上位機軟件直接接收該字符串,即完成短信數據的接收過程。
7  GSM Modem AT命令設計
利用OpenAT操作系統自定義AT命令設計接口,定義GSM Modem對上位機的數據通信接口。AT命令聲明函數如下:
adl_atCmdSubscribe("AT+SETDIS",(adl_atCmdHandler_t)SetMode,ADL_CMD_TYPE_PARA∣ADL_CMD_TYPE_READ∣0x0041);
其中,參數"AT+SETDIS"為自定義的AT命令接口;SetMode為該AT命令的返回函數;第3個參數為當前AT命令的類型,ADL_CMD_TYPE_PARA為鍵入參數型,ADL—CMD—TYPE—READ為讀參數型,0x0041為AT命令類型值,根據函數規定設置。
在SETDIS命令中,以“AT+SEDDIS=X,Y”類型為自定義命令的訪問接口。在返回函數中,第1個參數X作為SMS通信協議的命令字參數,第2個參數Y作為SMS通信協議的數據報文內容參數。SMS數據報文目標接收終端SIM卡號碼由“AT+SETTEL”命令預設,該命令定義如下:
adl_atCmdSubscribe("AT+SETTEL",(adl_atCmdHandler_t)SetTel,ADL_CMD_TYPE_PARA∣ADL_CMD_TYPE_READ∣0x0041)}
該命令用于首次設置GSM Modem,將所有接收終端SIM卡號存入Q24PL001內部Flash內,以ID號標識。
上位機通過串口鍵人“AT+SETDlS=0,"0R1Y2W3R4 Y5G6Y7W"”,則GSM
Modem立即向相應ID為0的終端發出數據包為$S000000S0000AA100R1Y2W3R4Y5G6Y7W5B#完整數據。
8  上位機軟件的操作實現
相對于復雜的數據報文運算,以及復雜的AT命令發送GSM短信數據包的上位機軟件系統來說,將短信數據報文封裝進GSM Modem后,對GSM Modem的控制操作變得簡單,只需要一條簡單的AT命令,即可實現非常復雜的短信數據包的傳輸。同樣對于接收到的數據,GSMModem完成數據包解包后,立即通過RS232串口輸出簡潔的響應字符串,大大簡化了上位機軟件的處理。經過對GSM Modem進行短信協議報文封裝后的上位機軟件處理流程如圖5所示。
結  語
在系統穩定性和實時性要求較高的通信領域中,相比在上位機軟件中進行協議處理,將GSM Modem進行嵌入式報文封裝處理簡單而又高效。另外,在很多無人值守的服務端平臺,只要保持GSM Modem開機,數據包數據處理即可以直接由GSM Modem完成,而無需上位機電腦開機,既方便了用戶操作,又保證了SMS通信系統的穩定性。該設計已經應用于南寧及深圳市智能交通誘導系統中,均取得較好的效果。
 
本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美午夜一区二区福利视频| 国产精品日日摸夜夜添夜夜av| 亚洲日本在线观看| 国产精品国产自产拍高清av王其| 欧美日韩一区二区高清| 欧美日韩成人综合| 亚洲欧洲精品一区二区精品久久久| 国产一区视频观看| 国产在线国偷精品产拍免费yy| 久久免费国产精品1| 欧美精品成人91久久久久久久| 亚洲伦理久久| 欧美日韩黄色大片| 亚洲国产aⅴ天堂久久| 国产一区二区黄色| 欧美高清在线播放| 欧美一区二区三区四区在线观看| 中文在线资源观看网站视频免费不卡| 伊人成人在线视频| 欧美日韩中文精品| 国产欧美精品在线观看| 久久久亚洲精品一区二区三区| 亚洲日韩中文字幕在线播放| 欧美啪啪一区| 国产精品卡一卡二| 欧美视频精品一区| 久久久国产91| 99国内精品| 亚洲精品无人区| 国产精品久久久久国产精品日日| 午夜久久久久久久久久一区二区| 国产精品久久激情| 国产私拍一区| 亚洲人成网站777色婷婷| 国产精品盗摄一区二区三区| 亚洲欧美视频在线| 欧美精品在线观看91| 国产精品sm| 91久久精品日日躁夜夜躁欧美| 国产精品久线观看视频| 欧美高清你懂得| 欧美日韩国产欧美日美国产精品| 亚洲国产日韩欧美| 亚洲国产日韩欧美在线99| 国内久久视频| 亚洲精品社区| 欧美成人午夜免费视在线看片| 欧美超级免费视 在线| 欧美久久久久久| 在线电影欧美日韩一区二区私密| 国产精品久久久久一区| 欧美日韩国产成人精品| 亚洲午夜在线观看视频在线| 国内精品一区二区| 欧美一区二区三区日韩视频| 性伦欧美刺激片在线观看| 久久亚洲精品网站| 欧美三区在线观看| 91久久精品国产| 国产精品久久久久9999| 99伊人成综合| 国产美女精品人人做人人爽| 欧美激情欧美激情在线五月| 国产日韩欧美夫妻视频在线观看| 欧美日韩网址| 欧美日韩成人在线视频| 欧美wwwwww| 美日韩精品视频| 亚洲人成人99网站| 国产一区二区精品丝袜| 在线观看成人av电影| 午夜欧美精品| 久久国产一区二区三区| 韩国一区二区三区美女美女秀| 一本综合久久| 久久久综合免费视频| 欧美日韩国产探花| 亚洲国产精品久久久久秋霞影院| 欧美精品一区在线观看| 亚洲欧洲在线一区| 久久国产精品一区二区三区四区| 欧美成人精品高清在线播放| 国产精品视频免费在线观看| 欧美 日韩 国产一区二区在线视频| 亚洲国产成人午夜在线一区| 国产在线不卡| 亚洲精品影院在线观看| 亚洲国产日韩欧美综合久久| 亚洲第一精品夜夜躁人人躁| 欧美乱在线观看| 国产日产欧美一区| 一本大道久久精品懂色aⅴ| 欧美激情网站在线观看| 亚洲手机在线| 欧美色精品在线视频| 久久久久99精品国产片| 久久九九国产精品怡红院| 日韩午夜精品| 香蕉久久a毛片| 禁久久精品乱码| 久久综合中文字幕| 欧美日韩免费视频| 亚洲三级电影全部在线观看高清| 国产综合第一页| 欧美日韩在线三区| 亚洲欧美中文日韩v在线观看| 国产精品午夜国产小视频| 国产精品久久久久aaaa樱花| 欧美精品高清视频| 欧美精品一区二区三区视频| 欧美一区二区三区视频在线| 激情久久中文字幕| 亚洲欧美国产一区二区三区| 久久久91精品国产| 国内自拍一区| 欧美日韩精品二区第二页| 国产视频在线观看一区二区| 久久久97精品| 欧美成人一区在线| 亚洲一区二区三区欧美| 免费在线日韩av| 一区二区免费在线视频| 亚洲精品美女久久7777777| 国内精品久久久久久久97牛牛| 国产午夜精品久久久久久免费视| 亚洲欧美不卡| 国产精品网站在线观看| 欧美日韩亚洲高清一区二区| 欧美激情精品久久久久久久变态| 一区二区日韩欧美| 女人色偷偷aa久久天堂| 亚洲在线观看视频| 亚洲韩国一区二区三区| 性做久久久久久久免费看| 9l视频自拍蝌蚪9l视频成人| 亚洲精品免费电影| 在线成人www免费观看视频| 欧美福利视频在线观看| 欧美香蕉视频| 国产日韩欧美在线一区| 国产精品r级在线| 国产精品大片免费观看| 午夜视频精品| 久久久久久久久久久久久女国产乱| 欧美亚洲一区二区在线| 欧美一区网站| 亚洲影院污污.| 亚洲国产成人一区| 久久国产精品久久国产精品| 午夜精品一区二区三区在线| 亚洲国产第一页| 亚洲尤物在线视频观看| 国产麻豆日韩欧美久久| 激情视频一区| 欧美日韩免费高清一区色橹橹| 久久精品一区二区三区中文字幕| 欧美成人小视频| 欧美福利视频| 欧美成人一区在线| 黄色亚洲精品| 国产精品亚洲第一区在线暖暖韩国| 欧美激情中文字幕乱码免费| 极品中文字幕一区| 午夜精品久久久久久久99樱桃| 国产精品羞羞答答| 久久精品人人爽| 欧美三级日本三级少妇99| 在线观看欧美日韩| 一本一道久久综合狠狠老精东影业| 一本久久a久久免费精品不卡| 久久精品成人欧美大片古装| 欧美精彩视频一区二区三区| 欧美成人免费全部观看天天性色| 欧美成人亚洲| 欲色影视综合吧| 亚洲免费av电影| 欧美刺激性大交免费视频| 久久久亚洲欧洲日产国码αv| 欧美日韩视频专区在线播放| 亚洲黄色尤物视频| 欧美高清在线视频观看不卡| 女仆av观看一区| 国产日韩欧美在线一区| 蘑菇福利视频一区播放| 久久麻豆一区二区| 午夜精品影院| 亚洲国产成人在线视频| 一区二区三区欧美亚洲| 欧美日韩mv| 美日韩精品免费| 久久精品天堂| 欧美性大战久久久久久久| 国产一区二区三区直播精品电影| 欧美日韩精品伦理作品在线免费观看| 欧美午夜精品久久久久久孕妇| 国产视频久久久久久久| 国产精品一区二区在线观看不卡| 国产亚洲欧美一区在线观看| 在线看欧美视频| 快she精品国产999| 亚洲视频高清| 免费久久99精品国产| 国产日韩精品一区二区| 午夜天堂精品久久久久| 国产精品美女一区二区| 一区二区三区免费观看| 国产精品v欧美精品∨日韩| 你懂的视频欧美| 国产日本欧洲亚洲| 亚洲成色777777在线观看影院| 国产日韩精品一区二区浪潮av| 国产精品白丝jk黑袜喷水| 国产精品久久久久免费a∨大胸| 亚洲精品国产精品国自产在线| 亚洲激情一区| 久久久久久综合网天天| 欧美日韩和欧美的一区二区| 国产欧美视频一区二区| 亚洲欧美日韩成人高清在线一区| 99国产一区二区三精品乱码| 国产精品女人久久久久久| 久久综合色播五月| 国产精品你懂得| 国产精品欧美日韩久久| 国产九九视频一区二区三区| 国产麻豆日韩欧美久久| 国产综合欧美| 日韩午夜在线视频| 亚洲欧美电影在线观看| 国产精品视频在线观看| 国产精品一区久久久| 亚洲免费观看高清完整版在线观看熊| 国产视频自拍一区| 在线观看91精品国产麻豆| 激情亚洲网站| 亚洲一区二区三区涩| 欧美一区中文字幕| 国产一区二区三区在线播放免费观看| 在线观看国产一区二区| 亚洲第一在线综合在线| 亚洲一区二区三区激情| 亚洲欧美视频一区二区三区| 欧美精品一区在线播放| 一本大道久久精品懂色aⅴ| 欧美精品午夜| 国内精品免费午夜毛片| 国产日本欧洲亚洲| 最新日韩中文字幕| 国产精品视频精品| 欧美一区二区三区四区夜夜大片| 国产乱理伦片在线观看夜一区| 开元免费观看欧美电视剧网站| 亚洲欧美日本视频在线观看| 国产欧美在线播放| 亚洲视频1区2区| 欧美亚洲一区二区在线| 国产日韩一区二区| 国产欧美日韩精品一区| 亚洲欧洲综合| 亚洲视频一区二区免费在线观看| 亚洲美女少妇无套啪啪呻吟| 久久久久久国产精品mv| 国产精品成人久久久久| 亚洲综合精品四区| 一区二区精品在线| 国产在线麻豆精品观看| 亚洲精品少妇网址| 久久久视频精品| 欧美特黄a级高清免费大片a级| 欧美国产日韩在线观看| 亚洲欧美99| 欧美精品久久一区| 久久免费的精品国产v∧| 亚洲国产欧美久久| 国产精品日日摸夜夜添夜夜av| 久久一综合视频| 伊人婷婷欧美激情| 亚洲天堂免费观看| 亚洲黄色大片| 欧美日韩高清在线| 欧美在线视频全部完| 亚洲精品视频啊美女在线直播| 欧美日韩国产免费| 久久久精彩视频| 久久精品国产免费| 亚洲黄色在线视频| 久久国产精品一区二区| 亚洲欧美日韩在线不卡| 国产精品日韩二区| 日韩亚洲精品在线| 国产一区二区久久精品| 一区二区欧美日韩视频| 老鸭窝毛片一区二区三区| 亚洲精选在线| 久久精品噜噜噜成人av农村| 久久久久久久一区二区| 国产精品乱码| 久久人人精品| 欧美超级免费视 在线| 国产精品视频观看| 亚洲国产精品黑人久久久| 久久精品国产亚洲a| 亚洲欧洲免费视频| 久久国产黑丝| 亚洲一区日韩在线| 欧美va天堂va视频va在线| 亚洲精品乱码久久久久久| 99精品久久免费看蜜臀剧情介绍| 尤物九九久久国产精品的特点| 久久综合网色—综合色88| 欲香欲色天天天综合和网| 欧美日韩精品国产| 欧美激情第9页| 一本久道久久综合婷婷鲸鱼| 亚洲免费电影在线| 又紧又大又爽精品一区二区| 在线观看亚洲精品视频| 国产一区观看| 欧美性jizz18性欧美| 日韩一级免费| 国产视频精品va久久久久久| 久久精品91| 麻豆久久精品| 午夜精品久久久久久久久久久久久| 国产综合色精品一区二区三区| 国产精品热久久久久夜色精品三区| 欧美日韩成人综合在线一区二区| 免费亚洲电影在线|