随笔 - 733  文章 - 2  评论 - 12  阅读 - 92万

STM32外设接口RMII

一 勾选MCO1,软件会自动将PA8配置为MCO1模式,该引脚对于RMII方式很重要,用于为PHY芯片提供50MHz时钟;或者由外部晶振提供。

二 PHY芯片 LAN8742A,LAN8720A(只支持RMII),DP83848(RMII/MII)

2.1 DP83848:注意事项:

检查STM32的MAC时钟是否已开启。

    1. 检查以太网50M的时钟是否正确配置。

    2. 检查STM32的以太网复用IO是否连接到重映射端口上。

    3. 检查STM32的以太网RMII端口是否已正确初始化,IO端口的时钟是否已开启。

    4. 检查连接DP83848的RST引脚(正常工作为高电平,如果网线插入后灯不亮,可能是该引脚没有配置好)的IO是否已初始化。

    5. 检查DP83848的CONFIG引脚在复位状态下的电平是否正确。

    6. 检查DP83848的地址引脚配置是否与STM32中初始化定义的地址一致。

    7. 检查DP83848的时钟接法,如果是外接晶振,检查晶振是否起振,否则查看是否接到STM32的MOC脚,如果是,检查STM32是否已配置MOC脚输出50M时中。。。。。。。。。。。

    8. 调试检查
      1.   SMI调试
      2. RMII接口RX调试
      3. 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:
 
 

   

posted on   杰瑞鼠  阅读(2296)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
历史上的今天:
2019-01-12 RTT之POSIX
2019-01-12 RTT之AT命令组件
2019-01-12 RTT之shell
2018-01-12 新土肥项目总结
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示