This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] DP83848C:接口论坛

Guru**** 2366860 points
Other Parts Discussed in Thread: DP83848C
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1529188/dp83848c-interface-forum

器件型号:DP83848C

工具/软件:

您好、

我正在开发一款使用 DP83848C 通过 RMII 连接 ESP32 的原型。 目前、我无法将 PHY 的启动配置为启用自动协商功能。

我使用引脚 26 和 28 直接驱动 LED。 每个 LED 通过 274 Ω 电阻器连接到 3V3。 引脚 27 未连接、依赖内部上拉电阻器来设置 Strap 配置值。

当 DP83848C 启动时、首选强制模式值为 100 半双工。

通过更改我们的网络交换机设置、我们可以获取 IP 地址、并以以下强制模式值发送/接收数据。
10 个半双工
10 全双工
100 个半双工
100 全双工

在布线中、AN1 引脚 27 的 Strap 配置值似乎存在问题。 这与数据表中提供的信息不一致。

此特定布线显示了器件的正常启动、但即使我将外部上拉电阻器(2K2 欧姆)连接到引脚 27、该布线也保持不变。

我注意到的另一个问题是 PHY 标识符寄存器#1 和#2 报告的值不正确。 地址 0x02h 报告 0x4001、而地址 0x03h 报告 0xB921。 提供非标准 OUI:0x10006E、非标准模型:0x12、模型修订版:0x1。

任何帮助都得到了满足。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    您能否提供寄存器 0x0-0x1F 的转储? 这将有助于提供对 PHY 上执行的所有状态机的状态检查。 如果真实情况是不正确的 Strap 配置、则会在此处记录值。

    您还能提供原理图吗?

    此致、

    Gerome

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Gerome

    感谢您的迅速回复。

    希望您需要的所有信息都在这里。

    Dave

    寄存器值(十六进制):
    0x0_:0x2001 0xF0DB 0x4001 0x421 0x03C3 0x0103 0x000D 0x4003
    0x1_:0x0001 0x0001 0x0001 0x0001 0x0001 0x0001 0x0001
    0x2_:0x1C23 0x0001 0x7801 0x0001 0x0083 0x0001 0x0201 0x543
    0x3_:0x0001 0x543 0x1209 0x0001 0xC023 0x107D 0x0001

    寄存器值(十进制):
    0x0_:8193 61659 16385 47393 963 259 13 16387
    0x1_:1 1 1 1 1 1 1.
    0x2_:7203 1 30721 1 131 1 513 67
    0x3_:1 67 4617 1 49187 4221 1.

    BMCR (0x00):0x2001 — 基本模式控制
    BMSR (0x01):0xF0DB — 基本模式状态
    PHYID1 (0x02):0x4001 - PHY ID 第 1 部分
    PHYID2 (0x03):0xB921 - PHY ID 第 2 部分
    ANAR (0x04):0x03C3 — 自动协商广播
    ANLPAR (0x05):0x0103 — 链路伙伴能力
    ANER (0x06):0x000D — 自动协商扩展
    PHYSTS (0x10):0x1C23 - PHY 状态
    PHYCR (0x16):0x0201 - PHY 控制
    PHYCR2 (0x19):0x0043 - PHY 控制 2

    自动协商已启用 (BMCR[12]):否
    自动否定完成 (BMSR[5]):否
    链路状态 (BMSR[2]):关闭
    链路状态 (PHYSTS[0]):打开
    速度 (PHYSTS[1]):10m
    双工 (PHYSTS[2]):半双工

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    感谢您的信息。 我想先研究 SMI、因为这些值似乎存在、但移出位置、从而导致不正确的十六进制值。 您能否为单个事务提供 MDC 和 MDIO 的逐位注释作用域?

    此致、
    Gerome

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gerome、

    我不太 明白您最初是在上一篇文章、但我已经重新阅读了数据表中的时序图、现在可以看到上面的 AN1 示波器迹线实际上是正确的。 根据数据表、我预计“高电平“持续 167ms。

    阅读注释 (1) 后、我可以看到、对于 RMII 模式、锁存时间仅为 84ms。 当我回到办公桌时、我会向您发送 SMI 跟踪。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Dave:

    感谢您的回答。 等待您的下一次更新。

    此致、

    Gerome

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gerome、

    我不确定您想要什么、但我附上了 MDC 和 MDIO 的示波器截图。

    为了 100%清晰起见、当时没有连接以太网电缆。 这不是上电后的第一个事务。 只是一个随机的快照。

    此致、

      Dave

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、David:

    感谢您提供此信息。 由于交易非常狭窄、您最终是否可以对交易进行备注? 我正在寻找以下内容:

     

    我们来重点了解如何获取寄存器 0x2 和 0x3。 这些是不应更改的只读值。 一旦我们可以依赖 SMI、那么我们可以查看其他未完成的项目、因为采用寄存器访问进行调试会明显更容易。

    此致、
    Gerome

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gerome、

    以下是您请求的 2 个事务的示波器截图。 我已经附加了一些逐位示波器截图、因为我认为您无论如何都会要求这些。 从示波器屏幕截图来看、对于地址 0x02h、寄存器值应该为 2000h、对于地址 0x03h、寄存器值应该为 5C90h。 但是、 对于 0x02h、直接读取寄存器仍会返回 0x4001 结果;对于地址 0x03h、则返回 0xB921 结果。

    此外、我相信您会注意到、MDIO 布线的 STA 和 PHY 部分之间的 MDC 频率有明显的变化。 此外、我之前发送的迹线没有这种异常。 我仍在使用同一电路板、但我们已 重新编写固件、以便能够捕获最新的示波器屏幕截图。  

    此致、

      Dave

    e2e.ti.com/.../0x02h-register.zipe2e.ti.com/.../0x03h-register.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Dave:

    看看寄存器 0x2 示例、这应产生 0x2000。 但是、我担心 MDC 频率在转换时的变化、想知道 PHY 是否预计到了与命令中规定的频率相似的频率。 此外、响应非常接近上升沿、我相信 SoC 值可能会误报。 请让我知道在对 MDC 进行整流后会发生什么。我也对 MDC 完成后的嘟嘟声很好奇、因为假设 PHY 将会释放该线路。

    此致、

    Gerome