在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ZYNQ SOC案例開發:網絡調試助手+W5500協議棧芯片

電子設計 ? 來源:博客園 ? 作者:沒落騎士 ? 2020-12-31 11:54 ? 次閱讀

在上一篇該系列博文中講解了MATLAB待處理數據寫入.bin二進制數據文件的過程,接下來需要將數據通過以太網發送到ZYNQ驗證平臺。之前了解過Xilinx公司面向DSP開發的System Generator可以通過硬件協仿真的方式,進行算法板級驗證。一個是本人不熟悉這種方式,再一個缺乏通用性,也無法在系統層面進行硬件驗證。當然方案有很多,熟悉上位機的朋友完全可以自己寫個軟件完成數據傳輸和算法結果對比等功能。

這里選擇最簡單的方案:在上位機通過網絡調試助手將數據打包并發送至以太網端口,ZYNQ端利用W5500硬件協議棧芯片解析數據。有人可能會說用ZYNQ這么高端的設備還使用外接協議棧芯片連接以太網真是浪費,這里就算是開個頭吧,只能說根據能力和現有條件選擇傳輸方案。如果數據量較大的場合,可考慮用LWIP開源協議棧或直接利用verilogHDL編寫UDP/IP協議和MAC控制器的方式實現1000Mbps速率傳輸。

本文主要總結內容包括:TCP協議基礎 網絡調試助手應用事項,以及W5500的驅動移植。為了保證數據正確性,選用TCP這一可靠傳輸協議。以下介紹兩個比較淺顯易懂的博文,供沒有網絡和TCP協議基礎的朋友參考。(見參考鏈接1 2)

有了以上基礎知識,我們就可以正確配置網絡參數了。查看W5500驅動中網絡參數配置部分代碼:
void Load_Net_Parameters(void) {
//加載端口0的工作模式,TCP客戶端模式
S0_Mode = TCP_CLIENT; //UDP_MODE

Gateway_IP[0] = 192; //加載設備網關參數
Gateway_IP[1] = 168;
Gateway_IP[2] = 90;
Gateway_IP[3] = 1;

Sub_Mask[0] = 255; //加載設備子網掩碼
Sub_Mask[1] = 255;
Sub_Mask[2] = 255;
Sub_Mask[3] = 0;

Phy_Addr[0] = 0x0c; //加載設備物理地址(mac)
Phy_Addr[1] = 0x29;
Phy_Addr[2] = 0xab;
Phy_Addr[3] = 0x7c;
Phy_Addr[4] = 0x00;
Phy_Addr[5] = 0x01;

IP_Addr[0] = 192; //加載本設備(FPGA端)IP地址
IP_Addr[1] = 168;
IP_Addr[2] = 90;
IP_Addr[3] = 199;
//加載設備端口0(socket 0)的端口號5000
S0_Port[0] = 0x13; //十六進制 1388轉換成十進制為5000
S0_Port[1] = 0x88;

//設定的是客戶端模式
if(S0_Mode == TCP_CLIENT)
{
//加載端口0的目的(如調試用的pc機)IP地址
S0_DIP[0] = 192;
S0_DIP[1] = 168;
S0_DIP[2] = 90;
S0_DIP[3] = 188;

//加載端口0的目的(如調試用的pc機)端口號6000
S0_DPort[0] = 0x17;
S0_DPort[1] = 0x70;
}

//設定的是UDP模式,初始化給一個目的IP和端口號。
if(S0_Mode == UDP_MODE)
{
//加載端口0的目的(如調試用的pc機)IP地址
UDP_DIPR[0] = 192;
UDP_DIPR[1] = 168;
UDP_DIPR[2] = 90;
UDP_DIPR[3] = 188;
//加載端口0的目的(如調試用的pc機)端口號6000
UDP_DPORT[0] = 0x17;
UDP_DPORT[1] = 0x70;
}
}

此處將PC端作為TCP協議中服務器,ZYNQ驗證平臺視為客戶端,即為“呼叫端”。由代碼看出PC端IP地址為192.168.90.188,子網掩碼應設為:255.255.255.0,這樣ZYNQ與PC端在一個子網內,可直接通過網線連接。 端口號為6000。驅動中包含W5500 SPI用戶接口時序部分代碼,可簡單修改調用本人的博文《ZYNQ EMIO使用及可重用封裝》中的EMIO接口函數(見參考鏈接3)。

根據上面參數配置好PC端的IP地址 子網掩碼后,我們來看下網絡調試助手的“坑”。

o4YBAF9uKYWAYGM7AAG3E_-d-Iw518.png

基本使用沒什么可說的,網上教程很多。關鍵是畫紅框的部分。這里的發送周期要盡量設置大些,因為整個數據文件會被切割成多個數據包,每個包的發送和允許重傳時間由總的發送周期分配得到。如果文件較大,發送周期又設置的較小,會導致后半部分被丟棄(所設置時間只夠傳輸文件的前半部分)。RX方向接收數據時選擇接收轉向文件,注意兩點:1 接收文件的擴展名同樣要為.bin 2 不要選擇十六進制顯示,否則接收數據會變成字符串(可能是軟件bug)。

W5500的C語言驅動基于網上流傳的STM32版本代碼。其中應用API為Process_Socket_Data中的發送和接收函數:Write_SOCK_Data_Buffer Read_SOCK_Data_Buffer。兩者內部控制讀寫指針偏移以及調用SPI接口函數完成數據傳輸,此處不進行詳述,關于W5500的C語言驅動可看教程視頻(見參考鏈接4)。最后附上環回數據的demo效果:

pIYBAF9uKYeAbG1OAAKTv_cMx78744.png

對于網絡傳輸部分的總結就到這里,后邊可能會考慮利用LWIP完成高速傳輸。數據傳到ZYNQ了,下一步當然是先緩存起來,再發送到PL端驗證算法模塊,這樣做的好處是可以模擬實時數據流,比如驗證通信算法和視頻處理算法時尤為適用。華麗分割線

編輯:hfy


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Xilinx
    +關注

    關注

    73

    文章

    2179

    瀏覽量

    123873
  • C語言
    +關注

    關注

    180

    文章

    7626

    瀏覽量

    139617
  • TCP
    TCP
    +關注

    關注

    8

    文章

    1395

    瀏覽量

    80093
  • 子網掩碼
    +關注

    關注

    2

    文章

    41

    瀏覽量

    11142
  • 網絡傳輸
    +關注

    關注

    0

    文章

    143

    瀏覽量

    17816
