chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

第十七章 W55MH32 ARP示例

W55MH32 ? 來源:W55MH32 ? 作者:W55MH32 ? 2025-07-24 11:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

單芯片解決方案,開啟全新體驗(yàn)——W55MH32 高性能以太網(wǎng)單片機(jī)

W55MH32是WIZnet重磅推出的高性能以太網(wǎng)單片機(jī),它為用戶帶來前所未有的集成化體驗(yàn)。這顆芯片將強(qiáng)大的組件集于一身,具體來說,一顆W55MH32內(nèi)置高性能Arm? Cortex-M3核心,其主頻最高可達(dá)216MHz;配備1024KB FLASH與96KB SRAM,滿足存儲(chǔ)與數(shù)據(jù)處理需求;集成TOE引擎,包含WIZnet全硬件TCP/IP協(xié)議棧、內(nèi)置MAC以及PHY,擁有獨(dú)立的32KB以太網(wǎng)收發(fā)緩存,可供8個(gè)獨(dú)立硬件socket使用。如此配置,真正實(shí)現(xiàn)了All-in-One解決方案,為開發(fā)者提供極大便利。

在封裝規(guī)格上,W55MH32提供了兩種選擇:QFN100和QFN68。

W55MH32L采用QFN100封裝版本,尺寸為12x12mm,其資源豐富,專為各種復(fù)雜工控場(chǎng)景設(shè)計(jì)。它擁有66個(gè)GPIO、3個(gè)ADC、12通道DMA、17個(gè)定時(shí)器、2個(gè)I2C、5個(gè)串口、2個(gè)SPI接口(其中1個(gè)帶I2S接口復(fù)用)、1個(gè)CAN、1個(gè)USB2.0以及1個(gè)SDIO接口。如此豐富的外設(shè)資源,能夠輕松應(yīng)對(duì)工業(yè)控制中多樣化的連接需求,無論是與各類傳感器、執(zhí)行器的通信,還是對(duì)復(fù)雜工業(yè)協(xié)議的支持,都能游刃有余,成為復(fù)雜工控領(lǐng)域的理想選擇。同系列還有QFN68封裝的W55MH32Q版本,該版本體積更小,僅為8x8mm,成本低,適合集成度高的網(wǎng)關(guān)模組等場(chǎng)景,軟件使用方法一致。更多信息和資料請(qǐng)進(jìn)入http://www.w5500.com/網(wǎng)站或者私信獲取。

此外,本W(wǎng)55MH32支持硬件加密算法單元,WIZnet還推出TOE+SSL應(yīng)用,涵蓋TCP SSL、HTTP SSL以及 MQTT SSL等,為網(wǎng)絡(luò)通信安全再添保障。

為助力開發(fā)者快速上手與深入開發(fā),基于W55MH32L這顆芯片,WIZnet精心打造了配套開發(fā)板。開發(fā)板集成WIZ-Link芯片,借助一根USB C口數(shù)據(jù)線,就能輕松實(shí)現(xiàn)調(diào)試、下載以及串口打印日志等功能。開發(fā)板將所有外設(shè)全部引出,拓展功能也大幅提升,便于開發(fā)者全面評(píng)估芯片性能。

若您想獲取芯片和開發(fā)板的更多詳細(xì)信息,包括產(chǎn)品特性、技術(shù)參數(shù)以及價(jià)格等,歡迎訪問官方網(wǎng)頁:http://www.w5500.com/,我們期待與您共同探索W55MH32的無限可能。

wKgZO2iBiBmAe3DyAACpGc5mWX8613.png

第十七章 W55MH32 ARP示例

本篇文章,我們將詳細(xì)介紹如何在W55MH32芯片上面實(shí)現(xiàn)MAC RAW模式。并通過實(shí)戰(zhàn)例程,為大家講解如何使用MAC RAW模式實(shí)現(xiàn)ARP解析IP地址為MAC地址。

該例程用到的其他網(wǎng)絡(luò)協(xié)議,例如 DHCP,請(qǐng)參考相關(guān)章節(jié)。有關(guān) W55MH32的初始化過程,請(qǐng)參考Network Install章節(jié),這里將不再贅述。

1 MACRAW模式簡介

MACRAW模式是W55MH32 TOE提供的一種底層通信模式,芯片會(huì)直接接收和發(fā)送以太網(wǎng)幀,而無需解析 TCP/IP層的協(xié)議。通過這種模式,用戶可以直接操作以太網(wǎng)幀的頭部(如目的 MAC地址、源 MAC地址、以太類型等)和有效負(fù)載數(shù)據(jù)。

注意:僅Socket0能設(shè)置為MACRAW模式。

