www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于ARM和eCos的 嵌入式WEB服務(wù)器設(shè)計(jì)

引 言
    隨著現(xiàn)代通信技術(shù)和網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,以太網(wǎng)技術(shù)也越來(lái)越成熟,特別是基于TCP/IP通信協(xié)議的Web技術(shù)得到了廣泛應(yīng)用。我們可以用微控制器加以太網(wǎng)接口芯片,取代PC機(jī)進(jìn)行現(xiàn)場(chǎng)控制,組成嵌入式Web Serv-er系統(tǒng)?,F(xiàn)場(chǎng)傳感器自動(dòng)跟蹤各監(jiān)測(cè)點(diǎn)的信息,把檢測(cè)到的數(shù)據(jù)存儲(chǔ)在非易失性存儲(chǔ)器中,并及時(shí)發(fā)布到互聯(lián)網(wǎng)上;相關(guān)的工作人員就可以通過(guò)Web技術(shù)對(duì)設(shè)備進(jìn)行遠(yuǎn)程控制、管理和維護(hù),從瀏覽器上直接監(jiān)控現(xiàn)場(chǎng)設(shè)備的運(yùn)行,這樣就大大提高了生產(chǎn)效率和管理水平。
    為了實(shí)現(xiàn)Web服務(wù)器的功能,嵌入式操作系統(tǒng)和一個(gè)可實(shí)現(xiàn)的TCP/IP協(xié)議棧是必需的,因此對(duì)嵌入式處理器提出了更高的要求。與傳統(tǒng)的8/16位單片機(jī)相比,ARM核處理器在運(yùn)算速度、功耗和存儲(chǔ)容量方面都有很大的優(yōu)勢(shì),而且ARM核處理器可以很方便地實(shí)現(xiàn)嵌入式TCP/IP協(xié)議棧,所以ARM核處理器成為嵌入式Web服務(wù)器設(shè)備的首選處理器。系統(tǒng)的設(shè)計(jì)模型如圖1所示。

1 系統(tǒng)硬件設(shè)計(jì)
    ARM核處理器LPC2210基于支持實(shí)時(shí)仿真和嵌入跟蹤的32/16位ARM7TDMI—S CPU。片內(nèi)有16 KBSRAM,通過(guò)外部存儲(chǔ)器接口配置成4組,每組的容量達(dá)16 MB。LPC2210采用144腳封裝,功耗極低,具有多個(gè)32位定時(shí)器、8路10位ADC、PWM輸出,最多可提供76個(gè)GPIO以及多達(dá)9個(gè)外部中斷引腳;采用3級(jí)流水線技術(shù),極大地提高了指令執(zhí)行效率,通過(guò)可編程的片內(nèi)鎖相環(huán)(PLL)可實(shí)現(xiàn)最大60 MHz的CPU操作頻率。
    LPC2210的EMC組合符合ARM公司的PL090標(biāo)準(zhǔn),總線寬度可設(shè)置為8位、16位或32位,通常16位總線寬度的存儲(chǔ)器具有較高的性價(jià)比。
    以Philips公司的ARM核處理器LPC2210為核心來(lái)實(shí)現(xiàn)嵌入式Web服務(wù)器;網(wǎng)絡(luò)接口芯片采用Realtek公司的NE2000兼容芯片RTL8019AS,它內(nèi)置了10BASE—T收發(fā)器,通過(guò)HR901170A器件接入以太網(wǎng)。硬件結(jié)構(gòu)如圖2所示。

    在圖1中,LPC2210擴(kuò)展了2 MB的NOR Flash(芯片型號(hào)為SST39VFl60)和8.MB PSRAM(芯片型號(hào)為MT45W4Mwl6)。為了方便調(diào)試及最終代碼的固化應(yīng)用,使用LPC2210外部存儲(chǔ)器接口BankO和Bankl的地址空間,通過(guò)片選信號(hào)選通nCE_F和nCE_R,來(lái)將地址空間Bank0和Bankl分別分配給PSRAM和Flash。通常將代碼固化到Flash,分配Flash為Bank0,PSRAM為Bankl,因?yàn)锽ank0可以用來(lái)引導(dǎo)程序的運(yùn)行。
    LPC2210的大容量片上存儲(chǔ)器為T(mén)CP/IP協(xié)議棧的實(shí)現(xiàn)和數(shù)據(jù)處理提供了足夠的存儲(chǔ)空間;利用LPC2210SPI接口擴(kuò)展MMC/SD卡作為外部非易失性存儲(chǔ)器,可以將ADC現(xiàn)場(chǎng)采集的數(shù)據(jù)、IP地址、網(wǎng)卡物理地址以及更新網(wǎng)頁(yè)保存在里面,需要時(shí)還可隨時(shí)更換MMc/SD卡。LPC2210具有ARM和Thumb指令集,采用流水線處理技術(shù),能在指令執(zhí)行期間預(yù)處理下一條指令,極大地提高了指令執(zhí)行效率,為需要快速傳輸數(shù)據(jù)的網(wǎng)絡(luò)應(yīng)用提供了有效的支持。

2 系統(tǒng)軟件設(shè)計(jì)
    eCos(embedded Configurable operating system,嵌入式可配置操作系統(tǒng))是一種針對(duì)16位、32位和64位處理器的可移植嵌入式實(shí)時(shí)操作系統(tǒng)。由于其源代碼公開(kāi),因而越來(lái)越多的設(shè)計(jì)人員開(kāi)始關(guān)注eCos操作系統(tǒng)。eCos最大的特點(diǎn)是模塊化、內(nèi)核可配置。最小版本的eCos只有幾百字節(jié),非常適合小型嵌入式系統(tǒng)的開(kāi)發(fā)。與嵌入式Linux相比,eCos有配置靈活和節(jié)省資源的優(yōu)勢(shì)。它的其他優(yōu)點(diǎn)是使用多任務(wù)搶占機(jī)制、具有最小的中斷延遲、支持嵌入式系統(tǒng)所需的所有同步原語(yǔ),并擁有靈活的調(diào)度策略和中斷處理機(jī)制。因而eCos具有良好的實(shí)時(shí)性,與μClinux和μC/OS等操作系統(tǒng)相比,它更適用于處理實(shí)時(shí)信號(hào)的設(shè)備,如移動(dòng)通信、WLAN等通信設(shè)備的開(kāi)發(fā)。

3 eCos的移植
    圖3所示為eCos的移植流程。eCos的移植通過(guò)3個(gè)子模塊來(lái)完成,即體系結(jié)構(gòu)抽象層(Architeeture Hal)、變體抽象層(Variant Hal)和平臺(tái)抽象層(Platform Hal)。對(duì)一個(gè)新的體系結(jié)構(gòu)來(lái)說(shuō),系統(tǒng)結(jié)構(gòu)抽象層的建立相對(duì)來(lái)說(shuō)比較困難。目前,eCos已經(jīng)支持各種主流CPU,也就是說(shuō),eCos源碼中包含了CPU的體系結(jié)構(gòu)層和變體抽象層,所以移植工作主要集中在平臺(tái)抽象層。

    RedBoot移植是平臺(tái)抽象層移植的最好開(kāi)始。RedBoot是位于硬件抽象層之上的命令行接口,并且包含GDB調(diào)試工具及其調(diào)試stub。一旦硬件抽象層移植到目標(biāo)板中,RedBoot能將程序加載到目標(biāo)板中,并且能在目標(biāo)板上調(diào)試代碼。


4 TCP/IP協(xié)議棧——LwIP的實(shí)現(xiàn)
    LwIP是瑞士計(jì)算機(jī)科學(xué)院Adam Dunkles等人開(kāi)發(fā)的用于嵌入式系統(tǒng)的開(kāi)放源代碼TCP/IP協(xié)議棧。它既可以移植到操作系統(tǒng)上,也可以在無(wú)操作系統(tǒng)的情況下運(yùn)行。LwIP實(shí)現(xiàn)的重點(diǎn)是,在保持TCP協(xié)議主要功能的基礎(chǔ)上,減少對(duì)RAM的占用;一般只需要幾十字節(jié)的RAM和40 KB左右的ROM就可以運(yùn)行,這使得LwIP適合在中低端的嵌入式系統(tǒng)中應(yīng)用。
    LwIP主要可以分為圖4所示的幾個(gè)層次。主要功能模塊有:操作系統(tǒng)模擬層、網(wǎng)絡(luò)接口函數(shù)、實(shí)現(xiàn)TCP/IP協(xié)議的各部分模塊 (IP、UDP、TCP、IC—MP、ARP)、緩沖和存儲(chǔ)管理子系統(tǒng)、校驗(yàn)和函數(shù)。
    LwIP API是一組應(yīng)用程序接口,通過(guò)該接口程序員就可以使用LwIP所有的功能。另外,LwIP也為開(kāi)發(fā)者提供了更加高級(jí)的BSD Socket APl,使其可以使用通用的Socket函數(shù)來(lái)編寫(xiě)網(wǎng)絡(luò)通信軟件。操作系統(tǒng)模擬層可以使LwIP能夠使用操作系統(tǒng)提供的一些高級(jí)管理功能,例如信號(hào)量管理、消息隊(duì)列管理、創(chuàng)建線程等。

