高性能以太網芯片W5500 數據手冊 V1.0(一)


 W5500

W5500 是一款全硬件 TCP/IP 嵌入式以太網控制器,為嵌入式系統提供了更加簡易的互聯網連接方案。W5500 集成了 TCP/IP 協議棧,10/100M 以太網數據鏈路層(MAC) 及物理層(PHY),使得用戶使用單芯片就能夠在他們的應用中拓展網絡連接。

久經市場考驗的 WIZnet 全硬件 TCP/IP 協議棧支持 TCP,UDP,IPv4,ICMP,ARP,IGMP 以及 PPPoE 協議。W5500 內嵌 32K 字節片上緩存以供以太網包處理。如果你使用 W5500, 你只需要一些簡單的 Socket 編程就能實現以太網應用。這將會比其他嵌入式以太網方案 更加快捷、簡便。用戶可以同時使用 8 個硬件 Socket 獨立通訊。

W5500 提供了 SPI(外設串行接口)從而能夠更加容易與外設 MCU 整合。而且, W5500 的使用了新的高效 SPI 協議支持 80MHz 速率,從而能夠更好的實現高速網絡通訊。 為了減少系統能耗,W5500 提供了網絡喚醒模式(WOL)及掉電模式供客戶選擇使用。

特點 

  • 支持硬件 TCP/IP 協議:TCP, UDP, ICMP, IPv4, ARP, IGMP, PPPoE
  • 支持 8 個獨立端口(Socket)同時通訊
  • 支持掉電模式
  • 支持網絡喚醒
  • 支持高速串行外設接口(SPI 模式 0,3)
  • 內部 32K 字節收發緩存
  • 內嵌 10BaseT/100BaseTX 以太網物理層(PHY)
  • 支持自動協商(10/100-Based 全雙工/半雙工)
  • 不支持 IP 分片
  • 3.3V 工作電壓,I/O 信號口 5V 耐壓;
  • LED 狀態顯示(全雙工/半雙工,網絡連接,網絡速度,活動狀態)
  • 48 引腳 LQFP 無鉛封裝(7x7mm, 0.5mm 間距)

目標應用

W5500 適合於以下嵌入式應用:

  • 家庭網絡設備: 機頂盒、個人錄像機、數碼媒體適配器
  • 串行轉以太網: 門禁控制、LED 顯示屏、無線 AP 繼電器等
  • 並行轉以太網: POS/微型打印機、復印機
  • USB 轉以太網: 存儲設備、網絡打印機
  • GPIO 轉以太網: 家庭網絡傳感器
  • 安全系統: 數字錄像機、網絡攝像機、信息亭
  • 工廠和樓宇自動化控制系統
  • 醫療監測設備
  • 嵌入式服務器

W5500-1

 

1          引腳分配

W5500-2

                            圖 1 W5500 引腳分布

1.1    引腳描述

表格 1 引腳類型標記

 W5500-3

表格 2 W5500 引腳描述

W5500-4W5500-5W5500-6W5500-7W5500-8

在 EXRES1 引腳和模擬地之間需要接一個 12. 4KΩ,精度  1 %的電阻。如下圖所示:

W5500-9

圖 2 外部參考電阻

晶振參考周邊電路如下圖所示:

W5500-10

圖 3 晶振參考電路

2          主機接口

W5500 提供了 SPI(串行外部接口)作為外設主機接口,共有 SCSn, SCLK, MOSI, MISO 4 路信號,且作為 SPI 從機工作。

W5500 與 MCU 的連接方式如圖 4 和圖 5 所示。根據其工作模式(可變數據長度模 式/固定數據長度模式)將分別在第 2.3 章節和 2.4 章節做解釋說明。

如圖 4 所示,可以與其他 SPI 設備共用 SPI 接口

在可變數據長度模式中(如圖 4 所示),W5500 可以與其他 SPI 設備共用 SPI 接口。 但是一旦將 SPI 接口指定給 W5500 之后,則不能再與其他 SPI 設備共用,如圖 5 所示。

在可變數據長度模式(如圖 4 所示),W5500 可以與其他 SPI 設備共用 SPI 接口。 然而,在固定數據長度模式(如圖 5 所示),SPI 將指定給 W5500,不能與其他 SPI 設 備共享。

W5500-11

 

                                                 圖 4 可變數據長度模式(SCSn 受主機控制)

W5500-12

