導航:首頁 > 網路設置 > w5300網路晶元單埠設置

w5300網路晶元單埠設置

發布時間:2022-07-20 16:51:06

Ⅰ voto w5300怎樣設置wifi

你好,目前最普遍的連接wifi的方法如下:
1.打開設置-
2.打開無線網路與連接-
3.點擊wlan打開此功能-
4.點擊wlan設置選擇你要連接的網路信號-
5.成功連接可以通過wifi上網
註:在使用wifi時最好關閉數據網路,以防數據流失。
建議使用wifi前在家裡安裝家庭路由器

Ⅱ w5300的數據通信

完成初始化設置以後,W5300可以以TCP、UDP、IPRAW或MACRAW的方式打開SOCKET發送或接
收數據。W5300支持8個SOCKET同時且獨立地工作。在本章將描述每種通信方式的工作方法。 TCP是一種連接通信的協議,在TCP模式,首先要根據IP地址和埠號與對端建立SOCKET連接。通
過連接的SOCKET發送和接收數據。
建立SOCKET的連接有「TCP伺服器」和「TCP客戶端」之分。區分它們的方法是誰首先發送連接請
求(SYS數據包)。「TCP伺服器」等待對端的連接請求,當收到連接請求時建立SOCKET連接(被動打
開)。「TCP客戶端」主動發出連接請求,與對端建立連接(主動打開)。
SOCKET初始化
為了實現TCP通信,需要對SOCKET進行初始化設置並打開SOCKET。為了打開SOCKET,選擇其中
的一個SOCKET(被選擇的SOCKET稱之為SOCKETn),通過Sn_MR(P3:P0)和Sn_PORTR分別設置通
信協議和本機埠號(在TCP伺服器模式,稱之為偵聽埠號),然後執行OPEN命令。執行完OPEN命
令後,如果Sn_SSR改變為SOCK_INIT,則SOCKET的初始化設置完成。
在TCP伺服器和TCP客戶端模式,SOCKET初始化的過程都是相同的。下面的方法是將SOCKET初始
化為TCP模式。
{
START:
Sn_MR = 0x0001; /* sets TCP mode */
Sn_PORTR = source_port; /* sets source port number */
Sn_CR = OPEN; /* sets OPEN command */
/* wait until Sn_SSR is changed to SOCK_INIT */
if (Sn_SSR != SOCK_INIT) Sn_CR = CLOSE; goto START;
}
如果接收到對端的數據位元組數為偶數,Sn_MR(ALIGN)置『1』。當Sn_MR(ALIGN)=1時,W5300不
需要增加TCP模式的PACKET-INFO,而只將數據保存在SOCKETn的內部RX存儲器。這樣將減少主機對
SOCKET_INFO的額外處理,提高系統性能。(在前面的代碼中,Sn_MR=0x0101可能會被Sn_MR=0x0001
取代)
偵聽
運行LISTEN命令將W5300設置為TCP伺服器模式
{
/* listen SOCKET */
Sn_CR = LISTEN;
/* wait until Sn_SSR is changed to SOCK_LISTEN */
If (Sn_SSR != SOCK_LISTEN) Sn_CR = CLOSE; goto START;
}
建立連接?
當Sn_SSR改變為SOCK_LISTEN狀態時,如果收到SYN數據包,那麼Sn_SSR將改變為
SOCK_SYNRECV。發送了SYN/ACK數據包後,SOCKETn就建立了連接。SOCKETn建立連接以後就可
以進行數據通信。有兩種方法可以檢驗是否建立SOCKETn的連接。
第1種方法
{
if (Sn_IR(CON) == 『1』) Sn_IR(CON) = 『1』; goto ESTABLISHED stage;
/* In this case, if the interrupt of SOCKETn is activated, interrupt occurs. Refer to IR, IMR
Sn_IMR and Sn_IR. */
}
第二種方法
{
if (Sn_SSR == SOCK_ESTABLISHED) goto ESTABLISHED stage;
}
建立連接:接收到數據?
檢查是否接收到對端發送來的數據。
第1種方法
{
if (Sn_IR(RECV) == 『1』) Sn_IR(RECV) = 『1』; goto Receiving Process stage;
/* In this case, if the interrupt of SOCKETn is activated, interrupt occurs. Refer to IR, IMR
Sn_IMR and Sn_IR. */
}
第2種方法
{
if (Sn_RX_RSR != 0x00000000) goto Receiving Process stage;
}
第1種方法,當SOCKETn接收到數據包時,Sn_IR(RECV)將置『1』。這時如果主機還沒有處理上次
接收數據包的Sn_IR(RECV),而W5300又收到下一次的數據包,主機保持前一次的Sn_IR(RECV),不能
識別下一次數據包的Sn_IR(RECV),因此,如果主機沒有能力處理所有數據包的Sn_IR(RECV),建議不
採用這種方法。
建立連接:接收數據處理
當Sn_MR(ALIGN)=0時,數據包中包含PACKET-INFO和數據的數據。在Sn_ME(ALIGN)=1時,TCP
數據只有數據包而沒有PACKET-INFO。
在TCP模式,如果對端發送的數據的大小超過SOCKETn的RX存儲器的剩餘空間,那麼W5300將不能
接收數據,這時的W5300將繼續保持連接,並等待RX存儲器的剩餘空間大於數據長度。
{
/* first, check Sn_MR(ALIGN) */
if (Sn_MR(ALIGN) == 『0』)
{
pack_size = Sn_RX_FIFOR; /* extract size of DATA packet from internal RX memory */
}
else
{
pack_size = Sn_RX_RSR; /* check the total received data size */
}
/* calculate the read count of Sn_RX_FIFOR */
if (pack_size is odd ?) read_cnt = (pack_size + 1) / 2;
read_cnt = pack_size / 2;
/* extract DATA packet from internal RX memory */
for( i = 0; i < read_cnt; i++)
{
data_buf[i] = Sn_RX_FIFOR; /* data_buf is array of 16bit */
}
/* set RECV command */
Sn_CR = RECV;
}
注意:當SOCKETn只用於接收數據而不發送數據時,主機不能快速接收處理數據將導致使內部RX存
儲器溢出。
在這種情況下,即使W5300的窗口尺寸(接收數據的最大尺寸)不為0,對端誤以為窗口尺寸為0而不再發送數據,等待窗口尺寸增加。這樣就會降低W5300接收數據的性能。為了解決這個問題,主機首先處理內部RX存儲器接收的數據,同時通知對端,W5300的窗口尺寸增加了已經接收數據的大小。針對上面代碼,在RECV命令之後增加以下的代碼。
/* set RECV command */
Sn_CR = RECV;
/* Add the code that notifies the update of window size to the peer */
/* check the received data process to finish or not */
if(Sn_RX_RSR == 0) /* send the window-update packet when the window size is full */
{ /* Sn_RX_RSR can be compared with another value instead of „0‟, according to the host
performance of receiving data */
Sn_TX_WRSR = 0x00000001; /* set Dummy Data size to Sn_TX_WRSR */
Sn_CR = SEND; /* set SEND command */
while(Sn_CR != 0x00); /* check SEND command completion */
while(Sn_IR(SENDOK) == 0); /* wait for SEND OK */
Sn_IR(SENDOK) =1; /* Clear SENDOK bit */
}
建立連接:發送數據?/發送處理
將數據通過Sn_TX_FIFOR寫入到內部TX存儲器後,W5300將試著把數據發送到對端。發送數據的大
小不能比分配給該SOCKETn的內部TX存儲器空間大。如果發送數據的尺寸比MSS大,W5300將自動根據
MSS分片,然後再發送。
為了下一次數據的發送,主機必須檢查上次SEND命令是否執行完畢。如果上一次的SEND命令還沒
有執行完而又開始下一次的SEND命令,將可能產生各種各樣的錯誤。數據越大,執行SEND命令所需要
的時間就會越長。所以要想提高發送效率,適當將數據分為合適的大小發送。
{
/* first, get the free TX memory size */
FREESIZE:
get_free_size = Sn_TX_FSR;
if (Sn_SSR != SOCK_ESTABLISHED && Sn_SSR != SOCK_CLOSE_WAIT) goto CLOSED
state;
if (get_free_size < send_size) goto FREESIZE;
/* calculate the write count of Sn_TX_FIFOR */
if (send_size is odd ?) write_cnt = (send_size + 1) / 2;
else write_cnt = send_size / 2;
/* data to internal TX memory */
for (i = 0; i < write_cnt; i++)
{
Sn_TX_FIFOR = data_buf[i]; /* data_buf is array of 16bit */
}
/* check previous SEND command completion */
if (is first send ?) ; /* skip check Sn_IR(SENDOK) */
else
{
while(Sn_IR(SENDOK)==『0』)
{
if(Sn_SSR == SOCK_CLOSED) goto CLOSED state; /* check connection establishment */
}
Sn_IR(SENDOK) = 『1』; /* clear previous interrupt of SEND completion */
}
/* sets transmission data size to Sn_TX_WRSR */
Sn_TX_WRSR = send_size;
/* set SEND command */
Sn_CR = SEND;
}
建立連接:接收到FIN
它檢查是否接收到斷開連接的請求(FIN數據包)。檢查如下:
第1種方法
{
if (Sn_IR(DISCON) == 『1』) Sn_IR(DISCON)=『1』; goto CLOSED stage;
/* In this case, if the interrupt of SOCKETn is activated, interrupt occurs. Refer to IR, IMR
Sn_IMR and Sn_IR. */
}
第2種方法
{
if (Sn_SSR == SOCK_CLOSE_WAIT) goto CLOSED stage;
}
建立連接:斷開連接?/斷開連接處理
如果不再需要進行數據通信,或收到FIN數據包,那麼SOCKET的連接應該斷開。
{
/* set DISCON command */
Sn_CR = DISCON;
}
建立連接:關閉埠?
它檢查SOCKETn是否通過DISCON或CLOSE命令斷開連接或關閉埠。
第1種方法
{
if (Sn_IR(DISCON) == 『1』) goto CLOSED stage;
/* In this case, if the interrupt of SOCKETn is activated, interrupt occurs. Refer to IR, IMR
Sn_IMR and Sn_IR. */
}
第2種方法
{
if (Sn_SSR == SOCK_CLOSED) goto CLOSED stage;
}
建立連接:超時
超時可能發生在TCP數據包傳輸過程中,如連接請求(SYN數據包)或其響應數據包(SYN/ACK數
據包)、數據(DATA數據包)或其響應數據包(DATA/ACK數據包)、斷開連接請求(FIN數據包)或其
響應數據包(FIN/ACK數據包)等等。如果以上的數據包在RTR和RCR設定的時間內沒有發送出去,那麼
將產生TCP超時,且Sn_SSR將改變為SOCK_CLOSED狀態。
TCP超時檢查如下:
第1種方法:
{
if (Sn_IR(TIMEOUT bit) == 『1』) Sn_IR(TIMEOUT)=『1』; goto CLOSED stage;
/* In this case, if the interrupt of SOCKETn is activated, interrupt occurs. Refer to IR, IMR
Sn_IMR and Sn_IR. */
}
第2種方法:
{
if (Sn_SSR == SOCK_CLOSED) goto CLOSED stage;
}
SOCKET關閉
SOCKETn經過斷開連接處理或由於超時而斷開連接,它用於關閉斷開連接的SOCKETn。主機也可以不進
行斷開連接處理而直接關閉SOCKETn。
{
/* clear remained interrupts */
Sn_IR = 0x00FF;
IR(n) = 『1』;
/* set CLOSE command */
Sn_CR = CLOSE;
} 它發送連接請求(SYN數據包)到對端。在與對端SOCKET建立連接的過程中可能會出現ARP超時,
或TCP連接超時。
{
Sn_DIPR = server_ip; /* set TCP SERVER IP address*/
Sn_DPORTR = server_port; /* set TCP SERVER listen port number*/
Sn_CR = CONNECT; /* set CONNECT command */
}

