一 勾选MCO1,软件会自动将PA8配置为MCO1模式,该引脚对于RMII方式很重要,用于为PHY芯片提供50MHz时钟;或者由外部晶振提供。
二 PHY芯片 LAN8742A,LAN8720A(只支持RMII),DP83848(RMII/MII)
2.1 DP83848:注意事项:
检查STM32的MAC时钟是否已开启。
-
检查以太网50M的时钟是否正确配置。
-
检查连接DP83848的RST引脚(正常工作为高电平,如果网线插入后灯不亮,可能是该引脚没有配置好)的IO是否已初始化。
-
检查DP83848的CONFIG引脚在复位状态下的电平是否正确。
-
检查DP83848的地址引脚配置是否与STM32中初始化定义的地址一致。
-
检查DP83848的时钟接法,如果是外接晶振,检查晶振是否起振,否则查看是否接到STM32的MOC脚,如果是,检查STM32是否已配置MOC脚输出50M时中。。。。。。。。。。。
- 调试检查:
- SMI调试
- RMII接口RX调试
- RMII接口TX调试
工作模式:由39号和7号引脚电平决定
PIN39 | PIN7 | 模式 |
0 | X | MII |
1 | 0 | RMII |
1 | 1 | 10MB SNI MODE |
工作模式(RMII/MII)的选择由39号RX_DV和7号SNI_MODE两个管脚的电平共同决定。
地址:由PHYAD[4:0]决定也就是42,43,44,45,46的引脚,原来PHYAD0(COL) 内部有弱上拉电阻,PHYAD1(RXD_0), PHYAD2 (RXD_1) , PHYAD3 (RXD_2) , PHYAD4 (RXD_3) 内部有弱下拉电阻,所以如果5个引脚悬空读出来数据就是00001,也就是默认的地址1。
如果读地址是0xffff,若硬件没问题可能是PHY地址弄错了,可对0~31地址轮询看是哪个。
DP83848的PHY地址设置为0时,是脱机模式,用于多个PHY并存的应用场合,所以当你设置PHY地址为0网络又不通时,请检查一下这个知识点
SMI(串行管理接口):包含MDC,MDIO两根线,通过它MAC层芯片可以访问物理层芯片寄存器。
LN87XX: