基于Cortex-M3的車(chē)輛通訊監(jiān)控終端的設(shè)計(jì)與實(shí)現(xiàn)
3 軟件設(shè)計(jì)
本文引用地址:http://www.ex-cimer.com/article/233870.htm車(chē)載終端軟件包括啟動(dòng)引導(dǎo)程序、操作系統(tǒng)和應(yīng)用程序三部分。引導(dǎo)程序在設(shè)備加電后首先運(yùn)行,完成關(guān)鍵硬件設(shè)備的初始化,建立內(nèi)存空間映射,并從存儲(chǔ)空間加載操作系統(tǒng)和文件系統(tǒng)到運(yùn)行內(nèi)存。然后把CPU的控制權(quán)交給操作系統(tǒng),由操作系統(tǒng)啟動(dòng)應(yīng)用程序的運(yùn)行[6] 。應(yīng)用程序完成車(chē)載終端應(yīng)用軟件的功能。
本次開(kāi)發(fā)的是典型的嵌入式系統(tǒng),設(shè)計(jì)人員需要完成的工作開(kāi)發(fā)的硬件、軟件、算法、測(cè)試等多個(gè)環(huán)節(jié),所有環(huán)節(jié)有效的配合才能保證整個(gè)項(xiàng)目的順利進(jìn)展,設(shè)計(jì)中用到的Python腳本語(yǔ)言具有面向?qū)ο?、跨平臺(tái)、高效、可移植性強(qiáng)等特點(diǎn),可快速開(kāi)發(fā)腳本程序,大大簡(jiǎn)化開(kāi)發(fā)與測(cè)試工作。基于此,本次設(shè)計(jì)用Python的2.7.6版本的開(kāi)發(fā)工具,函數(shù)庫(kù)包括兩類(lèi):標(biāo)準(zhǔn)庫(kù)和大量的第三方庫(kù)[7] 。
通訊與定位功能程序?qū)儆趹?yīng)用程序,是本次設(shè)計(jì)的核心部分,其中包括了通訊協(xié)議的設(shè)計(jì)。二合一通訊模塊GM862-GPS流程圖設(shè)計(jì)如圖4所示。
程序設(shè)計(jì)為: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): #文件寫(xiě),返回字符串
def ini_io(): #Telit I/O初始化
def ini_telit(): #Telit初始化
def send_sms(to, text): #SMS 發(fā)送功能返回 1/0
def door_sms(str): # SMS 處理; 返回字符串
def info_gps(): #立即獲取GPS 信息;返回字符串
def info_gps1(): #1.25 min獲取GPS 信息;返回字符串
def handle_status(sta): #獲取Telit I/O狀態(tài);返回?cái)?shù)據(jù)
def report_schedule(temps): #定期巡檢
def check_self(): #檢查GSM, GPS, EEPROM,如正常返回NONE
def alarm(temps): #報(bào)警處理
def ag_test(): #老化測(cè)試
3.1 SMS短信命令格式定義
無(wú)線通信與定位模塊(GM862-GPS)與服務(wù)器的通訊通過(guò)SMS短信完成。通訊協(xié)議設(shè)計(jì)符合如下要求:
● 所有消息以文本格式
● 所有消息由常見(jiàn)的可打印ASCII字符組成,比如:' 123abcABC() #& '。
● 每條消息不超過(guò)140字符
● 所有信息、命令和消息反饋包含在同一條消息里,格式如表1所示,命令標(biāo)識(shí)符如表2所示
CAAC標(biāo)示符:車(chē)輛CAN 報(bào)警信息工作流程如圖5所示。
報(bào)警短信處理程序?yàn)椋?/p>
import GPIO
import MDM
import SER
import MOD
import GPS
import G
from w_subf import *
def smsinf_cat(tempinf): #處理來(lái)自服務(wù)器的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):
光耦相關(guān)文章:光耦原理
萬(wàn)用表相關(guān)文章:萬(wàn)用表怎么用
數(shù)字通信相關(guān)文章:數(shù)字通信原理
通信相關(guān)文章:通信原理
波段開(kāi)關(guān)相關(guān)文章:波段開(kāi)關(guān)原理
斷路器相關(guān)文章:斷路器原理
高壓真空斷路器相關(guān)文章:高壓真空斷路器原理 漏電斷路器相關(guān)文章:漏電斷路器原理
評(píng)論