熟女俱乐部五十路二区av,又爽又黄禁片视频1000免费,国产卡一卡二卡三无线乱码新区,中文无码一区二区不卡αv,中文在线中文a

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于ARM處理器AT91S的M2M終端設計

基于ARM處理器AT91S的M2M終端設計

作者: 時間:2013-03-22 來源:網絡 收藏

數(shù)據的封裝和傳輸

通過GPRS進行數(shù)據的傳輸需要經過Internet網絡進行中轉,因而傳輸?shù)臄?shù)據封裝必須進行TCP/IP協(xié)議。文中利用軟件進行了數(shù)據封裝,需要傳輸?shù)臄?shù)據經過傳輸層UDP協(xié)議頭封裝,然后是IP協(xié)議頭的封裝,最后進行PPP協(xié)議的封裝。

MC35i將接收到的數(shù)據透明地傳輸?shù)絀nternet網絡中。通過Internet網絡路由器中轉,最終將數(shù)據傳輸?shù)奖O(jiān)控中心。接收端對接收到的數(shù)據按照相應的層次進行解析,從而確定數(shù)據的目標程序。

系統(tǒng)軟件采用分層的結構,從底到上分別為:串口驅動層(物理層)、PPP協(xié)議層(鏈路層)、IP協(xié)議層(網絡層)、UDP協(xié)議和ICMP層(傳輸層)以及應用層。在移植好的LwIP協(xié)議棧中,通過在各層中建立相應功能的線程,實現(xiàn)數(shù)據的封裝。底層軟件為上層軟件提供函數(shù)支持,上層軟件利用底層軟件完成應用程序的編寫和實現(xiàn)。軟件采用自底向上的方法逐步實現(xiàn)系統(tǒng)中各個函數(shù)的功能,各部分函數(shù)實現(xiàn)均采用模塊化的方法。每個任務對應一個模塊

對每個任務單獨進行設計后,最終由FreeRTOS操作系統(tǒng)統(tǒng)一管理,通過采用信號量和郵箱的方式實現(xiàn)多個任務之間的通信,軟件各部分主要函數(shù)之間的關系如圖3所示。

在MC35SerialISR()中將接收的數(shù)據存放到xQRxChars隊列中后,發(fā)送SemMC35Rx信號量來激活PPPRxTask()任務,通過對接收數(shù)據的解析,確定數(shù)據包的類型,然后由相應的函數(shù)對接收數(shù)據進行處理。

如果接收的數(shù)據是應用程序的數(shù)據,將由IPRx()函數(shù)判斷目標主機是否正確,再經過傳輸層解析數(shù)據從而判定對數(shù)據處理的應用程序。最后由應用程序解析數(shù)據并執(zhí)行相應的功能,如將數(shù)據通過串口發(fā)送到主機、向數(shù)據采集系統(tǒng)發(fā)送控制命令、接收數(shù)據采集系統(tǒng)的數(shù)據并發(fā)送等。當接收隊列中所有數(shù)據均處理完畢后,延時250ms如果還沒有接收到數(shù)據,則任務通過等待信號量SemMC35Rx將自己掛起。數(shù)據的發(fā)送過程是一個相反的過程。

應用程序根據需要的功能建立UDPTxTask()或ICMPTxTask()任務,并將數(shù)據發(fā)送到xAPPTxQ隊列中。相應的任務再調用IPTx()和PPPTx()函數(shù)進行數(shù)據的封裝并將數(shù)據發(fā)送到XqTxChar隊列中,從而喚醒MC35SerialISR()中斷程序將數(shù)據通過串口發(fā)送到MC35i中進行傳輸。為提高系統(tǒng)的實時性,本文中FreeRTOS采用可剝奪內核方式進行調度。采用FreeRTOS操作系統(tǒng)對任務進行管理簡化了軟件的編寫難度,同時提高了程序的可讀性和可移植性。

總結

GPRS 產品的無線數(shù)據傳輸以及遠程監(jiān)控系統(tǒng)是目前國內外研究的熱點。本文采用完全免費的操作系統(tǒng)和TCP/IP協(xié)議棧給出的系統(tǒng)設計方案具備成本低、性能好、可升級等優(yōu)點,為遠程監(jiān)控系統(tǒng)相關領域的數(shù)據傳輸提供了一個可行的設計方案。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