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

tms320c6474例程emac测试phy.c的困惑

您好:

  现在使用TMS320C6474芯片时有个问题一直很困惑,在CCS3.3安装目录下有一些例程,CCS3.3\boards\evmc6474_v1\tests\emac中,有两个问题,具体如下“

1、在phy.c的文件中有如下程序:

Uint16 phy_getReg(int phynum, int regnum)

{

   Uint16 value;

   MDIO_USERACCESS0 = 0                    // Read Phy Id 1

       | ( 1 << 31 )                       // [31] Go

       | ( 0 << 30 )                       // [30] Read

       | ( 0 << 29 )                       // [29] Ack

       | (regnum << 21 )                       // [25-21] PHY register address

       | (phynum << 16 )                       // [20-16] PHY address

       | ( 0 << 0 )                        // [15-0] Data       ;

        while( MDIO_USERACCESS0 & 0x80000000 ); // Wait for Results

        value = MDIO_USERACCESS0;

   return value;

}

其中regnum和phynum分别代表寄存器地址和phy地址,是吧?可是在数据手册中找不到相关说明,可以提供相关说明或资料?

2、

phy_setReg(0xe, 26, 0x47);    // Set PHY port 6 SERDES to 0.7V swing

   phy_setReg(0xd, 26, 0x47);    // Set PHY port 5 SERDES to 0.7V swing

        phy_setReg(0x0e, 0, 0x8140);  // Configure PHY port 6 SERDES –> Faraday 1 at 1000mpbs, full duplex

为什么第一个参数是0xe,0xd,0xe,可否提供相关的说明或相关资料?

这两个方面很困惑,因初次使用,有些地方比较生疏,敬请指教,在此致谢~!

Yu Liu7:

试着回一下。

第一个问题是MDIO协议去读对端(PHY 芯片)的信息。需要研究MDIO协议以及PHY芯片的手册。

第二个问题需要结合代码和TI芯片手册一起看。

赞(0)
未经允许不得转载:TI中文支持网 » tms320c6474例程emac测试phy.c的困惑
分享到: 更多 (0)