我有一个用于网络连接的具有 DP83825IRMQR PHY 的 PCB。
当前唯一存在的问题是全双工模式。 我希望它是100Mbps 全双工。
根据寄存器 BMCR (偏移= 0x0)和 BMSR (偏移(0x1)、PHY 被正确设置为全双工、100Mbps。
在循环中读取两个寄存器、每秒返回以下值:
BMCR = 0x2100
位13 (Speed_selection): 0x1 (100Mbps)
位12 (自协商启用):0x0 (禁用)
位8 (Duplex_Mode):0x1 (全双工)
BMCR = 0x784D:
位14 (00Base-TX_FULLE-Duplex):0x1 (器件能够执行全双工100Base-TX)
位13 (100Base-TX_Half-Duplex):0x1 (器件能够执行半双工100Base-TX)
位12 (10Base-TX_FULLE-Duplex):0x1 (器件能够执行全双工10Base-T)
位11 (10Base-TX_Half-Duplex):0x1 (器件能够执行半双工10Base-T)
(笑声)
位4 (远程故障):0x0 (未检测到远程故障条件)
--
位2 (Link_Status):0x1 (建立有效链路(对于10Mbps 或100Mbps)
操作)
如果 PHY 与 WIN-PC 直接连接、我可以通过 PowerShell 命令检查链接状态:
Get-NetAdapter |选择名称、LinkSpeed、fullduplex | ft -autosize
名称 LinkSpeed 全双工
---- ------ ------
以太网 100Mbps 错误
如果我用同一根电缆将同一台 PC 连接到交换机,则全双工状态将变为 False (因此电缆和网卡正常)。 此外、如果 PHY 连接到另一个器件、它也可以只读半双工(此处的屏幕截图)

现在、我恳请您告诉我还有什么需要检查的地方、以便找出问题所在... 我还将发送一部分包含 PHY 和磁性元件的原理图。
并展望解决问题的前景。
提前感谢大家。
此致、
亚莱斯·祖潘。
PoLabs 的固件开发人员。