新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Intemet與GSM的雙網遠程監控系統設計

        Intemet與GSM的雙網遠程監控系統設計

        作者: 時間:2009-09-21 來源:網絡 收藏

        網絡接口模塊中的以太網接口芯片為10/100M自適應以太網控制芯片DM9000。GPRS無線模塊選用法國Wavecom公司的Q2403A,雙波段(900/1800 MHz)工作,支持通用的AT命令。串口采用標準RS232接口。在小擴展板上具有JTAG口轉并口電路的JTAG調試模塊,用并口線將該模塊與主機的并口相連,同時在主機上運行協議轉換軟件,就能夠進行代碼下載、仿真調試和Flash ROM固化等工作。在本系統目標板的Bootload-er階段,用于Bootloader的調試和燒寫。

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

        2 系統的軟件
        2.1 系統的嵌入式軟件結構
        整個系統軟件結構從下到上大體可分為3個層次,如圖3所示:底層的Bootloder、嵌入式Linux內核以及系統應用程序。

        Bootloader移植的是廣泛支持PowerPC、MIPS、X86、、XScale等諸多常用系列處理器的u-boot。
        嵌入式Linux操作系統的內核源代碼開放且精簡、速度快、可靠性高、功能強大,可以根據需要對內核進行定制。嵌入式Linux內核是整個軟件系統的主體,它不僅為應用程序提供真正的多任務運行環境,還提供強大的硬件驅動、網絡和文件系統支持。本系統采用2.6.22版本的嵌入式Linux內核和 Yaffs根文件系統。Web服務器選用的是適合嵌入式系統的Boa,為了功能的擴展和大數據量的傳輸的存儲,移植了適合嵌入式系統的數據庫 sqlite。
        另外,嵌入式Linux具有一套完整的免費交叉編譯環境,利用S3C2410能實現低成本的設計并開發出滿足自己需要的嵌入式系統。該系統的開發主要是采用NFS網絡文件系統的交叉開發模式。用NFS方式建立宿主機和開發板的通信,在開發調試階段利用NFS服務,在內核啟動過程掛接NFS網絡文件系統,這樣不用頻繁地寫入Flash,縮短開發周期。通過Minicom設置,監視串口工作狀態,接收顯示串口收到的信息。
        2.2 軟件的開發
        軟件開發包括以下5個方面:相關驅動的開發,串口數據通信程序的開發,靜態頁面的開發,CGI程序的開發,無線網絡監控收發短信息程序的開發。
        嵌入式Linux設備文件主要分為字符設備、塊設備和網絡設備3種類型。根據課題需要主要針對DM9000網卡驅動和Nand Flash的驅動進行改寫,以及對LED字符設備的驅動開發。然后將其編譯進內核,實現相應設備的驅動。
        在嵌入式Linux系統中訪問串口設備要把串口看作是一個設備文件,用戶可以使用文件操作函數實現對串口的基本操作:如用open()函數打開串口,用 read()、write()來讀/寫串口,操作完成后用close()關閉串口等。對串口的設置包括波特率設置、奇偶校驗位、停止位和模式設置。對串口的設置主要是設置struct termios()結構中各成員的值。在讀串口程序中使用select函數實現多路復用式串口讀寫。串口0和串口1分別與GPRS模塊和氣象儀連接。
        用html語言對靜態頁面的開發,在主界面中采用ht-ml的框架技術,具有以下優點:頁面結構清晰;功能列表放在左邊,系統功能一目了然;便于頁面跳轉;安全性高,不管提交的表單數的方式是GET方式還是POST方式,在IE地址欄都不會顯示出相關信息,保證了數據傳遞的安全性。
        采用瀏覽器/服務器(B/S)通信模式,利用動態網頁技術CGI,使得監控端能直觀地對現場進行集中監控。一般來講,CGI程序可以分為3 個部分:解碼部分,即對從客戶端獲取的諸多環境變量進行分析,得到支持CGI程序運行的必要信息,解碼屬于CGI編程范疇;功能部分,即利用得到的信息完成CGI程序所要實現的功能;輸出部分,即將運行的結果返回服務器,最終返回給客戶端。
        無線網絡監控收發短信息的開發,對模塊短信息格式的設定、傳送回報的打開,以及短消息的讀取和刪除等是通過AT指令完成的。AT指令都是以 AT開始,CR>結束,而AT指令回應的開始與結束都是以CR>結束。這是串口編程接收數據與發送數據標志。如果AT命令的語法有錯誤,GSM就返回ER-ROR。用手機實現監控的GSM程序流程如圖4所示。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 辰溪县| 平阴县| 宁晋县| 富裕县| 襄城县| 武功县| 河间市| 汉阴县| 甘谷县| 澳门| 呼和浩特市| 行唐县| 麟游县| 会同县| 肥乡县| 宾川县| 仙居县| 普洱| 常德市| 白城市| 石棉县| 和林格尔县| 绥中县| 蓝山县| 阿克| 辽阳市| 武冈市| 青河县| 铁岭市| 徐汇区| 胶州市| 永城市| 嵩明县| 南木林县| 太康县| 仙桃市| 洮南市| 凤山市| 永昌县| 正阳县| 无棣县|