2 ARP協(xié)議簡介

ARP(Address Resolution Protocol,地址解析協(xié)議)是一個(gè)網(wǎng)絡(luò)協(xié)議,用于通過已知的IP地址解析對(duì)應(yīng)的MAC地址,工作于OSI模型的第二層(數(shù)據(jù)鏈路層),它是IPv4網(wǎng)絡(luò)中局域網(wǎng)通信的重要組成部分。

3 ARP協(xié)議特點(diǎn)

協(xié)議工作范圍:ARP協(xié)議僅在同一個(gè)局域網(wǎng)(LAN)內(nèi)工作,因?yàn)閺V播請(qǐng)求無法跨越路由器。

緩存機(jī)制:為了減少頻繁的廣播,設(shè)備會(huì)將IP-MAC的對(duì)應(yīng)關(guān)系緩存一段時(shí)間。

協(xié)議類型:ARP請(qǐng)求(Opcode = 1):用于查詢目標(biāo)設(shè)備的MAC地址。

ARP響應(yīng)(Opcode = 2):用于回復(fù)請(qǐng)求方的ARP消息。

4 ARP協(xié)議請(qǐng)求的工作流程

當(dāng)發(fā)送方主機(jī)A需要與目標(biāo)主機(jī)B通信,但只知道目標(biāo)主機(jī)的IP地址,而不知道目標(biāo)主機(jī)的MAC地址,并且自己的ARP緩存表中也無對(duì)應(yīng)關(guān)系,此時(shí)會(huì)觸發(fā)ARP請(qǐng)求流程:

構(gòu)建ARP請(qǐng)求:發(fā)送方需要構(gòu)建一個(gè)ARP請(qǐng)求數(shù)據(jù)包。

廣播ARP請(qǐng)求:發(fā)送方將構(gòu)建好的ARP請(qǐng)求封裝為以太網(wǎng)幀,使用廣播方式發(fā)送到局域網(wǎng)。

目標(biāo)主機(jī)接收并處理:網(wǎng)絡(luò)中的所有主機(jī)都會(huì)收到廣播幀,但只有目標(biāo)主機(jī)(IP地址匹配)會(huì)響應(yīng)。

發(fā)送方接收ARP響應(yīng),并更新自己的ARP緩存表。

5 ARP協(xié)議應(yīng)用場(chǎng)景

地址解析:當(dāng)設(shè)備需要進(jìn)行鏈路層通信時(shí),可以使用ARP協(xié)議獲取對(duì)方MAC地址。

網(wǎng)絡(luò)調(diào)試與診斷:在調(diào)試嵌入式設(shè)備時(shí),通過發(fā)送 ARP請(qǐng)求驗(yàn)證設(shè)備的網(wǎng)絡(luò)連通性。

6 ARP協(xié)議的安全風(fēng)險(xiǎn)及防護(hù)措施

盡管ARP協(xié)議在局域網(wǎng)通信中非常重要,但它也存在安全風(fēng)險(xiǎn)。例如,ARP欺騙是一種常見的攻擊手段,攻擊者可以通過偽造ARP回復(fù)來誤導(dǎo)其他設(shè)備,從而竊取敏感信息或中斷網(wǎng)絡(luò)通信。為了防范ARP欺騙攻擊,可以采取以下措施:

1.使用靜態(tài)ARP表:通過配置靜態(tài)ARP表項(xiàng),可以限制和指定IP地址的設(shè)備通信時(shí)只使用指定的MAC地址。這樣,即使攻擊者發(fā)送了偽造的ARP報(bào)文,也無法修改此表項(xiàng)的IP地址和MAC地址的映射關(guān)系。

2.端口安全和靜態(tài)IP/MAC綁定:在接入交換機(jī)上啟用端口安全功能,并將用戶IP/MAC地址進(jìn)行靜態(tài)綁定。這種方法可以防止用戶發(fā)出假冒網(wǎng)關(guān)的ARP信息。

3.動(dòng)態(tài)ARP檢查(DAI)與DHCP偵聽:結(jié)合使用動(dòng)態(tài)ARP檢查和DHCP偵聽功能,可以對(duì)用戶發(fā)出的ARP報(bào)文進(jìn)行合法性檢測(cè),并過濾掉不符合規(guī)則的ARP報(bào)文。

4.加密通信協(xié)議:通過使用加密通信協(xié)議,可以防止網(wǎng)絡(luò)流量被竊聽和篡改。

5.防火墻和交換機(jī)配置:在防火墻和交換機(jī)上設(shè)置相應(yīng)的安全策略,例如啟用特殊的ARP報(bào)文過濾功能。

