一、平台、版本:
RT-Thread lwip 移植说明
1、硬件平台:正点原子战舰 V3 开发板,CPU:STM32F103ZET6; 网卡芯片:DM9000;
2、RT-Thread 版本 V3.1.0; lwip 版本:1.4.1;
二、移植说明:
1、用 evn 工具配置工程;
1.1 本次移植是基于 RTT 中的 stm32f10x 工程(..\rt-thread-master\bsp\stm32f10x);
1.2 工程配置:
1.2.1 RT_thread Components--->Network stack --->light weight TCP/TP stack -->
Enable lwIP stack;
1.2.2 RT_thread Components--->Device virtual file system --->Using device virtual filw
system
1.2.3 配置完成,保存退出,可在 rtconfig.h 看到更新情况;
3、添加工程文件:evn 工具配置完后,需向工程中添加必要的文件以及配置文件路径;
3.1 添加网卡驱动文件:
3.2 添 lwip 协议栈相关文件:
3.3 添加路径:
3.3 重新编译后,提示以下错误:
--解决方法:把 Drivers 中的 gpio.c 移除, 且把 application.c 中的 led 相关代码屏蔽;
4、更改 GPIO 引脚配置:
4.1 因为 RTT 官方的驱动与原子开发板的引脚不一至,需根据上图,重新配置
4.1.1 int rt_hw_dm9000_init(void);
4.1.2 static void RCC_Configuration(void)
4.1.3 static void NVIC_Configuration(void)
4.1.4 static void GPIO_Configuration()
4.1.5 static void FSMC_Configuration()
4.1.6 配置 IO DATA 地址:
4.1.7 更改 DM9000 中断入口函数: