<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > stm32的相關(guān)網(wǎng)絡(luò )問(wèn)題

stm32的相關(guān)網(wǎng)絡(luò )問(wèn)題

作者: 時(shí)間:2016-12-03 來(lái)源:網(wǎng)絡(luò ) 收藏
最近在做一個(gè)工作,就是使用stm32將數據通過(guò)internet傳輸到遠端連接的服務(wù)器上,考慮到的問(wèn)題是,首先,是需要使用FTP傳輸數據的,其次,是怎么找到網(wǎng)絡(luò )服務(wù)器的一個(gè)特定的文件夾,然后將數據封裝到這個(gè)文件夾下的一個(gè)文件中,這個(gè)應該如何實(shí)現?就收集了一些相關(guān)的資料。

1、BSD TCP/IP協(xié)議棧

BSD棧歷史上是其他商業(yè)棧的起點(diǎn),大多數專(zhuān)業(yè)TCP/IP棧(VxWorks內嵌的TCP/IP棧)是BSD棧派生的。這是因為BSD棧在BSD許可協(xié)議下提供了這些專(zhuān)業(yè)棧的雛形,BSD許用證允許BSD棧以修改或未修改的形式結合這些專(zhuān)業(yè)棧的代碼而無(wú)須向創(chuàng )建者付版稅。同時(shí),BSD也是許多TCP/IP協(xié)議中的創(chuàng )新(如廣域網(wǎng)中餓擁塞控制和避免)的開(kāi)始點(diǎn)。



