上海皕科電子有限公司

Shanghai Bitconn Electronic Co.,Ltd.

公司介紹
上海皕科電子有限公司是一家專業的芯片代理商和方案提供商。總部設在上海,是一家專業為中國電子企業提供單片機,無線RF,以太網IC及外圍器件、開發工具和相關應用解決方案的高新技術企業。公司的主要代理品牌有Digi、Wiznet、Xinnova,以及華虹MCU等。
  公司擁有優秀的銷售團隊和專業的研發部門,不但在品牌、價格、供貨、服務等方面領先業界,而且可為客戶提供及時、可行的技術支持和整體設計服務,滿足不同客戶多層次需求。

RT-Thread SAL+W5500,全硬件TCP/IP協議棧世界

發表時間:2019-5-4  瀏覽次數:4187  
字體大小: 【小】 【中】 【大】

原文鏈接:HTTPS://mp.weixin.qq.com/s/we8GZS-P4_GmqUxL3egfGw場景= 25#wechat_redirect

 

隨著嵌入式系統功能的多樣化以及網絡在各個領域中的廣泛應用,具備網絡功能的嵌入式設備擁有更高的使用價值和更強的通用性。我們在嵌入式開發中常用的網絡接入方式為軟件TCP / IP協議棧接入方式,如lwIP協議棧。今天,為大家介紹一種全新的網絡接入方式,基于SAL的全硬件TCP / IP協議棧接入方式。

SAL 介紹

SAL,即套接字抽象層,位于網絡硬件層于應用層之間,用于抽象,統一多種網絡協議棧接口,并且應用層提供標準的BSD套接字APIs.SAL可以讓RT-Thread系統目前SAL支持的網絡接入方式主要有三種:軟件TCP / IP協議棧(lwIP),自定義串口網絡實現(ATSocket),以及下面帶來的第三種接入方式,全硬件TCP / IP協議棧(W5500)。

W5500介紹

 

W5500是WIZnet 推出的高性能以太網接口芯片系列之一,內部實現了全硬件TCP/IP 協議棧+MAC+PHY,芯片有如下幾個特點:

  • 8 個獨立的硬件 Socket,各路通信互不影響
  • 32K bytes 片上緩沖用于處理收發數據
  • 集成 802.3 以太網MAC
  • 主機接口為 SPI 高速串行外設接口(最高 80 Mhz)

 

什么是全硬件TCP/IP 協議棧?

傳統的單片機(MCU)實現網絡功能,需要連接外設物理層以太網控制芯片(MAC+PHY),還要主控芯片中移植軟件TCP/IP 協議代碼實現通信及上層應用。

所謂全硬件TCP/IP 協議棧是將傳統的軟件協議TCP/IP 協議棧用硬件化的邏輯門電路來實現。芯片內部完成TCP、UDP、ICMP等多種應用層協議,以及IP 、ARP等網絡層協議,并且實現了物理層以太網控制(MAC+PHY)、內存管理等功能,完成了一整套硬件化得以太網解決方案。

相比于lwIP 軟件協議棧的資源占用(RAM50K+,ROM80K+),在MCU 上使用硬件協議棧芯片(例如:W5500)的資源占用(RAM1K,ROM20K)得到了很大程度的降低。

另一方面,硬件協議棧芯片將會降低MCU 對于龐大網絡數據的負荷,使MCU 可以高效的處理其他業務邏輯。同時也避免了MCU 主程序受到網絡攻擊的危險,大大優化了MCU 的網絡連接功能。

WIZnet軟件包介紹

 

WIZnet軟件包是RT-Thread 基于WIZnet 官方 ioLibrary_Driver 設備驅動代碼庫的移植實現,支持W5500 芯片。原官方代碼庫雖然實現了多種網絡協議支持,并且提供自定義Socket 接口用于網絡編程,但是其接口并不是標準BSD 接口,這樣不利于兼容多種網絡軟件包,增加了網絡開發的難度。

 

RT-Thread推出的WIZnet 軟件包在原代碼庫功能的基礎上,封裝實現一套標準 BSD Socket APIs,并且對接RT-Thread SAL 套接字抽象層,完成SAL 對全硬件協議棧的支持。

WIZnet 軟件包特點如下:

 

1、極簡的設備接入方式

傳統WIZnet 設備接入,需要實現 SPI 設備初始化、網絡初始化、寄存器配置、中斷處理等多個功能,才能正常連接網絡。使用 WIZnet 軟件包,只需要在 ENV 中正確配置 SPI 設備名稱、復位引腳號和中斷引腳號并下載軟件包,即可快速初始化設備并接入網絡。

 

2、提供標準網絡編程接口

相比于原官方代碼庫,WIZnet 軟件包提供標準 BSD Socket APIs,可以完美的兼容 RT-Thread 系統中多種網絡軟件包或者網絡功能實現,如 MQTT、HTTP、NTP、MbedTLS、Iperf 等,極大的簡化了開發者網絡接入和網絡協議移植的過程。

 

3、自定義網絡接入參數設置

軟件包提供動態和靜態兩種獲取 IP 地址的方式,靜態模式下可以在 ENV 中自定義配置設備 IP 地址、網關、子網掩碼等網絡參數。對于 MAC 地址,軟件包提供設置 MAC 地址接口,用于設置設備唯一的 MAC 地址,防止網絡沖突。

 

4、提供網絡狀態查詢方式

軟件包提供wiz_ifconfig 命令用于查詢當前網絡參數,提供 wiz_ping 命令用于查詢網絡連接狀態。

 

WIZnet的軟件包的推出,使得RT-主題SAL支持的更加全面,這也進一步提升了RT-線程系統在物聯網領域對于不同網絡軟硬件的兼容性,簡化了用戶網絡接入的流程。當前WIZnet的軟件包已經完成對W5500的移植,其他熱門WIZnet設備,RT-Thread將會根據用戶反饋優先選擇支持。

 

WIZnet的軟件包獲取

使用WIZnet軟件包需要在RT-Thread的包管理中選中它,具體路徑如下:RT-Thread在線包→物聯網 – 物聯網→WIZnet:WIZnet TCP / IP芯片SAL框架實現

可通過一下二維碼查看更詳細信息:

也可通過外部鏈接打開:

https://github.com/RT-Thread-packages/wiznet/blob/master/README.md

文章評論
發表評論:(匿名發表無需登錄,已登錄用戶可直接發表。) 登錄狀態: 未登錄,點擊登錄
上海皕科電子有限公司 版權所有
地址:上海市閔行區都園路4288號D區220室
電話:021-54852770
郵件:sales@bitconn.com
 
豆奶视频app官网版下载-豆奶视频破解版下载