一、环境准备
电脑系统:Windows 10 专业版 20H2
IDE:Keil v5.35、STM32CubeMX v6.5.0
测试硬件:STM32F767
二、测试步骤
1、测试目的
通过CubeMX配置lwip,ping通STM32F767
2、新建工程
3、配置sys
不使用操作系统,那么时基源直接使用Systick,SWD调试。
4、配置RCC
高速时钟为电路板上的25M晶振,没有低速晶振。
配置时钟树,选择HSI也可以,但那就没用到外部时钟的性能啦
5、配置ETH
5.1、实际使用RMII接线,设备地址为0
5.2、参数配置
5.3、配置寄存器
电路使用LAN8720,这里选择LAN8742
前面配置都一样,就需要注意红框内配置。
5.4、检查硬件引脚
5.5、配置复位脚
复位脚一般都需要单独控制。
6、配置LWIP
6.1基本配置
使用网线直连电脑,不需要DHCP;
打算做TCP客户端,故“Protocol Options”如图示
6.2 协议关键选项配置
基本默认,开启一个状态反馈
7、生成工程
略
8、配置PHY复位
9、配置轮询
CubeMX中,选择Polling Mode,故需要再大循环中添加函数
MX_LWIP_Process();
并在其中添加
ethernetif_set_link(&gnetif);
10、屏蔽printf
不想加 MicroLib
11、编译烧录
三、运行效果
基本版本板,要实现客户端、服务器等其他功能,就等后续优化吧
四、工程资料下载
1-Lwip-ping.rar (访问密码: 1666)https://url48.ctfile.com/f/33868548-1268552291-ea7b98?p=1666