久芯网

基于STM32H743VIT6 + LWIP + FreeRTOS

avatar 追梦少年不迷茫 提问时间: 2023-08-01 13:28:17 / 未解决

我直接用cubemx6.5版本,生成LWIP跟FREERTOS,不知道为何LWIP的初始化函数会导致RTOS直接死机,然后单片机进入ERROR_HANDLER死循环了。LWIP初始化函数注释掉,RTOS就恢复正常了,不知道两者有什么冲突呢。


如需获得 STM32H743VIT6 等器件的更多信息,请点击链接或 点击此处 联系在线客服!

14个回答
  • avatar 毛竹
    回答时间: 2023-08-01 13:46:36
    废鱼 发表于 2022-4-13 15:33
    点以下的切换编辑器,再上传。

    !(data/attachment/forum/202204/13/153317**hy4tydedkstes.png?imageM ...

    [md] 是这里出了问题,导致生成错误标志,进入MCU死循环。这里需要如何解决呢?

  • avatar 毛竹
    回答时间: 2023-08-01 14:10:24
    xmshao 发表于 2022-4-13 12:21
    你检查下ETH有关参数配置,可以参考ST提供的相关例程;另外,就是看看是否存在堆、栈配置不合适的情况。 ...

    死机问题出现在这个函数

  • avatar 毛竹
    回答时间: 2023-08-01 14:36:57
    xmshao 发表于 2022-4-13 12:21
    你检查下ETH有关参数配置,可以参考ST提供的相关例程;另外,就是看看是否存在堆、栈配置不合适的情况。 ...

    堆栈大小我设置得比较大,应该没有问题,不过我追踪死机得源头,就追踪到这个函数(netif用户指定的初始化函数),这个函数就再也追踪不进去了。对应的C文件设置了一下优化等级也追踪不进去,请问有什么方法能追踪进去。

  • avatar xmshao
    回答时间: 2023-08-01 14:55:48

    你检查下ETH有关参数配置,可以参考ST提供的相关例程;另外,就是看看是否存在堆、栈配置不合适的情况。

  • avatar 毛竹
    回答时间: 2023-08-01 15:23:38
    xmshao 发表于 2022-4-13 12:21
    你检查下ETH有关参数配置,可以参考ST提供的相关例程;另外,就是看看是否存在堆、栈配置不合适的情况。 ...

    这个初始化函数无法定位进去。

  • avatar 废鱼
    回答时间: 2023-08-01 15:42:18

    估计是初始化部分内容过不去,方便把工程传上来吗?我自己建立的怕对不上。

  • avatar 毛竹
    回答时间: 2023-08-01 15:59:19
    废鱼 发表于 2022-4-13 14:44
    估计是初始化部分内容过不去,方便把工程传上来吗?我自己建立的怕对不上。 ...

    大佬方便提供一下邮箱吗?貌似无法直接传上来。

  • avatar 毛竹
    回答时间: 2023-08-01 16:28:59
    废鱼 发表于 2022-4-13 14:44
    估计是初始化部分内容过不去,方便把工程传上来吗?我自己建立的怕对不上。 ...

  • avatar 废鱼
    回答时间: 2023-08-01 16:53:20

    点以下的切换编辑器,再上传。

  • avatar 毛竹
    回答时间: 2023-08-01 17:10:11

    LWIP.zip (2.83 KB, 下载次数: 9) 2022-4-13 15:56 上传 点击文件名下载附件 下载积分: ST金币 -1

  • avatar 毛竹
    回答时间: 2023-08-01 17:37:50
    废鱼 发表于 2022-4-13 15:33
    点以下的切换编辑器,再上传。

    !(data/attachment/forum/202204/13/153317**hy4tydedkstes.png?imageM ...

    [md]只能上传9M以内的文件,我上传了一个ioc文件

  • avatar 废鱼
    回答时间: 2023-08-01 17:59:37

    我看了一下代码,是通过low_level_init进入的。

  • avatar 毛竹
    回答时间: 2023-08-01 18:26:32
    废鱼 发表于 2022-4-13 21:31
    我看了一下代码,是通过low_level_init进入的。

    是cubemx的bug?

  • avatar 毛竹
    回答时间: 2023-08-01 18:45:01
    废鱼 发表于 2022-4-13 21:31
    我看了一下代码,是通过low_level_init进入的。

    cubemx 配置的是 LAN8743 我实际上用的是LAN8720

会员中心 微信客服
客服
回到顶部