LWIP下载地址:
http://download.savannah.gnu.org/releases/lwip/
不过这个网站真的很逗http://savannah.nongnu.org/projects/lwip/,这个“nongnu”会激起多少程序员的遐想啊。
转载:http://blog.csdn.net/xgbing/article/details/7681292 作者:xgbing
http://blog.csdn.net/ygrx/article/details/8020516 作者:ygrx 这两篇博客对LWIP移植介绍的太详细了,看的很累。
lwIP移植工作:
其实,LWIP不需要自己亲自移植,不同的厂商都有移植好的DEMO实例程序。如STM32:1、从官方网站http://www.stmcu.org/document/list/index/category-523下载STSW-STM32070 面向STM32F4x7微控制器的LwIP TCP/IP协议栈的演示代码的软件包stsw-stm32070.zip。
2、将stsw-stm32070.zip解压得到STM32F4x7_ETH_LwIP_V1.1.0文件夹,这个就是相当全的功能集合。足够自己起步学习或直接做产品。
1、与CPU和编译器的相关接口
cc.h 这个文件是没有的,你需要建立一个目录arch,然后在下面添加cc.h,这里里面主要是一些定义,包括数据类型;
perf .h 定义了性能测量使用的宏,由 LwIP 调用,可以将其定义为一个空的宏。
添加如下代码
#ifndef__CPU_H__
#define __CPU_H__
#define BYTE_ORDER LITTLE_ENDIAN //小端模式
#endif /* __CPU_H__ */
虽然只有一行代码,但是确实必须的
sys_arch.c、sys_arch.h为操作系统模拟层接口文件
opt.h首先看这个文件,这个文件里面包含了LWIP的模块选项,可以在这里选择哪些模块需要编译,那些模块不编译,分成几个部分,mem,arp,icmp,igmp,ppp,dhcp等,这里可以根据自己的需要修改编译选项,如果是带操作系统的,还要修改栈空间,优先级之类的选项。