圖 5 固定數據長度模式(SCSn 保持接地)

        SPI 協議定義了四種工作模式(模式 0,1,2,3)。每種模式的區別是根據 SCLK 的極性及相位不同定義的。SPI 的模式 0 和模式 3 唯一不同的就是在非活動狀態下, SCLK 信號的極性。SPI 的模式 0 和 3,數據都是在 SCLK 的上升沿鎖存,在下降沿輸出。

W5500 支持 SPI 模式 0 及模式 3.MOSI 和 MISO 信號無論是接收或發送,均遵從從最 高標志位(MSB)到最低標志位(LSB)的傳輸序列。

W5500-13

圖 6 SPI 模式 0&3

2.1    SPI 工作模式 

W5500 與外設主機的通訊受 SPI 數據幀控制(參考第 2.2 章節 SPI 數據幀) 。

W5500 的幀分為 3 段:地址段,控制段,數據段。

地址段為 W5500 寄存器或 TX/RX 內存指定了 16 位的偏移地址。 控制段指定了地址段設定的偏移區域的歸屬,讀/寫訪問模式以及 SPI 工作模式(可變長度模式/固定長度模式)。

數據段可以設定為任意長度(N-字節,1≤N)或者是固定的長度:1  字節,2 字節 或 4 字節;如果 SPI 工作模式設置為可變數據長度模式(VDM),SPI 的 SCSn 信號需要由外部 主機通過 SPI 幀控制。

在可變數據長度模式下,SCSn 控制 SPI 幀的開始和停止:

SCSn 信號拉低(高電平到低電平),即代表 W5500 的 SPI 幀開始(地址段);

SCSn 信號拉高(低電平到高電平),即代表 W5500 的 SPI 幀結束(數據段的隨機 N字節數據結尾);

2.2    SPI 數據幀

W5500 的 SPI 數據幀包括了 16 位地址段的偏移地址,8 位控制段和 N 字節數據段。 如圖 7 所示。

8 位控制段可以通過修改區域選擇位 (BSB[4:0]),讀/寫訪問模式位(RWB)以及 SPI工作模式位(OM[1:0])來重新定義。 區域選擇位選擇了歸屬於偏移地址的區域。

W5500-14

圖 7 SPI 數據幀格式

W5500 支持數據的連續讀/寫。其流程為數據從(2/4/N 字節連續數據的)偏移地址的基址開始傳輸,偏移地址會(自增尋址)加 1 傳輸接下來 的數據。

2.2.1 地址段

地址段為 W5500 的寄存器或 TX/RX 緩存區指定了 16 位的偏移地址。 這 16 位偏移地址的值來自於從最高標志位到最低標志位的順序傳輸。

SPI 數據幀的數據段(2/4/N 字節)通過偏移地址自增(每傳輸 1 字節偏移地址加 1) 支持連續數據讀/寫。

2.2.2     控制段

控制段指定了地址段設定的偏移區域的歸屬,讀/寫訪問模式以及 SPI 工作模式。

W5500-15

 表格 3 SPI 數據幀控制段對應位的說明

W5500-16      W5500-17

W5500-18                         W5500-19

 

2.2.3     數據段

在 SPI 工作模式位 OM[1:0]設定了控制端之后,數據段被設定為 2 種長度類型:1 種為可變的 N 字節長度(可變數據長度模式),另以一種為確定的 1/2/4 字節長度(固定數 據長度模式)。

此時,1 字節數據從最大標志位到最小標志位,通過 MOSI 或者 MISO 信號傳輸。

 

2.3       可變數據長度模式

在 VDM 模式下,SPI 數據幀的長度被外設主機控制的 SCSn 所定義。這就意味着數據 段長度根據 SCSn 的控制,可以是一個隨機值(從 1 字節到 N 字節任何長度均可)。

在 VDM 模式下,M[1:0]位必須為‘00’。

2.3.1     寫訪問——VDM 模式

W5500-20

圖 8 在 VDM 模式下讀 SPI 數據幀

 

圖 8 顯示的是在外部主機控制 W5500 讀操作時的 SPI 數據幀。

在 VDM 模式下,SPI 數據幀的控制段:讀寫控制位(RWB)為‘1’,工作模式位為’00’。

此時外設主機在傳輸 SPI 數據幀之前,須拉低 SCSn 信號引腳。

然后主機通過 MOSI 將 SPI 數據幀的所有位傳輸給 W5500 ,並在 SCLK 的下降沿同 步。