4.1 IP處理
    LwIP僅能實(shí)現(xiàn)IP層大部分基本功能。它雖然能夠發(fā)送、接收以及轉(zhuǎn)發(fā)信息包,但不能接收和發(fā)送IP分片包,也不能處理攜帶IP參數(shù)選項(xiàng)的信息包。不過(guò)對(duì)大多數(shù)的應(yīng)用來(lái)說(shuō),這不會(huì)成為問(wèn)題。
    ①接收信息包。對(duì)于到達(dá)的IP信息包,可由網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)調(diào)用ip_input()函數(shù)開(kāi)始處理,并在這里完成對(duì)IP版本字段及包頭長(zhǎng)度的初始完整性檢查,同時(shí)還要計(jì)算和驗(yàn)證包頭校驗(yàn)和。
    ②發(fā)送信息包。外發(fā)的信息包由ip_output()函數(shù)處理,該函數(shù)使用ip_route()函數(shù)查找適當(dāng)?shù)木W(wǎng)絡(luò)接口來(lái)傳送信息包。當(dāng)外發(fā)的網(wǎng)絡(luò)接口確定后,信息包傳給以外發(fā)網(wǎng)絡(luò)接口為參數(shù)的ip_output_if()函數(shù)。
    ③轉(zhuǎn)發(fā)信息包。如果沒(méi)有網(wǎng)絡(luò)接口的地址與到達(dá)信息包的目標(biāo)地址相同,信息包應(yīng)被轉(zhuǎn)發(fā)。這項(xiàng)工作由ip_ forward()函數(shù)完成。
    ④ICMP處理。ICMP處理相當(dāng)簡(jiǎn)單。ip_input()函數(shù)收到的ICMP信息包被移交給icmp_input()函數(shù),后者對(duì)ICMP包頭解碼,然后進(jìn)行適當(dāng)?shù)膭?dòng)作。
4.2 UDP處理
    UDP是被用來(lái)在不同進(jìn)程問(wèn)分解信息包的簡(jiǎn)單協(xié)議。每個(gè)UDP會(huì)話的狀態(tài)保存在一個(gè)PCB結(jié)構(gòu)體中。UDP PCB保存在一個(gè)鏈表中,當(dāng)一個(gè)UDP數(shù)據(jù)包到達(dá)時(shí)對(duì)這個(gè)鏈表進(jìn)行匹配檢索。
4.3 TCP處理
    TCP屬于傳輸層協(xié)議,它為應(yīng)用層提供了可靠的字節(jié)流服務(wù)。對(duì)它的描述要比對(duì)其他協(xié)議的描述復(fù)雜的多,其代碼占了LwIP代碼總量的50%?;镜腡CP處理過(guò)程被分割為6個(gè)功能函數(shù)來(lái)實(shí)現(xiàn),tcp_input()、tep_ process()及tcp_receive()函數(shù)與TCP輸入有關(guān),tcp_write()、tcp_enqueue()及tcp_output()則用于TCP輸出。TCP的處理過(guò)程如圖5所示。

4.4 應(yīng)用程序接口設(shè)計(jì)
    LwIP API專為L(zhǎng)wIP設(shè)計(jì),所以它可以充分利用LwIP的內(nèi)部結(jié)構(gòu)實(shí)現(xiàn)其設(shè)計(jì)目標(biāo)。LwIP API與BSDAPI類似,但操作相對(duì)低級(jí)。API不需要在應(yīng)用程序和協(xié)議棧之間復(fù)制數(shù)據(jù),因?yàn)閼?yīng)用程序可以巧妙地直接處理內(nèi)部緩沖區(qū)。另外,BSD Socket API易于理解,并且很多應(yīng)用程序?yàn)樗鴮?xiě),所以LwIP保留一個(gè)BSD Socket兼容層是很有用的。
    鑒于TCP/IP協(xié)議棧的處理模式,APl分成兩部分實(shí)現(xiàn)。如圖6所示,一部分作為應(yīng)用程序的連接庫(kù)實(shí)現(xiàn),另一部分在TCP/IP進(jìn)程內(nèi)實(shí)現(xiàn)。這兩部分之間采用由操作系統(tǒng)模擬層提供的進(jìn)程間通信機(jī)制(IPC)進(jìn)行通信。當(dāng)前的實(shí)現(xiàn)采用以下3種IPC方式:共享內(nèi)存、消息傳遞和信號(hào)量。雖然這些IPC方式被操作系統(tǒng)支持,但它們并不需要操作系統(tǒng)底層支持,實(shí)際上是操作系統(tǒng)模擬層在模擬它們。