Ⅲ w5300的簡介

W5300在內存空間和數據處理能力等方面都有很大的提高。W5300特別適用於IPTV,IP機頂盒和數字電
視等大流量多媒體數據的傳輸。通過一個集成有TCP/IP協議和10/100M的乙太網MAC和PHY的單晶元可以非常簡單和快捷地實現
Internet連接。
W5300與主機(MCU)採用匯流排介面。通過直接訪問方式或間接訪問方式,W5300可以很容易與主
機介面,就像訪問SRAM存儲器。W5300的通信數據可以通過每個埠的TX/RX FIFO寄存器訪問。由於
這些特性,即使一個初學者也很容易使用W5300實現Internet連接。

Ⅳ w5300的模塊

將25MHz的時鍾源經過6倍頻,建立150MHz的時鍾信號。150MHz的時鍾用於內部單元的運行,如
TCP/IP內核、主機介面管理和寄存器管理。鎖相環在復位後鎖定並提供穩定的時鍾信號。 電源調節系統通過3.3v的輸入建立1.8v/150mA的輸出電壓。電源調節系統為W5300的內核提供電源。
因此不需要其它電源調節器。為了使1.8v的電源更穩定,建議增加電容濾波。 它管理內部128K位元組的數據存儲器。由主機分配每個埠的TX/RX存儲器。主機可以通過每個
SOCKET的FIFO寄存器訪問TX/RX存儲器。 這是128K位元組通信數據存儲器,組成16個8K位元組的DPRAM (雙埠RAM)。可以由主機靈活分配給
每個SOCKET。 它管理MII介面,根據TEST_MODE[3:0]的配置,MII介面可以在內部PHY和外部PHY(第三方PHY)
之間切換。 W5300內部集成了10BaseT/100BaseTX的乙太網PHY。PHY支持半雙工/全雙工自動握手和
MDI/MDIX自動檢查。它還支持6種網路指示的LED輸出,如LINK狀態、速度和雙工狀態。 TCP/IP內核是完全基於WIZnet網路協議處理技術進行硬體邏輯化。
- 802.3乙太網MAC(介質訪問控制)
它控制乙太網的CSMA/CD(載波監聽多路訪問/沖突檢測)訪問。他是基於48位源/目的MAC地址的
協議技術。它也允許主機通過SOCKET0控制MAC層。因此可以實現軟體TCP/IP協議和硬體TCP/IP協議。
- PPPOE(通過乙太網的點對點協議)
這是在乙太網上實現PPP服務的協議。它將乙太網數據幀的有效載荷數據封裝為PPP數據幀而進行傳
輸。當接收數據時,它拆封PPP數據幀。PPPoE支持與PPPoE伺服器的PPP通信,支持PAP/CHAP驗證
方法。
- ARP(地址解析協議)
ARP是通過IP地址解析MAC地址的協議。它發送ARP響應給來自對端的ARP請求。它也發送ARP請求
查找對端的MAC地址,同時處理對該請求的ARP響應。
- IP(網路協議)
IP協議支持IP層的數據通信。不支持IP分片。不能接收分片的數據包。除了TCP和UDP,所有的協議
號都支持。在TCP和UDP情況下,使用硬體的協議棧。
- ICMP(Internet控制信息協議)
它接收ICMP數據包,如分片的MTU、無法訪問的目標及標識主機等。當收到Ping請求的ICMP數據包
時,它將響應Ping應答的ICMP數據包。它支持最大119個位元組的Ping請求。如果超過119個位元組時,它將
不再支持。
- IGMPv1/v2(Internet組管理協議版本1/2)
它處理IGMP協議,如加入/脫離組、在UDP多播模式下報告等等。只支持IGMP的版本1和版本2。如
果使用更高版本的IGMP, 則需要在IP層手動實現。
- UDP(數據報文協議)
這是在UDP層實現數據傳輸的協議。它支持用戶報文,如單播、多播和廣播。
- TCP(傳輸控制協議)
這是在TCP層實現數據傳輸的協議。它支持「TCP客戶端」和「TCP伺服器」。W5300不需要主機的干預,內部處理所有的通信協議。W5300基於TOE(TCP/IP Offload引擎),通
過減少主機處理TCP/IP協議時的負荷,可以極大地提升主機的性能。

Ⅳ 跪求乙太網晶元W5300與HR911105A的接線圖,使用W5300內部的PHYM模式

和當然提供房間內太感人就

Ⅵ w5300的特性

l 支持軟、硬體混合TCP/IP協議: TCP, UDP, ICMP, IGMP, IPv4, ARP, PPPoE, Ethernet;
l 支持8個獨立的埠(sockets)同時連接;
l 網路數據傳輸,速率可達到80Mbps;
l 支持ADSL連接 (支持PPPOE協議,帶PAP/CHAP驗證);
l 內部128K位元組存儲器作TX/RX緩存;
l 根據埠通信數據吞吐量動態調整內部TX/RX存儲器分配;
l 內嵌10BaseT/100BaseTX乙太網物理層,支持自動應答(全雙工/半雙工模式);
I 可選TX1:1 RX1:1 網路變壓器介面YL18-2050S,YT37-1107S及YL2J011D,YL2J201A
l 支持自動極性變換(MDI/MDIX);
l 支持8/16位數據匯流排;
l 0.18μm CMOS工藝;
l 3.3V工作電壓,I/O口可承受5V電壓,內部帶1.8V電壓調整器;
l LQFP-100,14x14mm無鉛封裝。

Ⅶ W5300完整可編譯FPGA代碼

