基于ARM和eCos的嵌入式WEB服務(wù)器設(shè)計(jì)
LPC2210的大容量片上存儲(chǔ)器為TCP/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é)議?!狶wIP的實(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)編寫網(wǎng)絡(luò)通信軟件。操作系統(tǒng)模擬層可以使LwIP能夠使用操作系統(tǒng)提供的一些高級(jí)管理功能,例如信號(hào)量管理、消息隊(duì)列管理、創(chuàng)建線程等。
tcp/ip相關(guān)文章:tcp/ip是什么
評(píng)論