6客戶端管理:確保所有終端設(shè)備都遵循安全策略,并定期更新和打補(bǔ)丁。

7 ARP協(xié)議的工作原理

發(fā)送ARP請(qǐng)求:

當(dāng)設(shè)備A需要與設(shè)備B通信時(shí),首先檢查ARP緩存是否存有設(shè)備B的MAC地址。如果ARP緩存中沒有設(shè)備B的MAC地址,設(shè)備A會(huì)發(fā)送一條廣播ARP請(qǐng)求消息,格式為:“誰是IP地址 X.X.X.X?請(qǐng)告訴我(設(shè)備A的IP地址和MAC地址)。”

接收ARP響應(yīng):

設(shè)備B收到廣播請(qǐng)求后,檢查請(qǐng)求中的IP地址是否與自身匹配。如果匹配,設(shè)備B發(fā)送一條單播ARP響應(yīng)消息給設(shè)備A,告知設(shè)備B的MAC地址。設(shè)備A收到響應(yīng)后,將設(shè)備B的MAC地址緩存起來,用于后續(xù)通信。

8 ARP報(bào)文格式

一個(gè)標(biāo)準(zhǔn)的ARP報(bào)文由以下字段組成,總長度為28字節(jié)(不包含鏈路層幀頭):

字段名 長度(字節(jié)) 描述
Hardware Type 2 表示硬件類型,常見值為1(以太網(wǎng))。
Protocol Type 2 表示需要解析的協(xié)議類型,常見值為0x0800(IPv4)。
Hardware Address Length 1 硬件地址(MAC地址)的長度,通常為6字節(jié)。
Protocol Address Length 1 協(xié)議地址(IP地址)的長度,通常為4字節(jié)(IPv4)。
Operation Code 2 指示操作類型:1(請(qǐng)求),2(響應(yīng))。
Sender Hardware Address 6 請(qǐng)求方的MAC地址。
Sender Protocol Address 4 請(qǐng)求方的IP地址。
Target Hardware Address 6 目標(biāo)設(shè)備的MAC地址。請(qǐng)求中此字段為0。
Target Protocol Address 4 目標(biāo)設(shè)備的IP地址。

報(bào)文字段詳解

硬件類型 (Hardware Type):說明所使用的網(wǎng)絡(luò)類型,例如:

1:以太網(wǎng)。

6:IEEE 802網(wǎng)絡(luò)。

對(duì)于以太網(wǎng)的ARP報(bào)文,該值始終為0x0001。

協(xié)議類型 (Protocol Type):表示要解析的協(xié)議類型,例如:

0x0800:表示IPv4地址解析。

0x86DD:表示IPv6(通常由ND協(xié)議替代ARP)。

硬件地址長度 (Hardware Address Length):定義硬件地址(MAC地址)的長度,通常為6字節(jié)(以太網(wǎng))。

協(xié)議地址長度 (Protocol Address Length):定義協(xié)議地址(IP地址)的長度,通常為4字節(jié)(IPv4)。

操作碼 (Operation Code):說明ARP的操作類型:

1:ARP請(qǐng)求。

2:ARP響應(yīng)。

發(fā)送方硬件地址 (Sender Hardware Address):包含請(qǐng)求方設(shè)備的MAC地址。

發(fā)送方協(xié)議地址 (Sender Protocol Address):包含請(qǐng)求方設(shè)備的IP地址。

目標(biāo)硬件地址 (Target Hardware Address):在ARP請(qǐng)求中,這一字段為空(全0)。在ARP響應(yīng)中,包含目標(biāo)設(shè)備的MAC地址。

目標(biāo)協(xié)議地址 (Target Protocol Address):包含目標(biāo)設(shè)備的IP地址。

報(bào)文內(nèi)容:

ARP Probe請(qǐng)求報(bào)文:

|報(bào)文解析|
Address Resolution Protocol (ARP Probe) (ARP Probe請(qǐng)求報(bào)文,用于檢測(cè)目標(biāo)IP地址是否沖突)
   Hardware type: Ethernet (1) (硬件類型:1表示以太網(wǎng))
   Protocol type: IPv4 (0x0800) (協(xié)議類型:0x0800表示IPv4)
   Hardware size: 6 (硬件地址長度:6字節(jié))
   Protocol size: 4 (協(xié)議地址長度:4字節(jié))
   Opcode: request (1) (操作碼:1表示ARP請(qǐng)求)
    [Is probe: True] (是否為探測(cè):是,用于檢測(cè)IP沖突)
   Sender MAC address: Wiznet_12:22:12 (00:08:dc:12:22:12) (發(fā)送方MAC地址:00:08:dc:12:22:12)
   Sender IP address: 0.0.0.0 (發(fā)送方IP地址:未分配,用于探測(cè))
   Target MAC address: 00:00:00_00:00:00 (00:00:00:00:00:00) (目標(biāo)MAC地址:全0,未指定)
   Target IP address: 192.168.1.105 (目標(biāo)IP地址:192.168.1.105,探測(cè)對(duì)象)

|報(bào)文原文|
00 01 08 00 06 04 00 01 00 08 dc 12 22 12 00 00 00 00 00 00 00 00 00 00 c0 a8 01 69

ARP請(qǐng)求報(bào)文:

|報(bào)文解析|
Address Resolution Protocol (request) (請(qǐng)求報(bào)文)
   Hardware type: Ethernet (1) (硬件類型:1表示以太網(wǎng))
   Protocol type: IPv4 (0x0800) (協(xié)議類型:0x0800表示IPv4)
   Hardware size: 6 (硬件地址長度:6字節(jié))
   Protocol size: 4 (協(xié)議地址長度:4字節(jié))
   Opcode: request (1) (操作碼:1表示ARP請(qǐng)求)
   Sender MAC address: Wiznet_12:22:12 (00:08:dc:12:22:12) (發(fā)送方MAC地址)
   Sender IP address: 192.168.1.105 (發(fā)送方IP地址:192.168.1.105)
   Target MAC address: 00:00:00_00:00:00 (00:00:00:00:00:00) (未知目標(biāo)設(shè)備的物理地址)
   Target IP address: 192.168.1.138 (目標(biāo)IP地址:192.168.1.138,目標(biāo)設(shè)備的IPv4地址)

|報(bào)文原文|
00 01 08 00 06 04 00 01 00 08 dc 12 22 12 c0 a8 01 69 00 00 00 00 00 00 c0 a8 01 8a

ARP響應(yīng)報(bào)文:

|報(bào)文解析|
Address Resolution Protocol (reply) (響應(yīng)報(bào)文)
   Hardware type: Ethernet (1) (硬件類型:1表示以太網(wǎng))
   Protocol type: IPv4 (0x0800) (協(xié)議類型:0x0800表示IPv4)
   Hardware size: 6 (硬件地址長度:6字節(jié))
   Protocol size: 4 (協(xié)議地址長度:4字節(jié))
   Opcode: reply (2) (操作碼:2表示ARP響應(yīng))
   Sender MAC address: HP_b1:37:11 (64:4e:d7:b1:37:11) (發(fā)送方MAC地址:64:4e:d7:b1:37:11)
   Sender IP address: 192.168.1.138 (發(fā)送方IP地址:192.168.1.138)
   Target MAC address: Wiznet_12:22:12 (00:08:dc:12:22:12)   (目標(biāo)MAC地址,ARP請(qǐng)求者的物理地址)
   Target IP address: 192.168.1.105 (目標(biāo)IP地址:192.168.1.105,ARP請(qǐng)求者的IPv4地址)

|報(bào)文原文|
00 01 08 00 06 04 00 02 64 4e d7 b1 37 11 c0 a8 01 8a 00 08 dc 12 22 12 c0 a8 01 69

9實(shí)現(xiàn)過程

接下來,我們看看如何在W55MH32上實(shí)現(xiàn)ARP請(qǐng)求。

注意:測(cè)試實(shí)例需要PC端和W55MH32處于同一網(wǎng)段。

步驟1:在主循環(huán)中調(diào)用do_arp()函數(shù),執(zhí)行ARP請(qǐng)求流程

while (1)
{
   do_arp(SOCKET_ID, ethernet_buf, dest_ip);
}

do_arp()函數(shù)如下所示:

void do_arp(uint8_t sn, uint8_t *buf, uint8_t *dest_ip)
{
 uint16_t rlen       = 0;
 uint16_t local_port = 5000;
 uint16_t cnt        = 0;
 switch (getSn_SR(sn))
 {
 case SOCK_CLOSED:
     close(sn);
     socket(sn, Sn_MR_MACRAW, local_port, 0x00);
     break;
 case SOCK_MACRAW:
     arp_request(sn, local_port, dest_ip);
     while (1)
     {
         if ((rlen = getSn_RX_RSR(sn)) > 0)
         {
             arp_reply(sn, buf, rlen);
             break;
         }
         if (cnt > 1000)
         {
             printf("Request Time out.rn");
             cnt = 0;
             break;
         }
         else
         {
             cnt++;
             delay_ms(5);
         }
     }
     break;
 }
 if (arp_succ_flag)
     while (1);
}