結(jié) 語(yǔ)
    基于實(shí)時(shí)內(nèi)核eCos,在嵌入式系統(tǒng)中實(shí)現(xiàn)了LwIP協(xié)議棧的移植與優(yōu)化。移植優(yōu)化后的LwIP棧做為一個(gè)網(wǎng)絡(luò)模塊運(yùn)行,代碼占用40 KB的ROM,實(shí)現(xiàn)了Ethernet/IP/TCP網(wǎng)絡(luò)功能,并提供了模塊API,與系統(tǒng)實(shí)現(xiàn)無(wú)縫連接?;贚wIP的網(wǎng)絡(luò)應(yīng)用任務(wù)與其他非網(wǎng)絡(luò)應(yīng)用任務(wù)在eGos實(shí)時(shí)內(nèi)核管理下協(xié)調(diào)運(yùn)行。進(jìn)一步增強(qiáng)了協(xié)議棧的網(wǎng)絡(luò)安全性與穩(wěn)定性,并開(kāi)發(fā)相應(yīng)的的網(wǎng)絡(luò)應(yīng)用程序?!癳Cos/LwIP協(xié)議棧”架構(gòu)有望應(yīng)用在信息家電和網(wǎng)絡(luò)化的儀器、儀表方面。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險(xiǎn)積極籌備個(gè)人養(yǎng)老金的產(chǎn)品設(shè)計(jì)和系統(tǒng)開(kāi)發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產(chǎn)品,推動(dòng)商業(yè)養(yǎng)老保險(xiǎn)、個(gè)人養(yǎng)老金、專屬商業(yè)養(yǎng)老保險(xiǎn)等產(chǎn)品供給。 搭養(yǎng)老政策東風(fēng) ...

關(guān)鍵字: 溫度 BSP 東風(fēng) 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎(chǔ)單元,承載著生存與活動(dòng)的最基本功能。而對(duì)于理想空間的解構(gòu)意義卻在物理性容器之外,體現(xiàn)出人們對(duì)于空間和生活深層關(guān)系的思考,同時(shí)也塑造著人與空間的新型連接...

關(guān)鍵字: 溫度 BSP 智能化 進(jìn)程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績(jī)預(yù)告。今年前三季度,公司預(yù)計(jì)實(shí)現(xiàn)營(yíng)業(yè)收入7.54億元至8.33億元,同比增長(zhǎng)60.24%至77.03%;歸母凈利潤(rùn)預(yù)計(jì)為1.73億...

關(guān)鍵字: 電子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經(jīng)濟(jì)和信息化局發(fā)布2022年度第一批北京市市級(jí)企業(yè)技術(shù)中心創(chuàng)建名單的通知,諾誠(chéng)健華正式獲得"北京市企業(yè)技術(shù)中心"認(rèn)定。 北京市企業(yè)技...

關(guān)鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國(guó)際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國(guó)軟件定義存儲(chǔ)及超融合市場(chǎng)研究報(bào)告》,報(bào)告顯示:2022年上半年浪潮超融合銷售額同比增長(zhǎng)59.4%,近5倍于...

關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團(tuán)成立60周年的紀(jì)念日。趁著首都銀行集團(tuán)成立60周年與首都銀行(中國(guó))在華深耕經(jīng)營(yíng)12年的“大日子”,圍繞作為外資金融機(jī)構(gòu)對(duì)在華戰(zhàn)略的構(gòu)想和業(yè)...

關(guān)鍵字: 數(shù)字化 BSP 供應(yīng)鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會(huì)社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國(guó)際物流有限公司(Nipp...

關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國(guó)進(jìn)出口商品交易會(huì)("廣交會(huì)")于"云端"開(kāi)幕。本屆廣交會(huì)上高新技術(shù)企業(yè)云集,展出的智能產(chǎn)品超過(guò)140,...

關(guān)鍵字: 中國(guó)智造 BSP 手機(jī) CAN

要問(wèn)機(jī)器人公司哪家強(qiáng),波士頓動(dòng)力絕對(duì)是其中的佼佼者。近來(lái)年該公司在機(jī)器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開(kāi)發(fā)的機(jī)器人會(huì)后空翻,自主爬樓梯等。這不,波士頓動(dòng)力又發(fā)布了其機(jī)器人組團(tuán)跳男團(tuán)舞的新視頻,表演的機(jī)器人包括...

關(guān)鍵字: 機(jī)器人 BSP 工業(yè)機(jī)器人 現(xiàn)代汽車

南京2022年10月17日 /美通社/ -- 日前《2022第三屆中國(guó)高端家電品牌G50峰會(huì)》于浙江寧波落幕,來(lái)自兩百余名行業(yè)大咖、專家學(xué)者共同探討了在形勢(shì)依然嚴(yán)峻的當(dāng)下,如何以科技創(chuàng)新、高端化轉(zhuǎn)型等手段,幫助...

關(guān)鍵字: LINK AI BSP 智能家電

嵌入式教程

6897 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