公司擁有優(yōu)秀的銷售團(tuán)隊和專業(yè)的研發(fā)部門,不但在品牌、價格、供貨、服務(wù)等方面領(lǐng)先業(yè)界,而且可為客戶提供及時、可行的技術(shù)支持和整體設(shè)計服務(wù),滿足不同客戶多層次需求。
W5500常見問題及解決方案(全)
Q1: 在芯片處于TCP_Server模式下,在交換機(jī)/路由器網(wǎng)絡(luò)中無法ping通也無法通訊。
R: WIZnet芯片是硬件協(xié)議棧芯片,有別于軟件協(xié)議棧,如果芯片不主動往網(wǎng)絡(luò)中發(fā)包,在TCP_Server模式下是不會有任何數(shù)據(jù)包發(fā)送的,這樣會造成路由ARP表中無法形成IP和MAC設(shè)備的對應(yīng)關(guān)系。
A:解決方案:
在芯片上電時往任意IP發(fā)送一個UDP數(shù)據(jù)包,從而更新路由的ARP表,形成匹配關(guān)系,后續(xù)通訊就正常了。
Q2: 芯片在TCP_Client模式下,斷電重啟之后無法立即連接到服務(wù)器。
R:這是由于客戶端沒有主動發(fā)送斷開請求,造成服務(wù)器并不知道Socket已發(fā)生異常斷開; 重新上電之后,芯片以相同的IP和端口連接服務(wù)器,而服務(wù)器還認(rèn)為此Socket鏈接存在,所以拒絕芯片的立即連接。
A:解決方案:
在芯片使用KEEP_ALIVE機(jī)制,一段時間內(nèi)發(fā)送呼吸包,如果芯片沒有給服務(wù)器回復(fù),服務(wù)器則判斷鏈接已斷開,并釋放Socket資源,這時就可以成功連接。如果對客戶端的本地端口沒有要求的話,也可以在初始化Socket的部分讓端口自動+1處理。兩種方式根據(jù)具體應(yīng)用分析采用。
注: 有的場景不能采用端口自動+1的方式,比如電力104規(guī)約,只允許采用2404端口連接。
Q3: 網(wǎng)線異常斷開,服務(wù)器的Socket已經(jīng)斷開,但是芯片不知道Socket已經(jīng)斷開,并沒有重建鏈接,此時怎么處理?
A:解決方案:
可以在主循環(huán)中加入判斷PHYCFGR狀態(tài)的處理流程,如果PHY狀態(tài)發(fā)生異常,釋放所有的socket資源,并重新初始化socket。相關(guān)寄存器如下:
Q4:如果芯片作為TCP_Server,最多可以鏈接幾個Client,應(yīng)該如何操作?
A:解決方案:
芯片作為TCP_Server,最多可以與8個客戶端建立連接。不能初始一個Socket對應(yīng)多個連接。可以將芯片的8個socket全部初始化,這樣就可以與8個不同的TCP_Client建立通訊鏈接。
Q5: 在芯片處于TCP_Client模式下,無法連接到服務(wù)器。
R: 在TCP_Client模式下,WIZnet芯片無法連接到服務(wù)器。
A: 遇到這個問題,有一個排查的步驟:
- 檢查IP層是否可以PING通;
- 檢查服務(wù)器的目標(biāo)端口是否處于偵聽狀態(tài),否則會收到RST數(shù)據(jù)包;
- WIZnet芯片在連接服務(wù)器時,首先會發(fā)送ARP請求,請確認(rèn)ARP得到正確回復(fù);
- 檢查客戶端-服務(wù)器間的3步握手是否完成;
Q6:W5200進(jìn)入Power Down模式后,長時間以后喚醒不能恢復(fù)正常,如何解決?
A: 解決方案:
W5200的Power Down模式是通過在一定時間內(nèi)關(guān)閉W5200的內(nèi)置PHY電路的工作來實現(xiàn)的,但是有一定幾率PHY在休眠之后無法喚醒,需要在軟件上做處理來喚醒芯片。經(jīng)過測試驗證發(fā)現(xiàn),W5200芯片在3s極限值內(nèi)快速喚醒一次再進(jìn)入Power Down,當(dāng)芯片需要喚醒正常工作時就不會出現(xiàn)以上問題。
Q7:WIZnet芯片進(jìn)行公網(wǎng)通訊或者芯片間通訊的話怎么抓包?
A: 解決方案:
芯片和PC通訊的話可以直接通過Wireshark抓包,如果芯片和公網(wǎng)直接通訊或者通訊是發(fā)生在芯片之間,則沒有辦法直接抓包,這需要借助于“可以抓包的交換機(jī)”,這種交換機(jī)多數(shù)是二手產(chǎn)品,而且是10M的網(wǎng)絡(luò),比如TP-LINK TL-HP5MU。把芯片和抓包計算機(jī)的網(wǎng)線分別插上交換機(jī)就可以運(yùn)行抓包工具抓包。
Q8: W5300 TCP連接以后,Socket0數(shù)據(jù)收發(fā)正常,其它Socket有數(shù)據(jù)丟失是什么問題?
A:解決方案:
W5300是總線方式操作,在確保地址總線和數(shù)據(jù)總線連接正確的情況下,還有一個很重要的問題,就是保持總線時序統(tǒng)一,經(jīng)過驗證MCU總線地址保持時間至少是W5300總線操作時間的2倍以上,否則可能會導(dǎo)致W5300來不及處理數(shù)據(jù)而導(dǎo)致數(shù)據(jù)丟失。如下圖介紹。
Q9: W5500的硬件設(shè)計和以往的以太網(wǎng)設(shè)計有不同的地方,可否使用客戶原有的以太網(wǎng)經(jīng)驗電路?
A:解決方案:
不能使用以往的經(jīng)驗電路,請嚴(yán)格按照WIZnet給出的參考設(shè)計進(jìn)行硬件設(shè)計。
有的客戶反饋在使用原有的經(jīng)驗電路也可以正常通訊,但是有可能發(fā)生在實驗室正常,而客戶現(xiàn)場連接不上的情況,所以統(tǒng)一建議客戶使用官方的參考設(shè)計。
Q10:W5500的以太網(wǎng)電路,正常線序連接的話可能必須做過孔交叉線序,能否在線路上做交叉處理?
A: 解決方案:
W5500的以太網(wǎng)接口的四根線,按照正常的線序連接,必須通過過孔交叉線序; 按照以太網(wǎng)布局規(guī)范,需要等長差分走線。而且需要盡量少的過孔,可以適當(dāng)做P-N交叉,既TXP-TXN交叉,RXP-RXN交叉,以符合以太網(wǎng)布線規(guī)范的要求。
Q11: Wake On Line(WOL)功能如何使用?
A:解決方案:
WIZnet芯片打開WOL功能只需要置位MR寄存器的WOL位,不需要外部設(shè)定。喚醒方法為向WIZnet芯片的UDP端口發(fā)送Magic數(shù)據(jù)包(0xffffffffffff+16個目的MAC地址),設(shè)備喚醒后IR寄存器的WOL位會置1,通過檢測該位獲取WIZnet芯片的狀態(tài)。(注意WOL功能不能和掉電模式(Power down mode)同時打開)
Q12: 如何使用UDP組播功能?
A:解決方案:
使用WIZnet芯片的UDP組播功能有幾點(diǎn)需要注意:
1,需要在打開Socket之前,先指定目標(biāo)MAC地址為組播MAC地址,定義規(guī)則如下:
2,打開一個支持多播UDP的Socket,目標(biāo)IP為組播地址;
3,然后就可以進(jìn)行UDP組播傳輸。
注意:如果沒有定時發(fā)送“維持UDP組播”的數(shù)據(jù)包 的話就會被清出組播組,可以定時執(zhí)行打開步驟2的打開Socket的指令,因為打開和維持UDP組播的數(shù)據(jù)包是完全一樣的。
Q13: 運(yùn)行HTTP_Server程序在不同的瀏覽器下顯示效果不同,有的動態(tài)效果顯示不出來?
R: 這個是HTML代碼和瀏覽器的兼容性問題,因為HTML5的很多標(biāo)簽和CSS樣式表在低版本或者不同的瀏覽器內(nèi)核下的排版和兼容性都不同。
A: 在HTML開發(fā)的時候使用JavaScript可以判斷瀏覽器的內(nèi)核和版本,可以針對不同的瀏覽器開發(fā)不同的執(zhí)行代碼和CSS樣式表,或者建議客戶使用推薦用戶使用chrome系列或者chromium內(nèi)核的瀏覽器,因為其對HTML5/CSS3支持是比較完善的。
Q14: MAC地址定義有什么特殊要求?
A:解決方案:
MAC地址要求不嚴(yán)格的話可以自定義,因為只要在一個子網(wǎng)內(nèi)沒有重復(fù)的MAC地址就不會造成MAC地址沖突的問題,因為如果進(jìn)行公網(wǎng)通訊,網(wǎng)關(guān)會通過NAT功能將網(wǎng)關(guān)的MAC和IP對數(shù)據(jù)包中的MAC和IP進(jìn)行替換然后再和公網(wǎng)通訊,所以不會造成公網(wǎng)中的MAC沖突的問題。但是如果要求比較嚴(yán)格,則需要從IEEE基金會申請全球唯一的MAC地址,申請地址如下:
https://standards.ieee.org/products-services/regauth/oui36/index.html
進(jìn)入該頁面后點(diǎn)擊Log in or create an account(新用戶需注冊),登陸后即可購買。
Q15: WIZnet芯片PING不通其它設(shè)備。
A:根據(jù)ICMP協(xié)議,request包的大小為128byte,reply包比request包大8byte,為136byte。
客戶可以分別定義兩個Buffer[128]和Buffer[136]分別對應(yīng)request包和reply包,也可以共用一個Buffer[136],但是不能發(fā)送接收使用同一個128byte的Buffer,否則會造成接收數(shù)據(jù)不全,無法解析。
Q16: 使用中斷方式,回環(huán)測試時無法清除中斷
R: W5500收到數(shù)據(jù)后會產(chǎn)生RECV中斷,當(dāng)回環(huán)測試時,正常清掉RECV中斷后,由于采用的回環(huán)測試方式,W5500又將同一包數(shù)據(jù)發(fā)送了出去,所以又會產(chǎn)生SEND_OK中斷。
A: 此時需要再次清SEND_OK中斷,或者改用單向測試方式即可。
Q17: 為何使用STM32F103無法完全發(fā)揮W5500的性能
A: STM32F103的主頻最大72MHz,但是SPI接口的最高頻率限制為18MHz
而W5500的SPI時鐘最高可達(dá)80MHz,所以以
STM32 驅(qū)動W5500的話,無法滿足W5500對最高時鐘的需求。
而如果使用STM40x處理器,SPI時鐘使用42Mhz,使用DMA方式,可以達(dá)到回環(huán)測試17Mbps的速率(收+發(fā)),單獨(dú)發(fā)送可以達(dá)到13Mbps的速率
Q18: 如何使用PHY-PHY電路?
A: 經(jīng)常有需要使用PHY-PHY電路的場景,比如使用WIZnet做內(nèi)部數(shù)據(jù)通訊,比如需要使用板載的Switch電路等等,PHY-PHY電路的要點(diǎn)就是使用耦合電容隔離兩端的PHY,并加入兩個PHY各自的偏置電路。類似于如下的設(shè)計:
Q19: 以太網(wǎng)如何級聯(lián)?
A: 在特殊的應(yīng)用場景下,客戶需要用網(wǎng)線將所有的節(jié)點(diǎn)按照這種方式“A-B-C-D-E”線狀級聯(lián)在一起。這種應(yīng)用需要使用Switch芯片,比如IP175G等芯片,按如下圖示鏈接:
Q20: 無法通過“以太網(wǎng)物理層一致性測試”中的眼圖測試
A: 眼圖是表現(xiàn)網(wǎng)絡(luò)信號是否穩(wěn)定的測試,眼圖混亂有可能導(dǎo)致同一批次的設(shè)備有的無法正常通信,造成原因是:
1,沒有按照以太網(wǎng)的布局標(biāo)準(zhǔn)來設(shè)計硬件電路,
2,采用的可能是不合格的網(wǎng)絡(luò)變壓器器件。
下圖為使用W5500和HRW5500RE的眼圖測試結(jié)果。
Q21: 使用WIZnet芯片無法通過低溫測試
R: 通不過低溫測試通常表現(xiàn)為低溫-40℃不啟動,原因是電路上除了WIZnet 的芯片外,還有晶振以及網(wǎng)絡(luò)變壓器等周邊器件,造成結(jié)果通常是由采用的周邊器件不是工業(yè)級溫度的器件。癥狀如下:
晶振不是工業(yè)級溫度:寄存器無法讀寫,無法操作WIZnet芯片;
網(wǎng)絡(luò)濾波器不是工業(yè)級溫度:低溫下LINK燈不亮,PHY握手不成功。
Q22: S2E模塊,第一塊正常,以后的模塊不正常
R: 不同的系統(tǒng)對ARP表的更新時間設(shè)定不太一樣,在Windows2000/XP環(huán)境中,ARP表項的老化時間是2分鐘,95/98以及NT環(huán)境下為10分鐘,在大部分Cisco交換機(jī)中,該值是5分鐘,華為的設(shè)備一般為20分鐘……而S2E模組的IP出廠默認(rèn)值都是192.168.1.88,而MAC都是不同且唯一的,造成PC系統(tǒng)的ARP中第一個之后的模塊的IP和MAC處于不對應(yīng)的狀態(tài),所以工作不正常,這種情況也較常發(fā)生于設(shè)備生產(chǎn)環(huán)節(jié)。
A: 需要手工強(qiáng)制清除系統(tǒng)的ARP表,指令為arp –d,或者使用我們新版本的上位機(jī)設(shè)置軟件,新版本中已經(jīng)加入的清除ARP表的步驟。
Q23: MCU是5V的IO電平,可以和WIZnet通訊嗎?
A: WIZnet多數(shù)的芯片的IO是兼容5V電平的,可以和5V電平的MCU直接通訊,但是為了保險,我們一般都會在SPI線路上各串接一個限流電阻,比如10~100歐姆的電阻,防止過流損壞。下圖是W5500的IO耐壓參數(shù)。
具體芯片請參看手冊的“High level input Voltage”參數(shù)確認(rèn)。
Q24: 在Linux下如何使用W5500芯片?
A:在Linux kernel新版本中在原先支持W5100,W5200的基礎(chǔ)上已經(jīng)加入了對W5500的支持,如果客戶基于老版本的Linux開發(fā),請參照Linux新版本修改,或者基于我們提供給的老版本驅(qū)動。
文件路徑為: /drivers/net/ethernet/wiznet/w5100-spi.c
具體說明見如下鏈接:
Q25: WIZnet芯片和支持IP分片的設(shè)備通訊的時候怎么辦?
A: 所謂的IP分片是指:當(dāng)IP數(shù)據(jù)報超過幀的MTU(最大傳輸單元)時,它將會被分片傳輸。分片能發(fā)生在發(fā)送端或者中轉(zhuǎn)路由器,且在傳輸過程中可能被多次分片。在最后的目標(biāo)機(jī)器上這些分片才會被內(nèi)核的的IP模塊重新組裝。
WIZnet芯片都不支持IP分片,不能發(fā)送支持IP分片的數(shù)據(jù)包,只能按照MTU(最大發(fā)送字節(jié)數(shù))發(fā)送數(shù)據(jù),但是如果對方設(shè)備給WIZnet芯片發(fā)送IP分片的數(shù)據(jù)包的話, WIZnet芯片可以正常接收,但是不會自動合并成一個數(shù)據(jù)包。
Q26: 為何使WIZnet芯片不回復(fù)PING包請求
A: 有些特殊場景下,客戶需要所有的設(shè)備屏蔽掉PING包回復(fù),WIZnet芯片可以通過設(shè)置MR (Mode Register)的PING Response Block來屏蔽PING包Reply,設(shè)置為“1”WIZnet芯片就不會回復(fù)任何PING請求。
Q27:如何使用W5100S的SOCKET-less實現(xiàn)ARP
A: W5100S支持SOCKET-less指令,只需要設(shè)置相關(guān)的寄存器就可以方便的實現(xiàn)ARP,無需像W5500一樣用socket實現(xiàn)。實現(xiàn)步驟:
1,設(shè)置SLRTR(重試時間)SLRCR (重試次數(shù)) SLPIPR ( SOCKET-less的IP) 等參數(shù);
2, 通過設(shè)置SLCR (SOCKET-less Command Register)來觸發(fā)查詢操作,其中ARP查詢的MAC信息會被存儲在SLPHAR (SOCKET-less Peer Hardware Address Register)中。
Q28:如何使用W5100S的SOCKET-less指令實現(xiàn)PING
A: W5100S支持SOCKET-less指令,只需要設(shè)置相關(guān)的寄存器就可以方便的實現(xiàn)PING,無需像W5500一樣用socket實現(xiàn)。實現(xiàn)步驟:
1,設(shè)置SLRTR(重試時間)SLRCR (重試次數(shù)) SLPIPR ( SOCKET-less的IP) PINGSEQR(PING隊列號碼)和PINGIDR(PING包ID號)等參數(shù);2, 通過設(shè)置SLCR (SOCKET-less Command Register)來觸發(fā)查詢操作,PING查詢的話如果SLIR( SOCKET-less 中斷寄存器)被觸發(fā),則表明PING包成功到達(dá)。
Q29:每個UDP包都會發(fā)送ARP請求,如何關(guān)閉強(qiáng)制ARP
A: WIZnet芯片在UDP模式,在發(fā)送第一個UDP數(shù)據(jù)包之前發(fā)送一次ARP請求數(shù)據(jù)包,然后它會將數(shù)據(jù)連續(xù)發(fā)送到同一個Peer。可以通過設(shè)置MR2 (Mode Register 2)的FARP寄存器來設(shè)置強(qiáng)制ARP功能,如果此位設(shè)置為“1”,它為每個UDP數(shù)據(jù)包發(fā)送ARP請求。設(shè)置為“0”,將只在第一次發(fā)送的時候發(fā)送一次ARP請求數(shù)據(jù)包。
Q30: 如果發(fā)生異常,如何復(fù)位PHY部分
A: W5500和W5100S都可以通過設(shè)置寄存器來復(fù)位PHY部分,而不是整體復(fù)位芯片。其中W5500是設(shè)置PHYCFGR(PHY配置寄存器)的RST位為“0”來復(fù)位PHY部分,注意復(fù)位后需要重新置為“1”,
而W5100S是通過PHYCR1(PHY Control Register 1)的RST位來復(fù)位PHY部分。
Q31:W5100S和W5500的最低功耗是多少?
A: W5100S和W5500因為采用新工藝以及新的PHY方案,所以整體功耗相對W5100更為改善,對比數(shù)據(jù)(LINK)如下:
W5100S | W5500 | W5100 | ||||
典型值 | 最大值 | 典型值 | 最大值 | 典型值 | 最大值 | |
100M | 93mA | 110mA | 128mA | 138mA | 183mA | |
10M | 150mA | 170mA | 75mA | 146mA | 183mA | |
節(jié)能模式 | 17mA | X | 13mA | X | X | X |
Q32:OPMODE管腳和相關(guān)寄存器,誰的優(yōu)先級高
A:WIZnet多數(shù)芯片有OPMODE硬件管腳來管理PHY鏈路狀態(tài),但是也可以通過內(nèi)部的寄存器來設(shè)置,他們生效有先后順序,芯片上電的時候以O(shè)PMODE管腳設(shè)置為準(zhǔn),但是上電之后可以通過寄存器更改PHY鏈路狀態(tài),而忽略硬件管腳的配置。
注意芯片管腳的設(shè)置是不一樣的:
W5100: W5500:
Q33:WIZnet芯片對晶振有什么要求
A:所有的WIZnet的Ethernet系列產(chǎn)品都是使用的25MHz的晶振,對晶振的要求不太高,一般情況下只要是滿足“±30 ppm” 的晶振都可以使用,溫度等級根據(jù)實際應(yīng)用選擇,至于以及頻率衰減,一般要求“±3ppm / year Max”,具體要求見相關(guān)產(chǎn)品的手冊。
注意:W5500的晶振負(fù)載電容為18pF,W5100S的負(fù)載電容為8pF
Q34:WIZnet產(chǎn)品如何使用有源晶振
A:具體芯片的有源晶振使用方法和要求不一樣.
比如W5500的要求是:有源晶振通過XI/CLKIN管腳輸入時鐘信號,信號電平要求是3.3V,XO管腳懸空。
而W5100S的要求是:有源晶振通過XSCI管腳輸入時鐘信號,信號電平要求是1.2V,XSCO管腳懸空。
Q35:兩個W5500用網(wǎng)線直連,無法通訊,LINK燈不亮
A:W5500不支持自動極性轉(zhuǎn)換(AUTO-MDI),所以兩個W5500不能使用直連網(wǎng)線連接,否則會造成無法完成PHY握手, 所以兩個W5500互聯(lián)需要使用交叉網(wǎng)線,或者中間通過交換機(jī)連接。
Q36:如何使用W5500的keep-alive功能?
A: 使用WIZnet的keep-alive功能需要先設(shè)定本Socket的keep-alive包的發(fā)送時間間隔,單位是5秒,設(shè)置方式如下:
IINCHIP_WRITE(Sn_KPALVTR(s),0x02); //設(shè)置時間間隔為2個單位,即10s
Keep-alive功能會在W5500同對方完成一次數(shù)據(jù)通訊后開啟,其后W5500會自動給對端按照設(shè)定的時間間隔發(fā)送keep-alive包。
Q37:如何測試實際通訊速度(AX1)
A: 可以使用WIZnet官方的速度測試工具AX1進(jìn)行通訊速度測試,測試方法如下:
第一步,打開AX1并點(diǎn)擊“CPUTICK”校準(zhǔn)時鐘;
第二步,選擇“TCP→Listen/Connect”,并輸入對應(yīng)的參數(shù);
第三部,點(diǎn)擊“File”選擇測試媒介文件(一般txt文檔即可);
第四部,點(diǎn)擊“Ts/Us/Tr/Ur/∞”開始測速,界面會顯示實時速率。
Ts:TCP模式發(fā)送數(shù)據(jù)再接收,整個過程只進(jìn)行一次
Us:UDP模式發(fā)送數(shù)據(jù)再接收,整個過程只進(jìn)行一次
Tr:TCP模式接收數(shù)據(jù)再發(fā)送出去,整個過程只進(jìn)行一次
Ur:UDP模式接收數(shù)據(jù)再發(fā)送出去,整個過程只進(jìn)行一次
∞:以UDP的方式循環(huán)發(fā)送/接收數(shù)據(jù)n次
Q38:對W5500進(jìn)行PING測試,為什么會丟包
A: 在對W5500進(jìn)行PING測試的時候偶爾會有丟包,以及PING時間長的問題,造成這種情況的原因有幾個:
- 在對W5500進(jìn)行PING測試的同時還進(jìn)行,數(shù)據(jù)通訊,PING基于ICMP協(xié)議在處理優(yōu)先級最低,W5500會優(yōu)先處理數(shù)據(jù)通訊數(shù)據(jù),所以會偶爾造成PING超時或PING時間長;
- 網(wǎng)絡(luò)環(huán)境比較差,網(wǎng)絡(luò)比較忙碌,造成PING包到達(dá)和返回的時間相應(yīng)延長;
Q39:WOL模式和Power Down模式的區(qū)別
A: WOL模式下,WIZnet芯片除了Magic packet數(shù)據(jù)包之外不再接收其他類型的數(shù)據(jù)包,只有接收到Magic packet數(shù)據(jù)包,才會觸發(fā)中斷,從而通知MCU重新初始化WIZnet芯片,繼而開始工作。
Power Down模式下,WIZnet芯片的PHY部分會處于完全關(guān)斷的情況,只有通過置位 [Operation Mode Configuration Bit]為其他的模式才可以退出Power Down模式。
兩種模式都可以起到節(jié)能的目的,但是實現(xiàn)方式不一樣,在WOL模式下,MCU可以關(guān)掉其他的外設(shè),等待網(wǎng)絡(luò)喚醒后重新開始工作;而Power Doen模式下,本身不再接收其他的數(shù)據(jù)包,不能通過網(wǎng)絡(luò)端喚醒,但是因為功耗最大的PHY在此模式下是關(guān)斷,沒有功耗的,所以本身就可以做到比較低的功耗。根據(jù)實際情況選擇需要使用的模式。
Q40:W5500正常工作時,芯片表面溫度達(dá)到多少?
A: 經(jīng)實際測試,W5500在25℃的室溫下工作,實際的溫升有大概10~15℃,芯片表面大概是40攝氏度左右。
根據(jù)W5500的可靠性性能測試報告,W5500的極限溫度范圍如下:
Q41:Wireshark如何過濾數(shù)據(jù)包
A: 我們在使用抓包軟件Wireshark時,經(jīng)常需要過濾掉無用包,只選擇針對WIZnet芯片通訊的包進(jìn)行分析。常用過濾語法如下:
字段詳解:
Protocol(協(xié)議):ether, fddi, ip, arp, rarp, decnet, lat, sca, moprc, mopdl, tcp and udp.
Direction(方向):src, dst, src and dst, src or dst
Host(s):net, port, host, portrange.
Logical Operations(邏輯運(yùn)算):not(!), and(&&), or(||)
例子: (src host 10.4.1.12 or src net 10.6.0.0/16) and tcp dst portrange 200-10000 and dst net 10.0.0.0/8
顯示來源IP為10.4.1.12或者來源網(wǎng)絡(luò)為10.6.0.0/16,目的地TCP端口號在200至10000之間,并且目的位于網(wǎng)絡(luò)10.0.0.0/8內(nèi)的所有封包。
Q42:如何使用W7500 ISP工具?
A: W7500和W7500都可以通過SWD和ISP的方式寫入程序,對于ISP方式,WIZnet提供專門的ISP工具“W7500 ISP Tool”來下載程序。通過如下幾步就可以刷寫程序:
1,拉高BOOT管腳,并Reset;
2,選擇ISP工具的對應(yīng)串口,點(diǎn)擊“Open”完成握手;
3,選擇擦除區(qū)域及寫保護(hù)選項;
4,選擇程序并點(diǎn)擊“ISP Start”開始下載;
Q43:W7500如何使用KEIL通過SWD調(diào)試下載程序
A 解決方案:
1,下載W7500 128K FLASH project并拷貝到KEIL的FLASH文件夾;并按右圖將W7500燒寫算法添加到KEIL算法目錄,并設(shè)置算法在RAM中運(yùn)行的位置;
2,按下圖設(shè)置設(shè)置下載選項:
3,在Device選項中選擇“Use Debug Driver”選項;
4,通過工具欄的“Download”即可進(jìn)行程序下載。
Q44:MCU無法讀寫W5500寄存器的故障排除步驟
A 解決方案:
1,檢查供電,特別是內(nèi)部變壓器的供電;
2,檢查晶振輸入腳是否有波形;
//插上網(wǎng)線,如果LINK燈亮的話,可以基本確定供電和晶振沒有問題;
3,檢測SPI時序是否與右圖一致。
4,使用SPI接口讀取一個參數(shù)相對固定的寄存器,比如版本寄存器;