收藏 人收藏

    評論

    相關推薦

    使用W5500模塊實現DHCP協議,請教一個問題

    W5500模塊發送DHCP協議中的Discovery數據,抓包工具抓到了Offer數據,但模塊卻收不到。使用網絡調試助手,UDP模式下,收
    發表于 10-16 15:40

    新華龍電子推出最新網絡開發板(W5100&W5500方案)

    方案。  軟件方面深圳新華龍電子有限公司提供了豐富的代碼資源供用戶評估。  網絡開發板布局:芯片特性:1、W5500全硬件TCP/IP協議
    發表于 12-17 17:22

    WIZnet W5500的特點和應用介紹

    ),使得用戶使用單芯片就能夠在他們的應用中拓展網絡連接。支持TCP,UDP,IPv4,ICMP,ARP,IGMP以及PPPoE協議W5500內嵌32K字節片上緩存以供以太網包處理。
    發表于 05-05 13:28

    什么是網絡卸載?W5500中文資料

    。因此, WIZnet網絡芯片可以被視作為一個MCU的協處理器。即:幫助主芯片處理一部分工作,從而降低主系統負載,降低開發難度,提高穩定性。W550
    發表于 06-11 14:30

    W5500模塊的使用

    以太網芯片w5500是WIZnet公司研發的一款超高性價比的芯片,是新一代全硬件協議的專用芯片
    發表于 05-25 17:10

    基于FPGA和W5500的以太網傳輸系統實現

    區和接收緩存區存儲用于數據傳輸。無需考慮協議內部各層關系,不涉及操作系統,只需要正確配置就可以實現網絡連接,接口電路簡單、編程靈活方便。本設計從成本控制和實現周期來考慮,采用了以W5500芯片
    發表于 08-07 10:10

    w5500 UDP模式網絡調試助手發送數據>1472,收不到數據??

    設置UDP模式,socket接收和發送設置2k,使用網絡調試助手,單次發送數據1472個字節,W5500接收不到數據。比如我單次發送1473個字節,上位機應該是分成2幀發送,還是說現在
    發表于 10-12 17:24

    W5500以太網芯片分享!

    w5500 集成硬件TCPIP協議,內置MAC/PHY,開發容易,使用簡單。適用于,醫療、安防、工業、智能家居、智能電表等物聯網領域。特點及優勢全硬件TCP/IP
    發表于 09-26 19:33

    w5500 UDP

    w5500 UDP模式下用網絡調試助手發送數據>1472,收不到數據?
    發表于 12-19 16:54

    使用w5500芯片網絡通信

    W5500網關芯片 隨筆最新在使用w5500芯片網絡通信時 ,遇到一個問題,如果創建兩個線程,一個線程 創建一個socket 進行局域網
    發表于 01-13 07:33

    W5500數據手冊(中文資料PDF版免費下載)

    w5500是WIZnet公司研發的一款超高性價比的芯片,是新一代全硬件協議的專用芯片,不需要進行植入的軟件
    發表于 10-23 13:56 ?0次下載

    w5500原理圖_w5500電路圖

    W5500是WIZnet推出的高性能以太網接口芯片系列之一,內部集成全硬件TCP/IP協議+MAC+PHY。全硬件協議
    發表于 10-23 19:14 ?5.7w次閱讀
    <b class='flag-5'>w5500</b>原理圖_<b class='flag-5'>w5500</b>電路圖

    W5500以太網控制芯片的數據手冊免費下載

    以太網控制芯片 W5500 在內部利用硬件實現了 TCP/IP 協議,即內部結構包含了物理層、數據鏈路層、網絡層和傳輸層。全硬件 TCP/
    發表于 09-02 08:00 ?3次下載
    <b class='flag-5'>W5500</b>以太網控制<b class='flag-5'>芯片</b>的數據手冊免費下載

    W5500芯片數據手冊

    W5500芯片數據手冊
    發表于 12-10 16:29 ?66次下載

    W5500 數據手冊中文資料

    W5500是一款全硬件 TCP/IP 嵌入式以太網控制器,為嵌入式系統提供了更加簡易的互聯網連接方案。W5500集成了TCP/IP 協議,10/100M以太網數據鏈路層(MAC)及物
    發表于 01-06 16:58 ?24次下載
    主站蜘蛛池模板: 免费黄色小视频 | 毛片网站免费 | 久综合网| 海外毛片 | 美女国产在线观看免费观看 | 欧美伊人久久综合网 | 欧美日韩国产另类一区二区三区 | 婷婷亚洲综合五月天在线 | 五月欧美激激激综合网色播 | 国产精品乱码高清在线观看 | 亚洲一区有码 | 中文在线免费看影视 | 欧美在线黄色 | 亚洲 欧美 自拍 卡通 综合 | 国产精品毛片天天看片 | 天天操天天看 | 又黄又爽又猛午夜性色播在线播放 | 视频精品一区二区三区 | 婷婷在线五月 | 国产午夜免费视频片夜色 | ccav在线永久免费看 | 91大神网址 | 欧美影院一区 | 一级特黄a视频 | 四虎www.| 色中色在线视频 | cao草棚视频网址成人 | 色婷婷久| 日本黄色免费网站 | 天堂资源8中文最新版在线 天堂资源地址在线 | 草馏社区 | 久久天天躁夜夜躁狠狠85麻豆 | 天天爱夜夜 | 婷婷网址| 在线观看三级网站 | 久久久久久国产精品免费 | www.99色| 久久精品最新免费国产成人 | 亚洲乱亚洲乱妇41p国产成人 | 奇米网在线观看 | 久久伊人成人网 |