2、uC/IP
uC/IP是由Guy Lancaster編寫(xiě)的一套基于uC/OS且開(kāi)放源碼的TCP/IP協(xié)議棧,亦可移植到其它操作系統,是一套完全免費的、可供研究的TCP/IP協(xié)議棧,uC/IP大部分源碼是從公開(kāi)源碼BSD發(fā)布站點(diǎn)和KA9Q(一個(gè)基于DOS單任務(wù)環(huán)境運行的TCP/IP協(xié)議棧)移植過(guò)來(lái)。uC/IP具有如下一些特點(diǎn):帶身份驗證和報頭壓縮支持的PPP協(xié)議,優(yōu)化的單一請求/回復交互過(guò)程,支持IP/TCP/UDP協(xié)議,可實(shí)現的網(wǎng)絡(luò )功能較為強大,并可裁減。UCIP協(xié)議棧被設計為一個(gè)帶最小化用戶(hù)接口及可應用串行鏈路網(wǎng)絡(luò )模塊。根據采用CPU、編譯器和系統所需實(shí)現協(xié)議的多少,協(xié)議棧需要的代碼容量空間在30-60KB之間。http://ucip.sourceforge.net
3、LwIP
LwIP是瑞士計算機科學(xué)院(Swedish Institute of Computer Science)的Adam Dunkels等開(kāi)發(fā)的一套用于嵌入式系統的開(kāi)放源代碼TCP/IP協(xié)議棧。LwIP的含義是Light Weight(輕型)IP協(xié)議,相對于uip。LwIP可以移植到操作系統上,也可以在無(wú)操作系統的情況下獨立運行。LwIP TCP/IP實(shí)現的重點(diǎn)是在保持TCP協(xié)議主要功能的基礎上減少對RAM的占用,一般它只需要幾十K的RAM和40K左右的ROM就可以運行,這使LwIP協(xié)議棧適合在低端嵌入式系統中使用。LwIP的特性如下:支持多網(wǎng)絡(luò )接口下的IP轉發(fā),支持ICMP協(xié)議 ,包括實(shí)驗性擴展的的UDP(用戶(hù)數據報協(xié)議),包括阻塞控制,RTT估算和快速恢復和快速轉發(fā)的TCP(傳輸控制協(xié)議),提供專(zhuān)門(mén)的內部回調接口(Raw API)用于提高應用程序性能,并提供了可選擇的Berkeley接口A(yíng)PI。http://www.sics.se/~adam/lwip/或http://savannah.nongnu.org/projects/lwip/
4、uIP
uIP是專(zhuān)門(mén)為8位和16位控制器設計的一個(gè)非常小的TCP/IP棧。完全用C編寫(xiě),因此可移植到各種不同的結構和操作系統上,一個(gè)編譯過(guò)的??梢栽趲譑B ROM或幾百字節RAM中運行。uIP中還包括一個(gè)HTTP服務(wù)器作為服務(wù)內容。許可:BSD許用證http://www.sics.se/~adam/uip/
5、TinyTcp
TinyTcp 棧是TCP/IP的一個(gè)非常小和簡(jiǎn)單的實(shí)現,它包括一個(gè)FTP客戶(hù)。TinyTcp是為了燒入ROM設計的并且現在開(kāi)始對大端結構似乎是有用的(初始目標是68000芯片)。TinyTcp也包括一個(gè)簡(jiǎn)單的以太網(wǎng)驅動(dòng)器用于3COM多總線(xiàn)卡http://ftp.ecs.soton.ac.uk/pub/elks/utils/tiny-tcp.txt
選擇一個(gè)開(kāi)源協(xié)議??梢詮乃膫€(gè)方面來(lái)考慮:
一個(gè)是是否提供易用的底層硬件API,即與硬件平臺的無(wú)關(guān)性;一個(gè)是與操作系統的內核API。協(xié)議棧需要調用的系統函數接口是否容易構造,另一個(gè)對于應用支持程度。最關(guān)鍵的是占用的系統資源是否在可接受范圍內,有裁減優(yōu)化的空間否? 其中,BSD ??赏暾麑?shí)現TCP/IP協(xié)議,但代碼龐大,70KB-150KB之間,裁減優(yōu)化有難度,uIP和TinyTcp代碼容量小巧,實(shí)現功能精簡(jiǎn),限制了在一些較高要求場(chǎng)合下的應用,如可*性與大容量數據傳輸。LwIP和uC/IP是同量級別的兩個(gè)開(kāi)源協(xié)議棧,兩者代碼容量和實(shí)現功能相似,LwIP沒(méi)有操作系統針對性,它將協(xié)議棧與平臺相關(guān)的代碼抽象出來(lái),用戶(hù)如果要移植到自己的系統,需要完成該部分代碼的封裝,并為網(wǎng)絡(luò )應用支持提供了API接口的可選性。uC/IP協(xié)議最初是針對uC/OS設計,為方便用戶(hù)移植實(shí)現,同樣也抽象了協(xié)議棧與平臺相關(guān)代碼,但是協(xié)議棧所需調用的系統函數大多參照uC/OS內核函數原型設計,并提供了協(xié)議棧的測試函數,方便用戶(hù)參考,其不足在于該協(xié)議棧對網(wǎng)絡(luò )應用支持不足。 根據以上分析,從應用和開(kāi)發(fā)的角度看,似乎LWIP更得到了網(wǎng)上很多朋友使用的青睞;uC/IP在文檔支持與軟件升級管理上有很多不足,但是它最初是針對UC/OS而設計,如果選用UC/OS作為軟件基礎的話(huà),在系統函數構造方面有優(yōu)勢。當然你選擇其他操作系統的話(huà),可參照OS_NULL文件夾下的文件修改。 以上的這些開(kāi)源協(xié)議棧也并非免費,拿來(lái)就可以用,據我所知,UC/OS的母公司推出UC/OS-TCP/IP花了6人*2年的工作量,國內某公司使用LWIP作為移植的參照,花了4-5人*2年的工作量來(lái)測試與優(yōu)化協(xié)議,使用商用TCP/IP棧的高費用就不足為奇了。 作為廣大的愛(ài)好者學(xué)習而言,如果只是跑跑原型,實(shí)驗一下效果,以上的幾種開(kāi)源協(xié)議棧都提供了測試的例子,應該是不錯的選擇。個(gè)人的看法:LWIP可優(yōu)先考慮,至少網(wǎng)上有很多的人一塊研究,參考的資料較多;UC/IP其次,如果你想深入學(xué)習TCP/IP的話(huà),移植UC/IP是一種挑戰性的工作,它尚需完善。

本文引用地址:http://dyxdggzs.com/article/201612/325180.htm


評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>