新聞中心

        EEPW首頁 > 汽車電子 > 設計應用 > 基于Cortex-M3的車輛通訊監控終端的設計與實現

        基于Cortex-M3的車輛通訊監控終端的設計與實現

        ——
        作者:李旭東 時間:2014-02-26 來源:電子產品世界 收藏

          3 軟件設計

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

          車載終端軟件包括啟動引導程序、操作系統和應用程序三部分。引導程序在設備加電后首先運行,完成關鍵硬件設備的初始化,建立內存空間映射,并從存儲空間加載操作系統和文件系統到運行內存。然后把CPU的控制權交給操作系統,由操作系統啟動應用程序的運行[6] 。應用程序完成車載終端應用軟件的功能。

          本次開發的是典型的嵌入式系統,設計人員需要完成的工作開發的硬件、軟件、算法、測試等多個環節,所有環節有效的配合才能保證整個項目的順利進展,設計中用到的Python腳本語言具有面向對象、跨平臺、高效、可移植性強等特點,可快速開發腳本程序,大大簡化開發與測試工作。基于此,本次設計用Python的2.7.6版本的開發工具,函數庫包括兩類:標準庫和大量的第三方庫[7]

          通訊與定位功能程序屬于應用程序,是本次設計的核心部分,其中包括了通訊協議的設計。二合一通訊模塊GM862-GPS流程圖設計如圖4所示。

          程序設計為:W_main 主程序、W_sms短信處理功能程序、W_subf子功能程序和全局變量定義文件。

          import GPIO
          import MDM
          import SER
          import MOD
          import GPS
          import G
          def filer(x): #文件讀,返回字符串
          def filew(x,s): #文件寫,返回字符串
          def ini_io(): #Telit I/O初始化
          def ini_telit(): #Telit初始化
          def send_sms(to, text): # 發送功能返回 1/0
          def door_sms(str): # 處理; 返回字符串
          def info_gps(): #立即獲取GPS 信息;返回字符串
          def info_gps1(): #1.25 min獲取GPS 信息;返回字符串
          def handle_status(sta): #獲取Telit I/O狀態;返回數據
          def report_schedule(temps): #定期巡檢
          def check_self(): #檢查GSM, GPS, EEPROM,如正常返回NONE
          def alarm(temps): #報警處理
          def ag_test(): #老化測試

          3.1 短信命令格式定義

          無線通信與定位模塊(GM862-GPS)與服務器的通訊通過SMS短信完成。通訊協議設計符合如下要求:

          ● 所有消息以文本格式

          ● 所有消息由常見的可打印ASCII字符組成,比如:' 123abcABC() #& '。

          ● 每條消息不超過140字符

          ● 所有信息、命令和消息反饋包含在同一條消息里,格式如表1所示,命令標識符如表2所示

          CAAC標示符:車輛CAN 報警信息工作流程如圖5所示。

          報警短信處理程序為:

          import GPIO
          import MDM
          import SER
          import MOD
          import GPS
          import G
          from w_subf import *
          def smsinf_cat(tempinf): #處理來自服務器的sms return NONE
          def CB_sms(tempsim,tempinf): #處理CB命令sms; return NONE
          def AC_sms(tempsim,tempinf): #處理AC命令sms; return NONE
          def handle_sms(tempsm): 處理短信命令; return NONE
          def handle_miss():
          def service_tool(tempc):

        光耦相關文章:光耦原理


        萬用表相關文章:萬用表怎么用


        數字通信相關文章:數字通信原理


        通信相關文章:通信原理


        波段開關相關文章:波段開關原理


        斷路器相關文章:斷路器原理


        高壓真空斷路器相關文章:高壓真空斷路器原理
        漏電斷路器相關文章:漏電斷路器原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 边坝县| 宁化县| 鄯善县| 荥阳市| 茶陵县| 赣榆县| 广水市| 湾仔区| 宣城市| 漳浦县| 乐山市| 黑水县| 象州县| 丹寨县| 黎平县| 金昌市| 秦安县| 中卫市| 陆良县| 常德市| 射洪县| 洛宁县| 汝阳县| 东乌珠穆沁旗| 普安县| 陆丰市| 唐山市| 山东| 祁东县| 湟中县| 宜春市| 望谟县| 平乡县| 芜湖县| 龙陵县| 皮山县| 灵武市| 台湾省| 凉山| 大城县| 大厂|