一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看

探析嵌入式Web服務(wù)器的設計與實(shí)現

時(shí)間:2024-08-28 10:50:16 網(wǎng)絡(luò )工程畢業(yè)論文 我要投稿
  • 相關(guān)推薦

探析嵌入式Web服務(wù)器的設計與實(shí)現

  一、引言

  嵌入式Web服務(wù)器(Embedded Web Server,EWS)是指將Web服務(wù)器嵌入到現場(chǎng)測試和控制設備中,在相應的硬件平臺和軟件系統的支持下,使傳統的測試和控制設備轉變?yōu)榫邆淞艘訲CP/IP為底層通信協(xié)議,Web技術(shù)為核心的基于互聯(lián)網(wǎng)的網(wǎng)絡(luò )測試和控制設備。嵌入式Web服務(wù)器簡(jiǎn)化了傳統服務(wù)器的系統結構,在嵌入式設備上它同時(shí)實(shí)現信息傳輸和網(wǎng)絡(luò )接口的功能。嵌入式Web服務(wù)器基于HTTP協(xié)議運作,有標準的接口形式和通信協(xié)議。它可以向任何接入它所在網(wǎng)絡(luò )的合法用戶(hù)提供統一的基于瀏覽器方式的操作和控制界面。Web技術(shù)的開(kāi)放性和平臺的獨立特性能夠降低開(kāi)發(fā)難度,減少軟件系統和通信系統的設計維護工作量,提高了現場(chǎng)測試和控制設備的管理水平。

  二、嵌入式WEB服務(wù)器總體設計方案

  接入Internet有很多種接入方式:電話(huà)撥號接入、ISDN, ADSL、以太網(wǎng)接入等,其中以太網(wǎng)作為一種廉價(jià)、高效的Internet接入方式,已經(jīng)得到了非常廣泛的應用,本文的Internet接入采用以太網(wǎng)方式。

  將TCP/IP協(xié)議棧嵌入到單片機中,使用網(wǎng)絡(luò )控制芯片實(shí)現單片機的上網(wǎng)和數據傳輸。利用網(wǎng)絡(luò )單片機(嵌入了TCP/IP協(xié)議棧的單片機)可以實(shí)現很多功能,嵌入式Web服務(wù)器就是其中的一種。通過(guò)Web服務(wù)器,客戶(hù)端瀏覽器可以瀏覽這些設備的動(dòng)態(tài)信息,并且還可以實(shí)現與系統的交互功能。

  (一)嵌入式Web服務(wù)器的一般結構

  嵌入式Web服務(wù)器的設計通常以通用Web服務(wù)器系統結構為藍本,根據嵌入式系統的特性進(jìn)行優(yōu)化。嵌入式Web服務(wù)器的硬件系統包含了Web通信功能的微處理器或者微控制器系統,它可以和前端的應用系統直接集成在一起,也可以通過(guò)現場(chǎng)總線(xiàn)與應用系統相連。

  一個(gè)完整的硬件系統由微型處理器、FLASH存儲器、DRAM存儲器、網(wǎng)絡(luò )接口和前端應用系統硬件所組成。微型處理器負責全局的運行和管理,FLASH存儲器用來(lái)存儲實(shí)時(shí)操作系統的系統內核、TCP/IP協(xié)議棧、各種Web文檔;DRAM存儲器在系統運行時(shí)使用;網(wǎng)絡(luò )接口實(shí)現與Internet的連接;前端應用系統的硬件完成傳統意義上的應用功能。

  由于嵌入式系統硬件資源有限,嵌入式Web服務(wù)器的硬件結構不能很復雜,實(shí)時(shí)操作系統的系統內核、TCP/IP協(xié)議棧、各種Web文檔都必須存儲在FLASH中,這對軟件系統設計提出了較高的要求。嵌入式Web服務(wù)器應用系統的硬件結構如圖1所示:

  網(wǎng)絡(luò )接口

  微處理器

  SDRAM

  FLASH

  前端應用系統硬件

  圖1嵌入式W比服務(wù)器應用系統的硬件結構

  (二)系統的硬件設計方案

  LPC2132微控制器是所設計的嵌入式Web服務(wù)器的核心,一方面LPC2132微控制器內部要實(shí)現TCP/IP協(xié)議棧,并驅動(dòng)網(wǎng)絡(luò )接口控制器ENC28J60,經(jīng)耦合隔離變壓器H1102和以太網(wǎng)以實(shí)現Internet接入;另一方面,LPC2132微控制器又是相應控制系統的控制單元。

  由于以太網(wǎng)的廣泛使用,本文選擇了最為常用的Internet接入方式,即通過(guò)以太網(wǎng)接入Internet。由美國Microchip公司生產(chǎn)的以太網(wǎng)控制芯片ENC28J60是本設計所選擇的網(wǎng)絡(luò )接口控制器,它集成了介質(zhì)訪(fǎng)問(wèn)控制子層和物理層的功能,主要完成網(wǎng)絡(luò )接口層中數據幀的發(fā)送和接收。

  H1102是一款耦合隔離變壓器,用來(lái)對網(wǎng)絡(luò )上的脈沖進(jìn)行轉換和濾波。H1102聯(lián)接RJ45接頭,可以直接接入以太網(wǎng)。

  串行電平轉換模塊選用了Maxim公司出品的MAXSP3232E芯片。該芯片內部含有倍增電路和轉換電路,只需+5V電源供電即可實(shí)現TTL電平到RS232C電平的轉換。RS232串口一方面是作為開(kāi)發(fā)調試用的,一方面可以作為相應的通信應用。

  I/O口擴展包括系統的LED顯示電路、JTAG調試電路以及其他測試電路等。

  (三)系統的軟件設計方案

  Web服務(wù)器是在嵌入式TCP/IP協(xié)議棧的基礎上實(shí)現的一種應用程序。從系統軟件工作過(guò)程來(lái)看,可將系統分三部分:第一部分,以太網(wǎng)控制器驅動(dòng)程序的實(shí)現;第二部分:嵌入式TCP/IP協(xié)議的實(shí)現,這部分內容在第一部分的基礎上,結合系統具體環(huán)境,對標準TCP/IP協(xié)議進(jìn)行簡(jiǎn)化并在A(yíng)RM7單片機上進(jìn)行移植;第三部分:應用層部分,通過(guò)嵌入式TCP/IP協(xié)議對用戶(hù)數據進(jìn)行收發(fā)處理。這里是在應用層實(shí)現HTTP協(xié)議來(lái)完成Web服務(wù)器功能的。

  所以系統軟件設計部分主要包括了以太網(wǎng)控制器的驅動(dòng)程序、嵌入式TCP/IP協(xié)議棧以及動(dòng)態(tài)web網(wǎng)頁(yè)的實(shí)現等幾個(gè)模塊:

  (1)以太網(wǎng)控制器驅動(dòng)程序是指LPC2132微控制器對ENC28J60芯片的驅動(dòng)、控制過(guò)程。

  (2)在LPC2132微控制器內部嵌入TCP/IP協(xié)議棧是系統實(shí)現的關(guān)鍵,它主要包括了ARP, ICMP, IP, TCP和HTTP協(xié)議的設計與實(shí)現。

  (3)動(dòng)態(tài)網(wǎng)頁(yè)的實(shí)現。使用CGI技術(shù),可以實(shí)現動(dòng)態(tài)信息的交換,從而達到遠程監視、控制的目的。

  軟件設計中的另一任務(wù)是確定開(kāi)發(fā)語(yǔ)言。對于嵌入式系統來(lái)說(shuō),掌握匯編語(yǔ)言的編程是至關(guān)重要的,即使使用高級語(yǔ)言來(lái)進(jìn)行編程,通過(guò)閱讀編譯出來(lái)的匯編代碼,也可以發(fā)現高級語(yǔ)言編程時(shí)需要優(yōu)化的地方,從而提高高級語(yǔ)言所編寫(xiě)代碼的執行效率。同時(shí)嵌入式系統的資源緊張,要合理利用資源,提高運行效率,關(guān)鍵部分、時(shí)間要求嚴格的部分還是需要使用匯編語(yǔ)言來(lái)完成。但匯編語(yǔ)言在代碼編寫(xiě)和維護上效率較低,通用性不強,在復雜的項目上還是選用高級語(yǔ)言比較合理。在本設計中,采用匯編語(yǔ)言編寫(xiě)ARM7內核的啟動(dòng)代碼(boot loader),其它的程序采用C語(yǔ)言作為設計語(yǔ)言。它有很明顯的優(yōu)勢:C語(yǔ)言是一種編譯型程序設計語(yǔ)言,它兼顧了多種高級語(yǔ)言的特點(diǎn),有豐富的庫函數、運算速度快,而且可以直接實(shí)現對系統硬件的控制,較匯編語(yǔ)言有更好的可讀性。

  三、嵌入式Web服務(wù)器的實(shí)現

  (一)主程序流程

  在主程序流程中,主要設計實(shí)現包括兩大部分:第一是對接收到的以太網(wǎng)數據幀進(jìn)行解包:第二則是對要發(fā)送的數據進(jìn)行封裝并發(fā)送。

  系統初始化模塊主要包括了LPC2I32微控制器的初始化、網(wǎng)絡(luò )接口芯片ENC28J60的初始化、TCP/IP協(xié)議棧中各標志的初始化等:

  ARP處理模塊主要完成接收ARP請求并發(fā)送ARP響應;

  ICMP處理模塊主要完成接收ICMP回顯請求并發(fā)送ICMP回顯響應;

  TCP數據處理模塊主要完成對TCP數據報及HTTP數據的處理。

  當程序運行時(shí),首先對系統初始化,這時(shí)系統處于等待狀態(tài),直到有數據幀到達。ENC28J60接收完數據幀以后,首先去除幀頭,然后判斷該數據幀的報文是否為ARP包,若是,則進(jìn)行ARP數據包處理,若不是,則檢查數據報頭,看IP數據包的報文是否為ICMP數據包,若是ICMP數據包,則轉到ICMP數據處理子程序。若不是ICMP數據包,就繼續進(jìn)行判斷,看是否為T(mén)CP數據包,若為T(mén)CP數據包則轉入TCP數據處理子程序,若此時(shí)即不是ICMP數據包也不是TCP數據包,則將該包丟棄。

  子程序的設計是為了完成TCP/IP協(xié)議體系的每一層的功能的,TCP/IP協(xié)議的每一層都是相互聯(lián)系的,但也是相對獨立的,具體由下面7個(gè)部分實(shí)現:以太網(wǎng)驅動(dòng)程序、以太網(wǎng)層程序、ARP協(xié)議處理程序、IP協(xié)議處理程序、ICMP協(xié)議處理程序、TCP協(xié)議處理程序、HTTP協(xié)議處理程序。

  (二)嵌入式Web服務(wù)器的實(shí)現

  1、網(wǎng)絡(luò )接口的實(shí)現

  網(wǎng)絡(luò )接口是Web服務(wù)器與外界交流的接口。操作系統提供網(wǎng)絡(luò )協(xié)議棧的支持,最主要是TCP/IP以及socket套接字系統函數庫。網(wǎng)絡(luò )接口使用操作系統提供的socket函數族建立可遠程通信的套接字。它分兩部分,一部分在系統初始化的時(shí)候建立,另一部分在HTTP引擎模塊里面實(shí)現。網(wǎng)絡(luò )接口模塊的功能描述為:首先建立socket。socket是BSO Unix提出的進(jìn)程間通信(IPC)機制,它是一種雙向的通信接口,使得可以在兩個(gè)不同進(jìn)程(通常是網(wǎng)絡(luò )上的不同節點(diǎn)的進(jìn)程)之間可以直接通信。

  2、中心處理模塊

  中心處理模塊是嵌入式Web服務(wù)器的核心。它進(jìn)行全局的控制和管理。它通過(guò)accept()接收HTTP請求,調用read將請求接收到本地,然后進(jìn)行請求解析。根據請求的內容,判斷是屬于動(dòng)態(tài)內容還是靜態(tài)內容,如果是動(dòng)態(tài)內容則調用相應的動(dòng)態(tài)處理函數,如果是靜態(tài)內容則訪(fǎng)問(wèn)VFS獲得相應的內容。然后將獲得的內容包裝成為HTTP響應,返回給客戶(hù)端。中心處理模塊還實(shí)現控制管理信息和容錯機制。

  3、動(dòng)態(tài)文件預處理器

  Web服務(wù)器必須有交互能力才是有實(shí)際意義的服務(wù)器程序。目前大多數的Web服務(wù)器都是利用CGI (Common Gateway Interface,通用網(wǎng)關(guān)接口)來(lái)實(shí)現應用程序的接口。本論文從嵌入式系統的角度出發(fā),實(shí)現了一種內部的應用程序接口。

  動(dòng)態(tài)文件預處理器所實(shí)現的功能是將普通的Web動(dòng)態(tài)資源轉變成為可編譯的函數代碼。設動(dòng)態(tài)文檔為f.dtm,它包含內容{x, f(a)}。其中x為靜態(tài)的內容,F()為應用程序,a為通過(guò)解析HTTP請求得出的參數。動(dòng)態(tài)文件預處理器將f.dtm轉變成為f_dtm.c。它的內容為(f_dtm ( )},它是一個(gè)函數,實(shí)現功能為輸出{x', f(a)}.其中f(a)是f(a)的實(shí)際輸出,而x'是輸出靜態(tài)內容的動(dòng)作。

  四、嵌入式Web服務(wù)器的主要應用

  嵌入式Web服務(wù)器是應用在嵌入式系統上的Web服務(wù)器架構。它的主要應用是設備管理和應用程序的網(wǎng)絡(luò )擴展。

  嵌入式Web服務(wù)器作為一個(gè)后臺程序直接在嵌入式設備上運行,用戶(hù)通過(guò)網(wǎng)絡(luò )對設備配置、控制、監測,保證設備安全、有效地運作。

  Web接口使得用戶(hù)可以在任何一臺有互聯(lián)網(wǎng)接入能力的帶有Web瀏覽器的設備訪(fǎng)問(wèn)到該嵌入式設備。Web服務(wù)器提供應用程序接口可以擴展Web的應用。這種設備管理方式不僅起到監測、控制的功能,而且根據設備的特點(diǎn)可以更加入性化和智能化。它使對遠程設備的操作從監控(Monitor)變成為管理(Manage )。其中基于嵌入式WEB服務(wù)器的視頻監控系統現已成為視頻監控系統的主流技術(shù),在嵌入式系統中集成嵌入式 Web視頻服務(wù)器,采用嵌入式實(shí)時(shí)多任務(wù)操作系統;內置一個(gè)嵌入式Web服務(wù)器。攝像頭送來(lái)的視頻信號數字化后由高效壓縮芯片壓縮,通過(guò)內部總線(xiàn)送到內置的Web服務(wù)器,網(wǎng)絡(luò )上用戶(hù)可以直接用瀏覽器觀(guān)看Web服務(wù)器上的攝像機圖像,授權用戶(hù)還可以控制攝像機、云臺、鏡頭的動(dòng)作或對系統配置進(jìn)行操作。

  另一個(gè)應用是應用程序網(wǎng)絡(luò )擴展。Web服務(wù)已成為支撐現代應用程序技術(shù)和系統核心組件,現今約87%的企業(yè)用戶(hù)都希望為他們的程序添加上基于Web的用戶(hù)接口。嵌入式Web服務(wù)器很好地提供了Internet網(wǎng)絡(luò )的接口,將應用程序和Web接口結合起來(lái),是應用程序網(wǎng)絡(luò )擴展的解決方案。

  參考文獻:

  1嵌入式Web服務(wù)器的設計與實(shí)現宋凱 計算機工程與設計 2009/04

  2嵌入式Linux下WEB服務(wù)器的設計與實(shí)現 吳玉成 數據通信 2008/06

  3基于A(yíng)RM-LINUX的嵌入式Web服務(wù)器設計 梁銀會(huì ) 成都信息工程學(xué)院學(xué)報 2008/05

【探析嵌入式Web服務(wù)器的設計與實(shí)現】相關(guān)文章:

基于Web的嵌入式數控系統實(shí)現03-07

郵件服務(wù)器設計與實(shí)現03-08

短信服務(wù)器的設計與實(shí)現03-08

基于嵌入式Web服務(wù)器的遠程故障診斷系統03-18

刑罰實(shí)現探析03-18

Web搜索引擎的智能搜索設計與實(shí)現03-08

嵌入式MPEG—4解碼系統的設計與實(shí)現03-19

面向網(wǎng)絡(luò )測試的嵌入式系統設計與實(shí)現03-07

嵌入式現場(chǎng)智能顯示系統的設計與實(shí)現03-07

探析移動(dòng)網(wǎng)絡(luò )監控系統的設計與實(shí)現03-20

一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看