以太網(wǎng)控制器W5200_第1頁
以太網(wǎng)控制器W5200_第2頁
以太網(wǎng)控制器W5200_第3頁
以太網(wǎng)控制器W5200_第4頁
以太網(wǎng)控制器W5200_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第六章以太網(wǎng)控制芯片W5200●6.1以太網(wǎng)簡介●6.2以太網(wǎng)控制芯片W5200的特點及結(jié)構(gòu)●6.3數(shù)據(jù)通信6.1以太網(wǎng)簡介以太網(wǎng)(Ethernet)是一種計算機局域網(wǎng)組網(wǎng)技術(shù)。它不是一種具體的網(wǎng)絡(luò),是一種技術(shù)規(guī)范。該規(guī)范定義了在局域網(wǎng)(LAN)中采用的電纜類型和信號處理方法。IEEE制定的IEEE802.3標準給出了以太網(wǎng)的技術(shù)標準。它規(guī)定了包括物理層的連線、電信號和介質(zhì)訪問層協(xié)議的內(nèi)容。常用以太網(wǎng)接口以太網(wǎng)的發(fā)展標準以太網(wǎng)10Mbps的吞吐量使用的是帶有沖突檢測的載波偵聽多路訪問(CSMA/CD)的訪問控制方法距離通常在100米以內(nèi)快速以太網(wǎng)100Mpbs支持3、4、5類雙絞線以及光纖的連接,能有效的利用現(xiàn)有的設(shè)施以太網(wǎng)的發(fā)展千兆以太網(wǎng)采用了與10M以太網(wǎng)相同的幀格式、幀結(jié)構(gòu)、網(wǎng)絡(luò)協(xié)議、全/半雙工工作方式、流控模式以及布線系統(tǒng),因此可與10M或100M的以太網(wǎng)很好地配合工作萬兆以太網(wǎng)1999年,以太網(wǎng)速度提升到1G,開始進入城域網(wǎng)現(xiàn)在以太網(wǎng)提升到了10G,即萬兆,可直接應(yīng)用于廣域網(wǎng)6.2以太網(wǎng)控制芯片W5200的特點及結(jié)構(gòu)傳統(tǒng)的以太網(wǎng)控制器僅將PHY和MAC整合到同一個芯片中,然后通過軟件方式實現(xiàn)IP層及以上協(xié)議。在W5200中,它是整合了前四層的協(xié)議,即物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和傳輸層,通過硬件實現(xiàn)了TCP/IP協(xié)議棧。開發(fā)者無需專業(yè)的網(wǎng)絡(luò)知識,如同控制外部存儲器一樣簡單,為用戶提供了最簡單的網(wǎng)絡(luò)介入方法。全硬件TCP/IP協(xié)議棧完全獨立于主控芯片,可以降低主芯片負載且無需移植繁瑣的TCP/IP協(xié)議棧,便于產(chǎn)品更新。

W5200的特點

W5200支持硬件TCP/IP協(xié)議,包括TCP、UDP、ICMP、IPv4、ARP、IGMP、PPPoE和以太網(wǎng)的PHY和MAC層,TCP/IP協(xié)議的硬件實現(xiàn),使得應(yīng)用協(xié)議的實現(xiàn)更簡單容易;支持8個獨立的端口(SOCKET)同時工作,可同時工作在不同的工作模式;支持低功耗模式,并支持網(wǎng)絡(luò)喚醒,最大程度地減少功率消耗和發(fā)熱;支持高速SPI接口(SPIMODE0,3),SPI的時鐘最高可達到80MHz,極大地提高了網(wǎng)絡(luò)通信的數(shù)據(jù)傳輸速率;支持高速SPI接口(SPIMODE0,3),SPI的時鐘最高可達到80MHz,極大地提高了網(wǎng)絡(luò)通信的數(shù)據(jù)傳輸速率;內(nèi)嵌10BaseT/100BaseTX以太網(wǎng)物理層(PHY);支持自動握手(全雙工/半雙工,10/100M);支持MDI/MDIX自動翻轉(zhuǎn)功能。W5200還支持ADSL連接(帶PAP/CHAP認證模式的PPPoE協(xié)議);但不支持IP分片;具有多功能LED指示輸出(全雙工/半雙工,連接,速度等);W5200工作電壓為3.3V,但端口可承受5V電壓,采用8腳QFN無鉛環(huán)保封裝。W5200的結(jié)構(gòu)由左圖可以看出,W5200集成了網(wǎng)絡(luò)通信的所有協(xié)議部件,通過SPI接口與微控制器(MCU)進行連接就可以實現(xiàn)以太網(wǎng)通信的應(yīng)用,不需要處理復雜的以太網(wǎng)控制。W5200的引腳各個引腳的功能分類(1)與MCU接口的信號(2)物理層PHY信號(3)其它信號(4)電源引腳(5)時鐘信號(6)LED信號W5200的存儲器W5200的存儲器組成:通用寄存器、端口(SOCKET)寄存器TX存儲器和RX存儲器組成通用寄存器

通用寄存器模式寄存器MR[R/W][0x0000][0x00]:用于實現(xiàn)軟件復位,并可設(shè)置Ping允許控制和PPPoE允許控制網(wǎng)關(guān)IP地址寄存器GAR[R/W][0x0001~0x0004][0x00]:這些寄存器設(shè)置默認的網(wǎng)關(guān)IP地址子網(wǎng)掩碼寄存器SUBR[R/W][0x0005~0x0008][0x00]:這些寄存器設(shè)置子網(wǎng)掩碼本機物理地址寄存器SHAR[R/W][0x0009~0x000E][0x00]:這些寄存器設(shè)置本機物理地址本機IP地址寄存器SIPR[R/W][0x000F~0x0012][0x00]:這些寄存器用于設(shè)置本機IP地址通用寄存器重試時間值寄存器RTR[R/W][0x0017~0x0018][0x07D0]:當執(zhí)行CONNECT、DISCON、CLOSE、SEND、SEND_MAC和SEND_KEEP命令時,如果對端沒有響應(yīng),或響應(yīng)延遲,則會產(chǎn)生重新傳送的過程。重試時間值寄存器RTR用于配置重新傳送的超時時間周期(單位是100us)重試計數(shù)寄存器RCR[R/W][0x0019][0x08]:該寄存器用于設(shè)置重新傳送的次數(shù)。當重新傳送發(fā)生的次數(shù)超過“RCR+1”時,Socketn中斷寄存器Sn_IR的TIMEOUT位將被設(shè)置為‘1’,對于TCP通信,Socketn的狀態(tài)寄存器Sn_SR的值將同時改變?yōu)椤癝OCK_CLOSED”。SOCKET寄存器6.3數(shù)據(jù)通信通信接口及時序

初始化

TCP協(xié)議

UDP協(xié)議

通信接口及時序

W5200提供SPI接口與MCU通信。SPI接口的引腳為nSCS(片選信號)、SCLK(時鐘信號)、MOSI(主出從入)和MISO(主入從出)。在SPI通信中,MCU作為主機,W5200作為從機。通用的SPI主機SPI通信處理過程如下:(1)在SPI主機上定義輸入/輸出的方向;(2)在非激活狀態(tài)nSCS設(shè)置為高電平;(3)寫入要發(fā)送的目的地址到SPDR寄存器;(4)寫入要發(fā)送的操作代碼和數(shù)據(jù)長度到SPDR寄存器;(5)寫入要發(fā)送的數(shù)據(jù)到SPDR寄存器;(6)設(shè)置nSCS為低電平(啟動數(shù)據(jù)傳輸);(7)等待接收完成;(8)所有數(shù)據(jù)發(fā)送結(jié)束,設(shè)置nSCS為高電平。初始化首先正確選擇和設(shè)置以下寄存器:模式寄存器(MR)中斷屏蔽寄存器(IMR)重發(fā)時間寄存器(RTR)重發(fā)次數(shù)寄存器(RCR)其次,為了建立通信,需要設(shè)置基本網(wǎng)絡(luò)信息。包括以下信息:本機硬件地址寄存器GAR(網(wǎng)關(guān)地址寄存器)SUBR(子網(wǎng)掩碼寄存器)SIPR(本機IP地址寄存器)最后,調(diào)用wizMemInit()函數(shù)設(shè)置SOCKET存儲器信息。每個端口的基地址和地址掩碼都在這一步確定并保存。TCP協(xié)議TCP是一種面向連接的通信協(xié)議。TCP使用本機IP地址、端口號和目的IP地址、目的端口號等建立端口連接,使用該端口發(fā)送和接收數(shù)據(jù)。建立端口連接的方法有“TCP服務(wù)器”和“TCP客戶端”。TCP服務(wù)器模式設(shè)置W5200為TCP服務(wù)器模式時,其循環(huán)程序中包含的操作有:Socket初始化偵聽發(fā)送接收斷開連接關(guān)閉端口

TCP服務(wù)器模式Socket初始化選擇W5200的8個Socket中的一個設(shè)置該Socket的協(xié)議模式:Sn_MR_TCP設(shè)置本機端口號以及相應(yīng)的標識位flag初始化完成后,Socketn的狀態(tài)已經(jīng)更改為SOCK_INIT(0x13)

偵聽(TCP服務(wù)器模式特有操作)調(diào)用listen()函數(shù),Socketn的狀態(tài)更改為SOCK_LISTEN(0x14)Socket會一直處于等待狀態(tài),直到有來自客戶端的連接請求。一旦與客戶端相連,Socket狀態(tài)將會改變?yōu)镾OCK_ESTABLISHED(0x17)。TCP服務(wù)器模式發(fā)送發(fā)送數(shù)據(jù)時,需設(shè)置SOCKET、被發(fā)送數(shù)據(jù)的目的地址、數(shù)據(jù)大小以及當發(fā)送數(shù)據(jù)長度大于Socket的接收內(nèi)存空間剩余大小時的重發(fā)命令。發(fā)送數(shù)據(jù)的長度不能大于指定的SOCKETn的發(fā)送存儲器大小為了檢查SEND命令是否執(zhí)行完成,需要檢查發(fā)送數(shù)據(jù)的長度與實際發(fā)送的數(shù)據(jù)長度是否相等接收將數(shù)據(jù)從接收存儲器(RXbuffer)轉(zhuǎn)移到用戶的數(shù)據(jù)區(qū)域必須檢查寄存器Sn_RX_RSR的值是否大于零。如果大于零,則說明接收到的數(shù)據(jù)在接收存儲器中g(shù)etSn_RX_RSR()函數(shù)用來獲取接收緩沖區(qū)中接收到的數(shù)據(jù)的長度TCP服務(wù)器模式斷開連接發(fā)送一個斷開連接請求(FIN數(shù)據(jù)包)到其對等進程等待,直到得到響應(yīng)(FIN/ACK數(shù)據(jù)包)Socket狀態(tài)改變?yōu)镾OCK_CLOSED(0x00),并且Socket關(guān)閉關(guān)閉端口直接將Socket的狀態(tài)置為SOCK_CLOSED(0x00)不必理會其對等進程的狀態(tài)TCP客戶端模式設(shè)置W5200為TCP客戶端模式,其循環(huán)程序中包含的操作有:Socket初始化連接發(fā)送接收斷開連接關(guān)閉端口。TCP客戶端模式TCP客戶端模式與服務(wù)器模式非常類似。唯一不同的是,當端口完成初始化處于SOCK_INIT狀態(tài)時,客戶端模式是調(diào)用connect()函數(shù)請求與服務(wù)器的連接,而服務(wù)器模式則是調(diào)用listen()函數(shù)以等待連接連接發(fā)送連接請求(SYN數(shù)據(jù)包)到“TCP服務(wù)器”需設(shè)置SOCKET號、目的IP地址和目的端口號調(diào)用connect()函數(shù),一旦連接成功,端口狀態(tài)將會改變?yōu)镾OCK_ESTABLISHED(0x17)UDP

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論