這么捨得給分,好豪爽啊。
W5300是一款0.18µm CMOS工藝的單晶元器件,內部集成10/100M乙太網控制器,MAC和TCP/IP協議棧。W5300使用方便、穩定可靠,廣泛應用於高性能、低成本的Internet嵌入式領域。
既然用W5300這個晶元,對應的我估計你的FPGA開發板也是定了的,還是你需要從原理圖全部設計?把要求發我郵箱看看:[email protected]

閱讀全文

與w5300網路晶元單埠設置相關的資料

熱點內容
變電所網路通道異常正常 瀏覽:457
動車行駛時手機網路不好 瀏覽:230
注冊微信網路異常1009 瀏覽:235
海康威視如何更換網路 瀏覽:849
無線路由器傳輸網路 瀏覽:7
網路監控錄視頻截圖在哪裡看 瀏覽:173
國家規劃網路安全產業園區 瀏覽:542
網路和共享中心怎麼啟動 瀏覽:574
代練通登陸游戲顯示網路異常 瀏覽:36
中國移動網路進水了怎麼辦 瀏覽:170
淮南網路多少錢一個 瀏覽:245
家用wifi無法連接網路是什麼原因 瀏覽:802
小米路由器網路選哪個 瀏覽:161
山東機械行業網路推廣渠道有哪些 瀏覽:428
win10有wifi連接不上網路怎麼辦啊 瀏覽:775
許昌職業技術網路營銷 瀏覽:191
伺服器系統可以用無線網路 瀏覽:254
手機網路頻率漫遊啥意思 瀏覽:43
網路到哪個點就卡 瀏覽:277
已禁止移動網路怎麼開啟 瀏覽:745

友情鏈接