進(jìn)入該函數(shù)后,程序會(huì)執(zhí)行一個(gè)狀態(tài)機(jī),當(dāng)socket狀態(tài)為關(guān)閉狀態(tài)時(shí)開啟一個(gè)MACRAW模式的socket。當(dāng)socket成功打開為MAC RAW模式后,執(zhí)行arp_request()函數(shù)發(fā)送ARP請(qǐng)求,然后進(jìn)入一個(gè)循環(huán),當(dāng)成功接收到響應(yīng)時(shí),執(zhí)行arp_reply()函數(shù)解析請(qǐng)求。當(dāng)超過5秒未能得到響應(yīng)時(shí),則ARP請(qǐng)求失敗。當(dāng)arp_succ_flag標(biāo)志位為1時(shí),說明ARP請(qǐng)求成功。

arp_request()函數(shù)如下所示:

void arp_request(uint8_t sn, uint16_t port, uint8_t *dest_ip)
{
 uint16_t i;
 uint8_t  broadcast_addr[4] = {0xff, 0xff, 0xff, 0xff};
 for (i = 0; i < 6; i++)
 {
     pARPMSG.dst_mac[i] = 0xff; // Broadcast address in an Ethernet frame
     pARPMSG.tgt_mac[i] = 0x00;
     if (i < 4)
     {
         pARPMSG.tgt_ip[i] = dest_ip[i];
     }
 }
 getSHAR(pARPMSG.src_mac);              // Fill in the source MAC address of the link layer
 getSHAR(pARPMSG.sender_mac);           // Fill in the MAC address of the sender in ARP
 getSIPR(pARPMSG.sender_ip);            // Enter the IP address of the sender in ARP
 pARPMSG.msg_type = htons(ARP_TYPE);    // ARP type
 pARPMSG.hw_type  = htons(ETHER_TYPE);  // Ethernet type
 pARPMSG.pro_type = htons(PRO_TYPE);    // IP
 pARPMSG.hw_size  = HW_SIZE;            // 6
 pARPMSG.pro_size = PRO_SIZE;           // 4
 pARPMSG.opcode   = htons(ARP_REQUEST); // request: 0x0001;  reply: 0x0002
 if (sendto(sn, (uint8_t *)&pARPMSG, sizeof(pARPMSG), broadcast_addr, port) != sizeof(pARPMSG))
 {
     printf("Fail to send arp request packet.rn");
 }
 else
 {
     if (pARPMSG.opcode == htons(ARP_REQUEST))
     {
         printf("Who has %d.%d.%d.%d ?  Tell %d.%d.%d.%drn", pARPMSG.tgt_ip[0], pARPMSG.tgt_ip[1],pARPMSG.tgt_ip[2], pARPMSG.tgt_ip[3],
                 pARPMSG.sender_ip[0], pARPMSG.sender_ip[1], pARPMSG.sender_ip[2], pARPMSG.sender_ip[3]);
     }
     else
     {
         printf("Opcode has wrong value. check opcode!rn");
     }
 }
}
 

在這個(gè)函數(shù)中,進(jìn)行了ARP報(bào)文的組包以及發(fā)送。

arp_reply()函數(shù)如下所示:

void arp_reply(uint8_t sn, uint8_t *buff, uint16_t rlen)
{
   uint8_t  destip[4];
   uint16_t destport;
   uint8_t  ret_arp_reply[128];
   uint8_t  i;
 
   recvfrom(sn, (uint8_t *)buff, rlen, destip, &destport);
 
   if (buff[12] == ARP_TYPE_HI && buff[13] == ARP_TYPE_LO)
   {
       aAPRMSG = (ARPMSG *)buff;
       if ((aAPRMSG->opcode) == htons(ARP_REPLY))
       {
           for (i = 0; i < 4; i++)
           {
               if (aAPRMSG-?>tgt_ip[i] != pARPMSG.tgt_ip[i])
               {
                   break;
               }
               arp_succ_flag = 1;
           }
           memset(ret_arp_reply, 0x00, 128);
           sprintf((char *)ret_arp_reply, "%d.%d.%d.%d is at %.2x.%.2x.%.2x.%.2x.%.2x.%.2xrn",
                   aAPRMSG->sender_ip[0], aAPRMSG->sender_ip[1], aAPRMSG->sender_ip[2], aAPRMSG>sender_ip[3],
                   aAPRMSG->sender_mac[0], aAPRMSG->sender_mac[1], aAPRMSG->sender_mac[2], aAPRMSG->sender_mac[3],
                   aAPRMSG->sender_mac[4], aAPRMSG->sender_mac[5]);
 
           printf("%d.%d.%d.%d is at %.2x.%.2x.%.2x.%.2x.%.2x.%.2xrn",
                   aAPRMSG->sender_ip[0], aAPRMSG->sender_ip[1], aAPRMSG->sender_ip[2], aAPRMSG->sender_ip[3],
                   aAPRMSG->sender_mac[0], aAPRMSG->sender_mac[1], aAPRMSG->sender_mac[2], aAPRMSG->sender_mac[3],
                   aAPRMSG->sender_mac[4], aAPRMSG->sender_mac[5]);
       }
       else if ((aAPRMSG->opcode) == htons(ARP_REQUEST))
       {
           printf("Who has %d.%d.%d.%d ? Tell %.2x.%.2x.%.2x.%.2x.%.2x.%.2xrn",
                   aAPRMSG->tgt_ip[0], aAPRMSG->tgt_ip[1], aAPRMSG->tgt_ip[2], aAPRMSG->tgt_ip[3],
                   aAPRMSG->sender_mac[0], aAPRMSG->sender_mac[1], aAPRMSG->sender_mac[2], aAPRMSG->sender_mac[3],
                   aAPRMSG->sender_mac[4], aAPRMSG->sender_mac[5]);
       }
   }
   else
   {
       // printf("This message is not ARP reply: opcode is not 0x02!rn");
   }
}
 

