小盒子的小盒

【原创】LWIP技术--->答网友问080505(驱动层为lwip提供哪些接口?)

0
阅读(5103)

网易网友210.21.227.66 提出来

请教高人,lwip移植到其他芯片上时,比如nxp的lpc2468,应该在驱动层为lwip提供哪些接口?建议开一个帖子讲讲,呵呵。多谢~

对于你这个问题,我分两种方式给你解答一下:

第一种:LWIP基于以太网的移植

以太网的移植你需要为LWIP提供以下接口:

1.以太网的初始化

 这里主要完成你板子上以太网芯片的初始化工作;

 完成该驱动后,你需要将你写好的函数,添加到函数static void low_level_init(struct netif *netif)中。

2.以太网读操作

 这里主要完成对以太网芯片的读数据操作,也就是所谓的接收数据的过程。

 完成该驱动后,你需要将你写好的函数,添加到函数static struct pbuf * low_level_input(struct netif *netif)中。

3.以太网写操作

 这里主要完成对以太网芯片的写数据操作,也就是所谓的发送数据的过程。

 完成该驱动后,你需要将你写好的函数,添加到函数

 static err_t low_level_output(struct netif *netif, struct pbuf*p)中。

对于以上以太网的驱动,在我博客中能找到相关的源代码。

第二种:LWIP基于MODEM的移植

MODEM的移植你需要为LWIP提供以下接口:

1.MODEM的初始化

 这里完成你系统modem的初始化工作,比如接口为串口的modem你需要设置波特率等一些modem初始化工作,该函数你添加到你程序中适当的位置即可,没有太特别的限制。

2.MODEM拨号上网的ISP服务商

这里你需要了解你当地ISP服务商,你需要知道你拨号的电话好,这里你还需要通过AT命令来完成,需要你了解拨号的用户名和密码的传输方式以及用户名和密码。

例如:我的本地ISP供应商的电话号为:96163

USER NAME:96163

PASS WORD :96163

AUTHTYPE: PAP

3.MODEM的读、写操作

 该过程就是对modem的数据读、写,对于串口的modem,其实就是对串口的读写操作而已。

以上就是Lwip需要移植用户所提供的一些驱动接口,不知道你看懂了吗?

由于时间的原因,难免有遗忘的地方,希望大家多多提醒,谢谢!!!