硬件环境:
硬石YS-F4Pro开发板,
主芯片:STM32F407IGT6
PHY:LAN8720A
软件环境:
Rt-thread 3.0+env 0.7
Bsp:stm32f4xx-HAL
移植过程:
1、env配置工程
○ Rt-thread component->networkstack->light weight tcp/ip->enable lwip stack
○ Device Type 选择STM32F407IGT6
○ Using UART1

保存后退出,在env中输入Scons —target=mdk5,编译成功后
2、打开MKD5工程,Options->device->STM32F407IGT6,然后编译

3、打开securecrt,没有看到串口输出log
○ 示波器没有看到串口波形,查看串口初始化程序,发现rtt uart1用的PA9和PA10,而开发板用的是PB6,PB7,修改后串口输出log
4、修改uart后,添加PHY驱动,MAC配置
○ bsp中没有eth的驱动,在stm32f429-apollo的bsp中copy drv_eth.c,由于apollo使用的PHY是lan8742也是rmii接口,所以在此基础上修改。
○ HAL_ETH_MspInit函数中的引脚,修改lan7420a的地址#define LAN8720 0,修改RMII接口引脚PB13到PG14


○ LAN8720未使用外部中断所以需注掉
void EXTI9_5_IRQHandler()
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
eth_link_exit_config();
5、编译后,下载在finsh中输入ifconfig查看网络状态,成功
