新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于CDMA的車載終端數據通信實現

        基于CDMA的車載終端數據通信實現

        作者: 時間:2010-12-22 來源:網絡 收藏


        數據傳輸的軟件設計

        終端與監控中心以報文形式交互數據,報文包括數據包(采集的數據信息)、心跳包(定時發送,以維持網絡連接)以及校時請求,以上均由終端主動發起,監控中心回復。數據子程序的流程如圖3。
        3.jpg
        圖3 數據流程圖

        根據流程圖可知,發送數據后等待監控中心的回復消息,設置等待時間,若超時還無回復消息,則退出等待;下次發送數據時重新發送。

        數據傳輸實例

        終端發送的數據包如下:

        01780102000146003030407 5345460008184101641000105 03010701221632303903.6741N1215 3.1326E27990357079425-70-66-632 004070031040828531405011144 1801194100068722100694210807 02200906902012

        數據包中0178為報文長度;01為版本號;02為命令字;0001為數據包序列號;460030304075345為UIM卡號;460008184101641為SIM卡號;00010503為系統工作狀態字;01為后面跟1條數據(每條長度126)。

        0701221632303903.6741N12153.13 26E27990357079425-70-66-63200407003104082853140501114 418011941000687221006942 1080702200906902012為一條數據,依次為時間、經緯度、C網質量參數和G網質量參數。

        注意事項

        拆包現象

        模塊支持在TCP通道一次發送1024字節數據,但模塊內部發送緩沖區為536字節,使用+ZIPSEND命令一次發送1024字節數據時,發送的1024 字節數據拆分為2條socket數據先后傳送給監控中心服務器。可通過降低一次發送的數據量來避免此現象,即一次傳輸不多于536字節。

        連包現象

        如果兩條+ZIPSEND指令時間間隔過小,或前一包數據還未發送成功時模塊收到新的數據發送命令,則模塊把兩條指令中的數據合并為一條socket數據發送。此時,可以從兩方面解決此問題:一是模塊發送端每發送一個數據包后,等待監控中心返回確認消息后再繼續其他工作,這樣只能最大限度地防止上述現象的發生;另一方面是在監控中心接收端對上述現象進行容錯處理。

        此外,如果監控中心發送兩條數據的時間間隔太短,模塊接收數據時會出現中心發送的兩條數據合并,以+ZIPRECV消息從串口返回,終端處理TCP數據時要考慮此問題。

        異步消息的返回

        模塊返回的異步消息主要為TCP通道返回的數據。該消息的返回格式在前文中已說明。由于異步消息返回時間的不確定性,該消息會以兩種方式從串口輸出。一是單獨返回。二是向模塊發送AT指令后,異步消息隨該指令的返回值一同返回,例如,當發AT指令查詢撥號連接狀況時,模塊在TCP通道收到數據,則返回如下:rn+ZPPPSTATUS:OPENEDrnrnOK rn+ZIPRECV:1,24,002401810 000070312120016rn。在接收和處理異步數據時應充分考慮異步消息的這兩種返回情況,以免丟失數據。

        結語

        本文詳細論述了如何通過CDMA模塊MG815+的數據傳輸功能實現車載終端與監控中心的,并給出了軟件設計流程。最后對實測過程中遇到的問題提出相應解決方案,這對相關開發人員有很大的參考價值

        本文引用地址:http://www.104case.com/article/156868.htm

        cdma相關文章:cdma原理



        上一頁 1 2 3 下一頁

        關鍵詞: 通信

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 哈巴河县| 昌乐县| 忻城县| 尤溪县| 贡山| 阿图什市| 桑植县| 大姚县| 灵寿县| 武平县| 浦县| 罗山县| 靖安县| 宁德市| 大冶市| 讷河市| 凉山| 南陵县| 博野县| 岳普湖县| 延川县| 华阴市| 辰溪县| 康保县| 江北区| 靖江市| 江安县| 交口县| 常宁市| 德令哈市| 潮州市| 昭苏县| 武川县| 南川市| 和田县| 塔河县| 新巴尔虎左旗| 旬邑县| 佛坪县| 文山县| 凤庆县|