TI中文支持网
TI专业的中文技术问题搜集分享网站

DP83826E: 引脚18如何切换回 RMII_CRS_DV?

Part Number:DP83826EOther Parts Discussed in Thread:AM6442

因为需要将83826E配置为RMII SLAVE MDOE, 我需要在外围电路中,将strap pin10(引脚18)和strap pin4(引脚28)上拉为高电平。   结果通过读取扩展寄存器0x468的bit 12,发现引脚18也被配置为RMII_RX_DV了。

我需要将引脚18切换回RMII_CRS_DV:我通过写扩展寄存器0x302的bit8为0(写过程:先读取0x302,得到值0x0100,然后将bit8置0,即写0x0000到0x302),        然后重新读取0x302,,发现0x302值为0xcd80,与我写的值不匹配。  如果我不曾写0x302,发现读取0x302一直为0x100;      请问我该如何才能将引脚18切换回RMII_CRS_DV?

s s:

非常抱歉,信息提供错误,因为写寄存器302时不小心写错了。现更正一下:

①因为需要将83826E配置为RMII SLAVE MDOE, 我需要在外围电路中,将strap pin10(引脚18)和strap pin4(引脚28)上拉为高电平。   结果通过读取扩展寄存器0x468的bit 12,发现引脚18也被配置为RMII_RX_DV了。

②我将引脚18切换回RMII_CRS_DV的方式:我通过写扩展寄存器0x302的bit8为0(写过程:先读取0x302,得到值0x0100,然后将bit8置0,即写0x0000到0x302),  然后重新读取0x302,,已经确定写0成功。  然后再读取扩展寄存器0x468的bit 12,发现bit 12 仍然为1,即引脚18仍为RMII_RX_DV。

,

Kailyn Chen:

您好,strap pin10(引脚18)和strap pin4(引脚28)上拉为高电平的话即为RMII slave mode。

因为0x302的bit8 默认也是strap pin的值,所以默认也为1,即为Pin18 为RMII_RX_DV。

那么您想通过改变寄存器去覆盖strap pin的值是可以的,即去写0x302的bit8 为0.但是如果为0的话,即引脚18 为0,不就改成RMII master mode了吗?您实际需要的是RMII slave mode呢。

那么

,

s s:

你好,非常感谢你的回复,下面是我的疑问与理解:

①trap pin10(引脚18)和strap pin4(引脚28)上拉为高电平的话即为RMII slave mode, 该部分不是仅在上电或硬件复位后生效?    我的理解是:后续修改寄存器0x302的bit8,应该不会改动端口模式,也不会改动strap值,因为上电瞬间已经将 strap锁存了。

②我并不是想要覆盖strap pin的值,也不想更改RMII模式,我仅想修改引脚18的引脚复用。  

③如下图为 83826E RMII slave 信号引脚图,和我MCU(AM6442)使用的CPSW PORT 引脚图:(这样子的连接关系,不是需要将引脚18配置为RMII_CRS_DV 才能正常网络通信?)

,

Kailyn Chen:

明白您的意思。

首先对于RMII slave mode的配置,第一,50Mhz时钟给XI。第二,strap pin10(引脚18)和strap pin4(引脚28)上拉为高电平。

根据Pin18的定义,其实我们可以看到RMII mode下,这个引脚即为CRS_DV功能,所以我想既然我们已经成功配置为RMII slave mode,pin18也就是CRX_DV的功能。理论上是不需要再进行其他配置了。

只是目前遇到的问题是寄存器0x302的bit8读取这个多路复用引脚为1。而在RMII mode中,应该为CRS_DV。

我再看下这个寄存器。

 

,

s s:

是的,问题如你所述一致,期待你的进一步回复。  谢谢!

,

Kailyn Chen:

您好,我看了下9.4.1.1部分关于enhanced mode下的flow chart,理解的是在enhance mode下PIN18的时分复用功能。也就是说在enhanced mode下可以通过寄存器0x302h的bit8 去配置这个引脚。

并且,在DP83867 datasheet中有描述0x1F以上的寄存器都为extended registers,同样这也适用于DP83826,即0x302 为extended register,对于extended register的配置数据手册中有描述如何去读写。

综上得到的推论为,对于basic mode下RMII slave mode下的配置,仍是之前我们讨论的理解,即两个条件,第一,50Mhz时钟给XI。第二,strap pin10(引脚18)和strap pin4(引脚28)上拉为高电平。不再需要其他的配置。并且您也通过读取寄存器468h确实为RMII salve  mode。

您也可以再读取下寄存器3h这里是否为basic mode,如果确实为1,我想RMII slave mode配置是没问题的。

 

,

s s:

好的,非常感谢, 我这就确认一下。

,

s s:

我想你应该是对的,寄存器0x302 bit8 是针对enhance mode下而言的。   寄存器0x468的 bit12 也是针对enhance mode的。

   如果我是basic mode,满足50Mhz时钟给XI,strap pin10(引脚18)和strap pin4(引脚28)上拉为高电平 即可 。 不再需要其他的配置。

无需理会 寄存器0x468的 bit12 是否为0(RMI CRS_DV)。

赞(0)
未经允许不得转载:TI中文支持网 » DP83826E: 引脚18如何切换回 RMII_CRS_DV?
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1