现象
芯片是STMH750,固件包版本STM32Cube FW_H7 V1.8.0,CubeMX 版本6.0.1。

问题排查
1、不加入lwip,单跑FreeRTOS,运行正常;
2、加入lwip,检查ETH外设中断的优先级,将优先级调整比configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY大,进入Hardfault,排除中断导致的可能;
3、增加各个任务的任务栈大小,由于是加入lwip后才出现的,所以先分别调整lwip相关的任务的栈大小为原来的4倍。共三个,EthLink、EthIf和tcpip_thread,进入Hardfault,排除这三个任务的问题;
4、最后一个任务是启动任务defaultTask,调整该任务的栈大小,运行正常。
问题确认
由以上步骤可以发现,是因为默认分配的任务栈太小导致的,只有(128*4)Bytes。更改如下: