Part Number:DP83822I
在实现DP83822I的TDR模式,按照How to use the TDR Feature of DP83822进行的寄存器配置和读取。但0X0173寄存器无法设置成功,0xFFFF写进去,再读出来就是0x00ff。
另一方面,忽略0X0173寄存器直接进行TDR实验,读0x1E位可以读到0x11,TDR运行成功。但是无论我插拔网线(一端连接到DP83822I,另一端空置),还是换长短网线,0x180寄存器的值始终不变。
Amy Luo:
您好,
您是按扩展寄存器(Extended Register)的写入和读取的方法进行配置和读取的吗?有关如何读取和写入这些寄存器见下面FAQ:
[FAQ] Extended Register Space Access for Ethernet PHYs
,
?? ?:
感谢回复,我使用读函数,对寄存器0x0002和寄存器0x0003进行读取,对照手册发现读取的结果一致,证明我的读函数可用。再使用写函数对寄存器0x0171进行写函数,并在写之前读取0x0171函数的值,并储存。结果证明我的写函数也可用。我目前对于寄存器0x0173的[8]到[15]依旧无法写入。此外,我在硬件上检测发现TDR可以产生波形。并在插播网线后,可以发现对应的波形变化。但在寄存器0x0180到寄存器0x018A的值始终无变化。即使示波器上在插播网线产生了波形变化,但在寄存器0x0180到寄存器0x018A的值没有任何变换。是否是因为我没有正确写入0xff00到寄存器0x0173中,导致寄存器0x0180到寄存器0x018A的值始终无变化?还是因为别的原因?或者是哪里没设置对?期待尽快解答!
,
Amy Luo:
看下面链接帖子的调试过程是否有帮助:
https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_接口_4613607