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

C6746 网口通信不上,使lan8710a芯片

PQdsp20170419.rar使用附件中的工程,对MAC进行配置,通过lan8710a进行网口通信,板子使用的是ti官方的C6748的LCDK板子,测试通信不上。在程序里设置发送,用示波器测试C6746的MAC层的引脚也没有信号输出,希望各位帮忙看一下是我哪里的配置或者用法不对,谢谢!

Shine:

请问是参考C6748 LCDK开发板设计的c6746板子还是直接用的LCDK开发板?

请检查一下Pinmux和PSC是否配置正确?starterware里有网口例程。

xiaobin lin:

回复 Shine:

我现在用C646做了一个板子控制交换机芯片,但是没有调通,我怀疑是MAC控制有问题。然后就选择使用TI官方的C6748 LCDK开发板进行调试,两种调试使用的是相同的MAC层程序,只是修改了phy层驱动。我debug查过寄存器Pinmux和PSC是否配置应该是正确的。//EMAC PSC在gel或者boot里面可以设置,此处可以加上PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_EMAC, PSC_POWERDOMAIN_ALWAYS_ON,PSC_MDCTL_NEXT_ENABLE);//DSP EMAC pinmuxEMAC 和 MDIO的引脚的分配EMACPinMuxSetup();//没有问题 顺序1

EMACPinMuxSetup();函数如下:
void EMACPinMuxSetup(void)
{unsigned int savePinMux = 0;
/*** Clearing the bits in context and retaining the other bit values** of PINMUX4 register. MDIO*/savePinMux = HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) & \~(SYSCFG_PINMUX4_PINMUX4_3_0 | \SYSCFG_PINMUX4_PINMUX4_7_4);/*** Performing the actual pin multiplexing to select MDIO peripheral's pins** for use.*/HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = \(PINMUX4_MDIO_ENABLE | savePinMux);

/*** Clearing the bits in context and retaining the other bit values** of PINMUX2 register.*/savePinMux =HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(2)) & \~(SYSCFG_PINMUX2_PINMUX2_31_28 | \SYSCFG_PINMUX2_PINMUX2_27_24 | \SYSCFG_PINMUX2_PINMUX2_23_20 | \SYSCFG_PINMUX2_PINMUX2_19_16 | \SYSCFG_PINMUX2_PINMUX2_15_12 | \SYSCFG_PINMUX2_PINMUX2_11_8 | \SYSCFG_PINMUX2_PINMUX2_7_4);
/*** Performing the actual Pin Multiplexing to select relevant pins in** PINMUX2 register.*/HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(2)) = \(PINMUX2_EMAC_ENABLE | savePinMux);
/*** Clearing the bits in context and retaining the other bit values** of PINMUX3 register.*/savePinMux = HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(3)) & \~(SYSCFG_PINMUX3_PINMUX3_31_28 | \SYSCFG_PINMUX3_PINMUX3_27_24 | \SYSCFG_PINMUX3_PINMUX3_23_20 | \SYSCFG_PINMUX3_PINMUX3_19_16 | \SYSCFG_PINMUX3_PINMUX3_15_12 | \SYSCFG_PINMUX3_PINMUX3_11_8 | \SYSCFG_PINMUX3_PINMUX3_7_4 | \SYSCFG_PINMUX3_PINMUX3_3_0);

/*** Performing the actual Pin Multiplexing to select relevant pins in** PINMUX3 register.*/HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(3)) = \(PINMUX3_EMAC_ENABLE | savePinMux);
/* Enable MII mode of operation */HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_CFGCHIP3) &= ~(SYSCFG_CFGCHIP3_RMII_SEL);

}

xiaobin lin:

回复 Shine:

用的C6748的LCDK开发板

赞(0)
未经允许不得转载:TI中文支持网 » C6746 网口通信不上,使lan8710a芯片
分享到: 更多 (0)