📄 ethernet.h
字号:
#ifndef ETHERNET_H
#define ETHERNET_H
#include "types.h"
#define ETHER_BUFFER_LEN 1520
#define ETHER_ADDR_LEN 6
// Ethernet protocol ID's
#define ETHERTYPE_IP 0x0800 /* IP */
#define ETHERTYPE_ARP 0x0806 /* Address resolution */
typedef struct {
Uint16 ether_dhost[ETHER_ADDR_LEN]; /* destination eth addr */
Uint16 ether_shost[ETHER_ADDR_LEN]; /* source ether addr */
Uint16 ether_type; /* packet type ID field */
}Ether_header_struc;
void ethernet_init(Uint16 base_addr, Uint8 *pMac);
Bool ethernet_send(Uint8 *pBuffer, Uint16 aLength);
Uint16 ethernet_receive(Uint8 *pBuffer);
Uint16 cpu_checksum( Uint16* pBuffer, Uint16 aLength) ;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -