问题描述:DP83822的硬件电路设计原理图已验证是可用的,而且芯片的配置电路是默认将DP83822配置为MII接口;在重新做板后发现该模块不能正常获取IP,测量信号发现TX_CLK和RX_CLK没有时钟输出,RX_D3/GPIO3却有50MHz的时钟输出,MDC和MDIO可正常读取和配置寄存器,个人认为芯片工作正常,但是硬件默认的配置接口却变成了RMII接口,硬件电路设计并未更改,之前可正常配置为MII;
由于硬件电路不知如何修改,也不太方便修改,能否在芯片复位后通过软件配置寄存器的方法,将RMII接口配置为MII接口,本人尝试过配置0x0017的bit9和bit5,但似乎不止修改这些,请问该如何配置寄存器才能更改为MII接口;
还望各位大佬多多指点,非常感谢!
Amy Luo:
您好,
硬件电路参数是否改了,读一下寄存器0x0017的bit9和bit5看看是什么值
user4737222:
回复 Amy Luo:
读过,bit9是0,bit5是1,硬件配置确实是在RMII接口模式,我尝试更改过这两位,直接把bit5改成0,但芯片并不是直接变成MII模式,似乎还要改其他的寄存器配置;望大神指导我寄存器更改dp83822的接口模式的方法
Amy Luo:
回复 user4737222:
26脚RX_DV硬件电路是怎么接的
user4737222:
回复 Amy Luo:
与STM32F407引脚(PA7)直连的
Amy Luo:
回复 user4737222:
STM32F407的PA7工作在什么状态?26脚RX_DV的电平状态是什么样的
将STM32F407的PA7设置为浮空输入试试或者将26脚RX_DV悬空试试
user4737222:
回复 Amy Luo:
之前是直接将PA7设置成了ETH复用功能,后来也尝试过在dp83822硬件复位之前将PA7设置为下拉输入,防止STM32引脚模式影响PHY芯片上电后120ms电平锁存过程,复位之后再重新配置为ETH复用功能,但是没有效果;
还尝试过直接将STM32拆卸了,发现dp83822仍然是工作在RMII模式
user4737222:
回复 Amy Luo:
我查询过记录RX_DV、RX_ER上电锁存电平的寄存器0x0467,发现RX_DV是默认的00,RX_ER也是默认的11,按道理dp83822应该工作在MII模式啊,为什么实际上读寄存器0x0017,bit5和bit9却分别是1、0,芯片工作在RMII模式,这个问题已经困扰我很久了……非常期待您的帮助,拜托了
user6019263:
回复 user4737222:
你好, 我也在设计中遇到类似的问题, 硬件设计成RGMII 模式,验证板子没有问题, 重新布线之后, 不能进入RGMII,读取0X0467 是对的,可是读取0x0017时 却不对。好像进入了RMII 模式了。