在完成 SPI 數據幀的傳輸后,主機拉高 SCSn 信號(低電平到高電平)。 當 SCSn 保持低電平且數據段持續傳輸,即可實現連續數據寫入。

字節數據寫訪問示例

當主機在 VDM 模式下,向通用寄存器區域中的 Socket 中斷屏蔽寄存器寫入數據‘0xA

A’時,SPI 數據幀的寫操作如下所示:

Offset Address = 0×0018

BSB[4:0]       = ‘00000’ RWB = ‘1’ OM[1:0]               = ‘00’

1st Data         = 0xAA

在傳輸 SPI 數據幀之前,外設主機須拉低 SCSn,然后主機在時鍾(SCLK)跳變時同步 傳輸 1 位數據。在 SPI 數據幀傳輸完畢后,外設主機拉高 SCSn。(參考圖 9)

W5500-21

圖 9 VDM 模式下,SIMR 寄存器寫操作

字節寫訪問示例

當主機在 VDM 模式下,向通用寄存器區域中的 Socket 中斷屏蔽寄存器寫入 5 字節數 據時(0×11, 0×22, 0×33, 0×44, 0×55),SPI 數據幀的寫操作如下所示:

W5500-22

N 字節的寫訪問如圖 10 所示。

5 字節的數據被連續地寫入 Socket 1 的寫緩存地址:0×0040 – 0×0044。 在 SPI 數據幀傳輸時,外設主機拉低 SCSn(高電平到低電平)。

在 SPI 數據幀傳輸完畢時,外設主機拉高 SCSn(低電平到高電平)。

W5500-23

                          圖 10 在 VDM 模式下,向 Socket1 的發送緩存區 0×0040 中寫入 5 字節數據

2.3.2     讀訪問——VDM 模式

W5500-24

圖 11 在 VDM 模式下讀 SPI 數據幀

 圖 11 顯示的是當外設主機訪問 W5500 做讀訪問時,SPI 的數據幀格式。

在 VDM 模式下,讀/寫訪問位(RWB)為‘0’(讀模式),SPI 數據幀控制段的工作 模式位(OM[1:0])為‘00’。

與此同時,在 SPI 數據幀傳輸之前,外設主機拉低 SCSn(高電平到低電平)。 然后主機通過 MOSI 將地址及控制段的所有位傳輸給 W5500.所有為將在 SCLK 的下降 沿同步。

之后在同步采樣時鍾(SCLK)的上升沿,主機通過 MISO 接收到所有數據位。 在接收完所有數據后,主機拉高 SCSn(低電平到高電平)。

當 SCSn 保持低電平且數據段持續傳輸,即可實現連續數據讀取。

字節數據讀訪問示例

在     VDM     模式下,當主機讀取      Socket     7     寄存器區的     Socket      狀態寄存器(S7_SR),SPI 數據幀的數據讀取如下所示。我們讓 S7_SR 設置為 Socket 建立模式下(0×17)。

W5500-25

 

在 SPI 數據幀傳輸之前,外設主機拉低 SCSn(高電平到低電平)。然后外設主機通過 M OSI 傳輸地址段和控制段給 W5500.

然后主機通過 MISO 接收到接收完的數據。

在完成數據段的接收后,主機拉高 SCSn(低電平到高電平)。(參考圖 12)

 W5500-26

圖 12 在 VDM 模式下讀 S7_SR

字節讀訪問示例

在 VDM 模式下,當從Socket3  的地址為  0×0100  的讀取緩存中讀取  5  字節的數據(0xAA,  0xBB,  0xCC,  0xDD,0xEE)。這 5 個字節數據的讀訪問 SPI 數據幀如下所示。

W5500-27

N 字節讀訪問如圖 13 所示。

從 Socket 3 的接收緩存(地址 0×0100 – 0×0104),連續地讀取這 5 字節的數據(0xAA,

0xBB, 0xCC, 0xDD, 0xEE)。

在 SPI 傳輸數據幀之前,外設主機將 SCSn 拉低。(高電平到低電平) 在 SPI 數據段結束時,外設主機將 SCSn 拉高。(低電平到高電平)

W5500-28

                     圖 13 在 VDM 模式下,讀取 Socket 3 接收緩存 0×0100 中的 5 字節數據

感謝閱讀!

明天繼續為您講解~

 

更多信息與我們交流:

WIZnet郵箱:wiznetbj@wiznet.co.kr


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM