转载

lwIP移植笔记 - OS篇

我们已经完成了 lwIP的系统移植 ,那么我们就需要进行ethernet的移植工作。

ethernet的移植工作,主要是“填空“ethernetif.c的过程!(PS. 再一次感谢Adam Dunkels大侠的无私工作!以及对他的敬意!)

lwIP移植笔记 - OS篇

ethernetif.c位置(../src/netif)

一、移植硬件

1. 初始化

实现函数:static    void    low_level_init(struct    netif    *netif);

lwIP移植笔记 - OS篇

(1) 初始化MAC地址

lwIP移植笔记 - OS篇

(2) 初始化网卡

lwIP移植笔记 - OS篇

2. 发送

实现函数:static    err_t    low_level_output(struct    netif    *netif,     struct     pbuf     *p);

lwIP移植笔记 - OS篇

(1) 初始化传输

lwIP移植笔记 - OS篇

(2) 发送数据

lwIP移植笔记 - OS篇

3. 接收

实现函数:static    struct    pbuf      *low_level_input(struct    netif    *netif);

lwIP移植笔记 - OS篇

lwIP移植笔记 - OS篇

(1) 读pbuf中的数据

lwIP移植笔记 - OS篇

(2) 读数据包

lwIP移植笔记 - OS篇

(3) 释放pbuf

lwIP移植笔记 - OS篇

(4) len大小

如果网卡驱动中有定义可以直接引用,否则注释掉。

lwIP移植笔记 - OS篇

参考文档

1.  Network interfaces management 

正文到此结束
Loading...