• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 面向智能家居的嵌入式傳感網網關的研究與設計

    面向智能家居的嵌入式傳感網網關的研究與設計

    作者: 時間:2011-04-08 來源:網絡 收藏


    4 家庭軟件
    4.1 構建Linux操作系統
    系統硬件平臺與功能應用之間,需要專門的負責管理存儲器分配,中斷處理以及任務調度等功能的軟件模塊,這就是操作系統。操作系統是用來支持嵌入式應用的系統的軟件,包括硬件相關的底層驅動,系統內核,通信協議,圖形用戶界面等。
    本文的網關系統是WSN和Internet,GSM互聯的通信應用,主要完成異構網絡之間的通信和控制,因此需要選擇實時的操作系統。在眾多的嵌入式實時操作系統中,從開發成本,軟件支持和代碼開放的角度考慮,本文將采用Linux操作系統作為網關的系統的操作系統。
    4.2 建立交叉編譯環境
    交叉編譯就是在一個平臺上生成另一個平臺上可以執行的代碼。這里的平臺包括體系結構和操作系統。同一體系結構上可以運行不同操作系統。同樣,同一個操作系統也可以在不同的體系結構上運行。
    本文是在裝有Ubuntu 9.10(基于X86架構的Linux操作系統)的PC機上為網關系統建立了基于ARM9的交叉編譯環境。建立之后,就可以在PC機上對將在網關系統上運行的應用程序進行編譯,從而生成可以在網關系統上運行的可執行代碼,最后下到網關系統上。這也就是目前嵌入式程序開發的宿主機/目標機(HOST/TARGET)模式。
    Linux交叉編譯環境的內容,主要分為4個部分:GCC編譯器(C語言編譯器),二進制工具包(Binutils),標準C庫(Glibc)和Linux內核頭文件。Glibc和GCC都有很多版本,需要根據實際需要選擇合適的版本。
    4.3 網關應用程序
    本次網關系統的應用軟件架構圖4所示。其主要功能是依據器配置文件,分類解析WSN中的數據,為用戶提供Socket數據服務和XML-RPC遠程調用服務。其工作流程是:網關程序啟動以后,從XML文件夾中解析所有的器配置文件;監聽串口數據,利用器配置文件解析數據生成XML數據流;創建Socket服務器,等待客戶端數據請求,提供XML格式的Socket服務;創建XML-Socket遠程調用服務器,完成用戶的XML請求。

    本文引用地址:http://www.czjhyjcfj.com/article/150878.htm


    程序思路如圖5所示:網關程序啟動,完成參數初始化,解析XML文件夾下的所有傳感器配置文件,創建3個類的實例。4個任務隊列。Serialcomm類創建兩條線程用讀串口和寫串口,這樣可以保證數據的實時性。基于同樣的道理,XMLParser類和XMLComm類也是雙線程并行工作。這樣就組成了從WSN和Internet的上行通道(圖5中的虛線表示),以及Internet到WSN的下行通道(圖5中的粗線表示)。

    linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 井冈山市| 涟水县| 揭东县| 钟祥市| 吉隆县| 康平县| 德钦县| 潮州市| 利川市| 永春县| 黔西| 景德镇市| 金乡县| 比如县| 来凤县| 巧家县| 二手房| 弋阳县| 乐平市| 安远县| 恩施市| 旬阳县| 鹤山市| 东阿县| 鲁山县| 赤峰市| 金山区| 红原县| 塔城市| 全椒县| 湾仔区| 新河县| 贡觉县| 正定县| 南昌县| 阿城市| 巴楚县| 台中县| 尼玛县| 越西县| 德令哈市|