STM32移植LWIP
程序员文章站
2022-04-01 16:21:38
...
本文使用的是STM32F207VCT6平台,MII接口的RTL8201EL网络芯片,LWIP版本是1.4.1
基础工程是:已经实现了10ms定时,led灯1s闪烁,还有串口打印
欢迎查看本文所在的系列,STM32的LWIP应用,点击跳转
本文使用的IDE是IAR7.2,考虑到很多很使用Keil,本文末尾也有keil版本的说明
添加以太网驱动库
添加进工程,增加新库的头文件路径
将LWIP源码放入目录中
我们把stm32f2x7_eth_conf_template.h文件剪切到文件夹中,并重命名为stm32f2x7_eth_conf.h
当然新加的头文件,要添加新的头文件路径
注意:这个文件是只读文件,要把对勾去掉
添加以太网RTL8201EL的驱动程序
我们首先拷贝官方历程驱动(PS:修改过的)
然后把驱动添加进入工程
添加lwip源代码
当然,还要添加头文件路径
添加中间文件
添加lwipopts.h
编译出错
把他们屏蔽掉
再编译,出新的错误,再次屏蔽
修改之后,没有问题
复制驱动,直接使用官方demo
把原来的文件删除掉
重新添加我们新添加的文件(解除只读属性)
修改文件
新建lwip_app.c和lwip_app.h文件
定义一下宏
包头文件包含一下
修改函数
修改主函数
实验
移植成功
修改Keil工程
添加文件
添加头文件路径
有1个错误
#if defined (__CC_ARM) /*!< ARM Compiler */
u32_t sys_now(void){}
#endif
编译下载,发现ping会死机
修改代码优化等级就好了
测试成功
如果看文字版太枯燥,可以点击看视频版:点击跳转
上一篇: contiki STM32移植