ccdodo 发表于 2022-6-27 09:56:51

F407 与 LAN9252通信问题

采用STM32F407与LAN9252进行通信,采用FSMC接口,目前量产了500套,但是发现有一些产品在上电的时候会偶尔出现LAN9252卡死在初始化状态的情况。
一旦初始化没问题,则可以一直保持正常运行。
就是会卡在这个死循环中,写入数据和读取的数据不等。
do
    {
      intMask = 0x0093;
      HW_EscWriteDWord(intMask, ESC_AL_EVENTMASK_OFFSET);
      intMask = 0;
    HW_EscReadDWord(intMask, ESC_AL_EVENTMASK_OFFSET);
   inittimer++;
   if(inittimer>1000000)
   {
    g_sm.g_flags.bit.EthercatInitErr=1;
    break;
   }
    } while (intMask!= 0x0093);

不知有没有哪位遇到过这个问题,是否能提供一下解决的思路。感谢感谢!
附件中附上原理图

eric2013 发表于 2022-6-27 10:17:54

上电后延迟1秒再操作,看看是否可以解决。

ccdodo 发表于 2022-6-27 10:21:19

eric2013 发表于 2022-6-27 10:17
上电后延迟1秒再操作,看看是否可以解决。

:handshake感谢,我试试看。

jasondong388 发表于 2022-6-27 11:21:33

关注楼主测试结果

morning_enr6U 发表于 2022-6-27 15:53:53

关注楼主测试

时光逆 发表于 2022-7-3 14:46:09

上电后9252会先从EEPROM读通信方式吧。初始化之前加延时等待9252读EE完成

时光逆 发表于 2022-7-3 14:48:54

有可能是初始化之前,9252还没从EEPROM读通信方式成功,加延时试试

ccdodo 发表于 2022-7-6 16:38:33

加了延时还是会出现,:(,不过感觉频率有降低。

这个清晨不冷 发表于 2024-3-26 16:57:18

关注楼主测试:D
页: [1]
查看完整版本: F407 与 LAN9252通信问题