日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
基于嵌入式TCP/IP協(xié)議棧的信息家電連接Internet單芯片解決方案
[1] [2]  下一頁
基于嵌入式TCP/IP協(xié)議棧的信息家電連接Internet單芯片解決方案
 更新時間:2008-8-16 21:11:55  點擊數(shù):12
【字體: 字體顏色

    摘要:以分析和實驗為基礎,研究了嵌入式TCP/IP協(xié)議棧SX-Stack的結構及運行原理,提出了使用SX-Stack構造單芯片嵌入式網絡服務器,將信息家電接入Internet的新方案。該服務器組成、構造方法和工作原理,并比較現(xiàn)有的使用PC/網關設備的接入方案,分析了該方案的優(yōu)點。單芯片嵌入式網絡服務器中SX-Stack與用戶應用程序的接口方法,用戶登錄軟件及信息家電監(jiān)測軟件的設計方法。

    關鍵詞:嵌入式TCP/IP 單芯片 嵌入式網絡服務器 信息家電 Internet

SX52BD是Ubicom公司推出的RISC結構的8位高性能CMOS微處理器,可以進行高速運算、靈活的I/O口控制和高效的數(shù)據(jù)操作。SX52BD具有4KB的EE/FLASH ROM的262字節(jié)的SRAM。與現(xiàn)有8位微處理器相比,其運算速率可達50MISP,加上優(yōu)化的多數(shù)為單時鐘周期的指令集,SX52BD吞吐量大為提高。SX52BD比常規(guī)MCU快20倍的運算速度、可靠的性能可重復編程的結構,使得精簡的TCP/IP能夠在其中可靠運行。

SX-Stack運行在以SX52BD為基礎的硬件平臺上,是一組可配置的多種Internet協(xié)議的組合。這些協(xié)議按照分層協(xié)議棧的方式精心組織,包括應用層的HTTP、DHCP、SMTP,傳輸層的TCP、UDP,網絡層的IP/ICMP、ARP,通過鏈路層和物理層(如Ethernet)進行Internet數(shù)據(jù)的交互。SX-Stack的結構如圖1所示。SX-Stack利用SX52BD的高速處理能力,按每次1字節(jié)的方式處理TCP/IP數(shù)據(jù)包。這樣,避免了在有限數(shù)量的RAM中緩存大量數(shù)據(jù),使得控制器可以處理比其內部RAM總線更多的數(shù)據(jù)包。

利用嵌入的SX-Stack,Webserver能夠通過Hypertext Transfer Protocol(HTTP)與任何瀏覽器通訊,能夠提供各種類型的資源,如HTML、圖片、PDF文件等。這些資源使用一種特殊的文件系統(tǒng)URI,被存放在容量為32KB的外部EEPROM中。這種文件系統(tǒng)可包含任意多的目錄,對URL的長度也沒有限制。

1 信息家電單芯片服務器方案的提出

從信息家電的遠程在線訪問的角度考慮,對信息家電監(jiān)測和控制時存在兩種情況:(1)遠程訪問時,信息家電的通信數(shù)據(jù)量不大,56Kbps的通信速率即可滿足要求;(2)信息家電對時實性的要求不高,其時延可以在1秒以上。所以,SX-Stack提供的功能和SX52BD的處理速率能夠滿足上述條件下信息家電對入Internet微處理器的要求。

在這種情況下,構造了家電網絡服務器XwebServer,其結構如圖2所示。XwebServer主要由三部分組成,即SX52BD微處理器、RTL8019AS以太網控制器、24LC256(E2PROM)。在SX52BD中運行用戶程序和SX-Stack;在E2PRO模塊存放XwebServer的各種Web資源;RTL9019AS是Ethernet控制器,負責SX52BD和Ethernet的數(shù)據(jù)傳遞。在家電已具備SPI(Serial Peripheral Interface)接口的條件下,使用家庭自動化總線HAB(Home Automation Bus)作為XwebServer與家電的接口,在HAB上使用的通信協(xié)議為自主開發(fā)的簡單家庭網絡協(xié)議SHNP(Simple Home Networks Protocol)。

圖3是使用XwebServer的接入方法與常規(guī)接入方法的比較。使用XwebServer的接入方案省卻了PC機或網關設備,在數(shù)據(jù)量不大的情況下,安全可以取代PC或網關設備。家電通過SPI接口與XwebServer連接,經由Ethernet接入住宅小區(qū)的信息服務中心。通過XwebServer家電具備了連接Internet的能力。

用戶自己開發(fā)的服務器應用程序需要放在應用層上才能運行。服務器應用程序是靠位于傳輸層TCP的Application Program Interface(API)來與下面各層進行數(shù)據(jù)交換的。在SX-Stack中存在若干個實質為子程序模塊的API函數(shù),應用程序必須通過這些函數(shù)將數(shù)據(jù)組合成符合TCP/IP格式的數(shù)據(jù)包。為了提供給用戶登錄程序和家庭電氣設備監(jiān)測控制軟件模塊更充分的程序空間,移除了與HTTP服務無關的軟件功能模塊和函數(shù),保留了HTTP、TCP、IP/ICMP。這些程序模塊足以使服務器運行,響應瀏覽器的要求。XwebServer的協(xié)議棧結構如圖4所示。

2 用戶登錄和家庭電氣設備監(jiān)測控制軟件模塊的設計

遠程瀏覽器完成TCP鏈接的初始化。服務器等待遠程瀏覽器的請求,是一個被動的設備。當接收到建立TCP鏈接的請求后,服務器建立一個由遠程TCP端口號和遠程IP地址組成的套接字,并使用TCP/IP棧中的API和這套接字,來識別隨后收到的來自遠程客戶機瀏覽器的數(shù)據(jù)包。

在用戶登錄前,遠程瀏覽器必須獲得XwebServer中的Web資源home.html,由此才能進行登錄和控制。GET為其請求數(shù)據(jù)包中的第一個詞,表示這個請求是用來接收Web資源的。XwebServer僅對HTTP請求的第一行Get/home.html/HTTP1.0進行檢查和解釋。因為除了數(shù)據(jù)外,所有的響應信息數(shù)據(jù)都是常量。服務器的響應數(shù)據(jù)包已經由程序定制好,存放在XwebServer中。響應的HTTP數(shù)據(jù)頭和資源一起存放在E2PROM中。服務器與瀏覽器的鏈接建立后,服務器檢查接收的請求數(shù)據(jù),然后調用E2PROM的程序模塊,將home.html的內部發(fā)送給遠程瀏覽器。Web頁的存儲范圍為0000H~7FF0H,大約32KB,而8字節(jié)的用戶名和8字節(jié)的密碼可以存放在外圍E2PROM存儲區(qū)未端(7FF0H~8000H)。E2PROM的資源分布如圖5所示。

在處理瀏覽器提交的數(shù)據(jù)信息時,按照以下兩個步驟進行程序設計:首先,服務器要根據(jù)遠程瀏覽器傳送過來的數(shù)據(jù)信息,決定服務器的HTTP服務的方式;其次,將Web資源發(fā)送給遠程瀏覽器或使用ProcessPostData函數(shù)來處理瀏覽器提交的數(shù)據(jù)。

在TCP連接的初始化完成后,在應用層的用戶登錄程序使用函數(shù)TCPAppRxData( )來接收傳輸層的數(shù)據(jù)。這個函數(shù)對數(shù)據(jù)包中收到的字節(jié)都調用一次。用戶程序首先檢查ASCII碼是P還是G以確定XwebServer對HTTP服務的方式。在服務器接收的數(shù)據(jù)包中,P表示以Post開始的用戶提交的數(shù)據(jù)信息第一個ASCII碼;G表示以Get開始的用戶請求Web資源的第一個ASCII碼,缺省的HTTP服務的方式是Get,即XwebServer響應遠程瀏覽器對Web資源的請求。程序通過設定標志位HTTP_METHOD來確定HTTP服務的方式。確定HTTP服務方式的流程如圖6所示。

    圖6中的ProcessPostData是處理提交數(shù)據(jù)的子程序。ProcessPostData主要由兩部分組成:一部分為登錄信息校驗和驗錄標志的設定;另一部分為監(jiān)控數(shù)據(jù)的獲得并送到SPI接口。登錄流程如圖7所示。程序必須在確認用戶成功登錄后才能對提交的控制數(shù)據(jù)進行處理,否則將錯誤指示信息err.htm發(fā)送給遠程瀏覽器。程序通過判斷數(shù)據(jù)包中提交數(shù)據(jù)區(qū)的name屬性來確定是登錄數(shù)據(jù)還是監(jiān)控數(shù)據(jù)。例如,在index.htm中,對于Username文本框,name="u";對于Password文本框,name="p"。

用戶在登錄和密碼文本框中輸入用戶名和密碼后提交登錄信息。校驗用戶登錄信息可通過兩種途徑:第一種途徑,系統(tǒng)上電復位后,先從E2PROM中取出用戶名和密碼存放在RAM中,當用戶程序接收到來自TCP數(shù)據(jù)包的登錄數(shù)據(jù)后,采用逐個字節(jié)比較的方法進行用戶信息的校驗;第二種途徑,當用戶程序接收到來自TCP數(shù)據(jù)包中的登錄數(shù)據(jù)后,再按字節(jié)從E2PROM中取出用戶名和密碼進行校驗。與第二種方法相比,第一種方法能夠滿足XwebServer對實時性的要求。為提高RAM資源的利用率,在校驗結束后,用戶程序釋放16個字節(jié)的RAM資源。

    處理監(jiān)控信息的流程如圖8所示.如果用戶成功登錄,就從數(shù)據(jù)區(qū)中取出監(jiān)控用的數(shù)據(jù),直接送到SPI接口,否則給出錯誤信息err.htm。用戶服務程序并不對數(shù)據(jù)區(qū)中的數(shù)據(jù)進行解釋,只是將其按原始的排列方式從SPI接口輸出。在整體數(shù)據(jù)流動的過程中,XwebServer起到了從以太網數(shù)據(jù)流到SPI接口數(shù)據(jù)流的轉換作用。

以太網作為接口,以SX52BD為硬件平臺,利用軟件化的嵌入式TCP/IP,能夠實現(xiàn)HTTP服務。SX-Stack在家電網絡接入Internet中的應用,為其接入Internet提供了一種無需額外的PC或網關設備的解決方案。這種低成本、高性能的方案,具有可靠、靈活的特點,適用于通訊速率不大于56Kbps、允許時延大于1秒、需要連接Internet的家庭自動化設備。用戶可以根據(jù)需要,按照本文提供的方法,構造自己的網絡服務器,可為普通的電氣設備或系統(tǒng)如公共服務設備、家庭醫(yī)療保健設備、工業(yè)自動化系統(tǒng)等,賦予接入Internet的能力。

  • 上一篇: 80C152單片機上HDLC通信規(guī)程中的應用
  • 下一篇: 第三代移動通信系統(tǒng)UMTS的網絡結構
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網友評論:(只顯示最新5條。)
    關于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網站

    網站經營許可證:浙B2-20080178-1