在這個(gè)函數(shù)中,我們會(huì)將接收到的ARP報(bào)文進(jìn)行校驗(yàn),如果ARP報(bào)文為回復(fù)報(bào)文,并且回復(fù)的IP地址與我們請(qǐng)求的IP地址匹配時(shí),將arp_succ_flag標(biāo)志位置一,表示ARP請(qǐng)求成功。

10運(yùn)行結(jié)果

燒錄例程運(yùn)行后,首先可以看到進(jìn)行了PHY鏈路檢測(cè),然后打印了設(shè)置的網(wǎng)絡(luò)地址信息,然后是執(zhí)行ARP請(qǐng)求以及請(qǐng)求結(jié)果,如下圖所示:

wKgZO2iBq6WAHzMRAACDuUPiFiU402.png

11總結(jié)

文講解了如何在 W55MH32芯片上通過 MAC RAW模式實(shí)現(xiàn) ARP協(xié)議,將 IP地址解析為 MAC地址,通過實(shí)戰(zhàn)例程展示了從發(fā)送 ARP請(qǐng)求到接收并處理響應(yīng)的完整過程。文章詳細(xì)介紹了 MAC RAW模式和 ARP協(xié)議的概念、特點(diǎn)、工作流程、應(yīng)用場(chǎng)景、安全風(fēng)險(xiǎn)及防護(hù)措施和報(bào)文格式,幫助讀者理解其在局域網(wǎng)通信中的實(shí)際應(yīng)用價(jià)值。

下一篇文章將聚焦 FTP協(xié)議服務(wù)器模式,解析其核心原理及在文件傳輸中的應(yīng)用,同時(shí)講解如何在相關(guān)設(shè)備上搭建 FTP服務(wù)器,敬請(qǐng)期待!

WIZnet是一家無晶圓廠半導(dǎo)體公司,成立于 1998年。產(chǎn)品包括互聯(lián)網(wǎng)處理器 iMCU?,它采用 TOE(TCP/IP卸載引擎)技術(shù),基于獨(dú)特的專利全硬連線 TCP/IP。iMCU?面向各種應(yīng)用中的嵌入式互聯(lián)網(wǎng)設(shè)備。

WIZnet在全球擁有 70多家分銷商,在香港、韓國、美國設(shè)有辦事處,提供技術(shù)支持和產(chǎn)品營銷。

香港辦事處管理的區(qū)域包括:澳大利亞、印度、土耳其、亞洲(韓國和日本除外)。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6071

    文章

    45254

    瀏覽量

    659996
  • ARP
    ARP
    +關(guān)注

    關(guān)注

    0

    文章

    51

    瀏覽量

    15188
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    第十七章 SPI——讀寫串行FLASH

    本章介紹SPI協(xié)議,其為高速全雙工通信總線,含物理層、協(xié)議層內(nèi)容,還講解W55MH32的SPI特性、初始化及DMA相關(guān)配置。
    的頭像 發(fā)表于 06-19 17:06 ?874次閱讀
    <b class='flag-5'>第十七章</b> SPI——讀寫串行FLASH

    第十七章 SPI

    本篇文章介紹了W55MH32的SPI接口,可工作于SPI或I2S模式,支持半 / 全雙工、主從操作,具可編程時(shí)鐘極性/相位等特征。闡述了主從模式配置、DMA 通信等,介紹相關(guān)例程用于驗(yàn)證數(shù)據(jù)傳輸功能。
    的頭像 發(fā)表于 05-28 17:29 ?780次閱讀
    <b class='flag-5'>第十七章</b> SPI

    "STM32H7學(xué)習(xí)繼續(xù)(STM32H7系列5)第十七章比較實(shí)用,以后寫程序的時(shí)候會(huì)用到"

    "STM32H7學(xué)習(xí)繼續(xù)(STM32H7系列5)第十七章比較實(shí)用,以后寫程序的時(shí)候會(huì)用到"
    發(fā)表于 12-05 11:21 ?9次下載
    "STM32H7學(xué)習(xí)繼續(xù)(STM32H7系列5)<b class='flag-5'>第十七章</b>比較實(shí)用,以后寫程序的時(shí)候會(huì)用到"

    第二 W55MH32 DHCP示例

    本文介紹 DHCP?協(xié)議,包括其在 IP?網(wǎng)絡(luò)自動(dòng)分配參數(shù)的功能、便捷配置等特點(diǎn)、工作原理、報(bào)文格式和應(yīng)用場(chǎng)景。通過 W55MH32?實(shí)戰(zhàn)例程展示動(dòng)態(tài)獲取網(wǎng)絡(luò)地址信息過程,含注冊(cè)定時(shí)器中斷、啟用模式和獲取信息等步驟,燒錄后可完成檢測(cè)與信息打印,PC?端能 PING?通設(shè)備。
    的頭像 發(fā)表于 07-24 09:02 ?443次閱讀
    第二<b class='flag-5'>章</b> <b class='flag-5'>W55MH32</b> DHCP<b class='flag-5'>示例</b>

    第五 W55MH32 UDP示例

    本文介紹了在 W55MH32?芯片上實(shí)現(xiàn) UDP?通信及數(shù)據(jù)回環(huán)測(cè)試的方法。闡述了 UDP?協(xié)議的概念、特點(diǎn)、應(yīng)用場(chǎng)景、報(bào)文傳輸流程和報(bào)文結(jié)構(gòu),展示了實(shí)現(xiàn)過程,借助網(wǎng)絡(luò)調(diào)試工具完成測(cè)試。
    的頭像 發(fā)表于 07-24 09:13 ?433次閱讀
    第五<b class='flag-5'>章</b> <b class='flag-5'>W55MH32</b> UDP<b class='flag-5'>示例</b>

    第九 W55MH32 HTTP Server示例

    本文介紹了在 W55MH32?芯片上實(shí)現(xiàn) HTTP Server?功能,并通過瀏覽器修改其網(wǎng)絡(luò)地址信息的方法。闡述了 HTTP?協(xié)議的概念、特點(diǎn)、應(yīng)用場(chǎng)景、工作流程、請(qǐng)求方法、響應(yīng)內(nèi)容,以及 Web?頁面構(gòu)成和交互方式。展示了在W55MH32上實(shí)現(xiàn)的過程。
    的頭像 發(fā)表于 07-24 09:35 ?417次閱讀
    第九<b class='flag-5'>章</b> <b class='flag-5'>W55MH32</b> HTTP Server<b class='flag-5'>示例</b>

    第十章 W55MH32 SNTP示例

    本文講解了如何在W55MH32芯片上實(shí)現(xiàn)SNTP授時(shí)功能,通過實(shí)例詳細(xì)展示了從SNTP服務(wù)器同步時(shí)間的實(shí)現(xiàn)流程,包括時(shí)間請(qǐng)求、響應(yīng)解析和本地時(shí)間校準(zhǔn)等核心步驟。文章還對(duì)SNTP的應(yīng)用場(chǎng)景進(jìn)行了分析,幫助讀者理解其在時(shí)間同步中的實(shí)際應(yīng)用價(jià)值。
    的頭像 發(fā)表于 07-24 09:43 ?573次閱讀
    <b class='flag-5'>第十章</b> <b class='flag-5'>W55MH32</b> SNTP<b class='flag-5'>示例</b>

    第十一章 W55MH32 SMTP示例

    本文講解了如何在 W55MH32?芯片上實(shí)現(xiàn) SMTP?協(xié)議,通過實(shí)例詳細(xì)展示了在該芯片上使用 SMTP?協(xié)議發(fā)送電子郵件的實(shí)現(xiàn)流程,包括 SMTP?發(fā)送內(nèi)容初始化、使用 DNS?協(xié)議解析 SMTP
    的頭像 發(fā)表于 07-24 09:49 ?690次閱讀
    <b class='flag-5'>第十</b>一章 <b class='flag-5'>W55MH32</b> SMTP<b class='flag-5'>示例</b>

    第十二章 W55MH32 NetBIOS示例

    本文講解了如何在 W55MH32?芯片上實(shí)現(xiàn) NetBIOS?功能,通過實(shí)戰(zhàn)例程展示了利用 NetBIOS?進(jìn)行名稱 PING?測(cè)試的具體過程,包括 NetBIOS?功能的調(diào)用、請(qǐng)求處理、名稱解析
    的頭像 發(fā)表于 07-24 09:58 ?425次閱讀
    <b class='flag-5'>第十二章</b> <b class='flag-5'>W55MH32</b> NetBIOS<b class='flag-5'>示例</b>

    第十四章 W55MH32 TFTP示例

    本文講解了如何在 W55MH32?芯片上實(shí)現(xiàn) TFTP?協(xié)議,通過實(shí)戰(zhàn)例程詳細(xì)展示了使用 TFTP?客戶端模式從服務(wù)器獲取文本文件的過程,涵蓋 TFTP?初始化、發(fā)送讀請(qǐng)求、運(yùn)行協(xié)議并處理結(jié)果等核心
    的頭像 發(fā)表于 07-24 10:37 ?433次閱讀
    <b class='flag-5'>第十</b>四章 <b class='flag-5'>W55MH32</b> TFTP<b class='flag-5'>示例</b>

    第十五章 W55MH32 SNMP示例

    本文講解了如何在 W55MH32?芯片上實(shí)現(xiàn) SNMP?功能,通過實(shí)戰(zhàn)例程展示了使用 MIB Browser?管理 W55MH32?的具體過程,涵蓋在 MIB Browser?中創(chuàng)建分支、添加葉子
    的頭像 發(fā)表于 07-24 10:43 ?488次閱讀
    <b class='flag-5'>第十五章</b> <b class='flag-5'>W55MH32</b> SNMP<b class='flag-5'>示例</b>

    第十六章 W55MH32 PING示例

    本文講解了如何在 W55MH32?芯片上通過 IPRAW?模式實(shí)現(xiàn) ICMP?協(xié)議中的 PING?命令,以進(jìn)行網(wǎng)絡(luò)連通性測(cè)試,通過實(shí)戰(zhàn)例程展示了從發(fā)送 PING?請(qǐng)求、接收并解析回復(fù)到統(tǒng)計(jì)結(jié)果的完整
    的頭像 發(fā)表于 07-24 11:41 ?334次閱讀
    <b class='flag-5'>第十</b>六章 <b class='flag-5'>W55MH32</b> PING<b class='flag-5'>示例</b>

    第十八章 W55MH32 FTP_Server示例

    本文講解了如何在 W55MH32?芯片上實(shí)現(xiàn) FTP?協(xié)議的服務(wù)器模式,通過實(shí)戰(zhàn)例程展示了使用 W55MH32?作為 FTP?服務(wù)器與 PC?端進(jìn)行文件傳輸、目錄操作等功能的過程,涵蓋獲取網(wǎng)絡(luò)配置
    的頭像 發(fā)表于 07-24 11:55 ?303次閱讀
    <b class='flag-5'>第十</b>八章 <b class='flag-5'>W55MH32</b> FTP_Server<b class='flag-5'>示例</b>

    第二十六章 W55MH32?上位機(jī)搜索和配置示例

    本文講解了如何在 W55MH32?芯片上實(shí)現(xiàn)上位機(jī)搜索和配置功能,通過實(shí)戰(zhàn)例程展示了使用開源上位機(jī)配置工具 SmartConfigTool?搜索局域網(wǎng)中的 W55MH32?并進(jìn)行網(wǎng)絡(luò)地址配置的過程
    的頭像 發(fā)表于 07-24 16:13 ?417次閱讀
    第二十六章 <b class='flag-5'>W55MH32</b>?上位機(jī)搜索和配置<b class='flag-5'>示例</b>

    第二十七章 W55MH32?Interrupt示例

    本文講解了如何在 W55MH32?芯片上使用 TOE?中斷功能并進(jìn)行回環(huán)數(shù)據(jù)測(cè)試,通過實(shí)戰(zhàn)例程展示了從初始化中斷引腳、處理中斷、開啟中斷功能到在主循環(huán)中運(yùn)行 TCP?回環(huán)服務(wù)器的完整過程。文章詳細(xì)
    的頭像 發(fā)表于 07-24 16:14 ?340次閱讀
    第二<b class='flag-5'>十七章</b> <b class='flag-5'>W55MH32</b>?Interrupt<b class='flag-5'>示例</b>