This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS570LS1227:MDIOPhyRegRead

Guru**** 2482105 points
Other Parts Discussed in Thread: TMS570LS1227, HALCOGEN

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/709606/tms570ls1227-mdiophyregread

器件型号:TMS570LS1227
主题中讨论的其他器件: HALCOGEN

您好!

我使用的是 Hercules 安全 MCU 开发套件- TMS570 MCU。
它嵌入了 MCU TMS570LS1227。

调用 MDIOPhyRegRad()时使用
baseAddr = 0xFCF78900 (= mdioBaseAddr)
-Regnum = 2           (= PHY_ID1     )

函数卡在第二个 while 循环中、在该循环中轮询完成情况:

while ((HWREG (baseAddr + MDIO_USERACCESS0)& MDIO_USERACCESS0_GO)== MDIO_USERACCESS0_GO)

有什么想法、可能会出什么问题?

BTW:调用 EMACInit()和 MDIOInit()。

此致
 Michael

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Michael、

    MDIO_USERACCESS0是否为0x80? 还是您的代码中的 MDIO_USERACCESS1=0xFCF78980? 也请检查引脚多路复用器。 MDIO 和 MCLK 与 NHET 复用。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Wang、

    感谢您的快速响应。 同时、在使用更改的 HAL 进行一些试验后、我的成功不大。 但现在、我在后面的两行中挣扎
    if (((HWREG (baseAddr + MDIO_USERACCESS0))& MDIO_USERACCESS0_ACK)== MDIO_USERACCESS0_ACK)。
    我没有得到确认。

    关于您的问题:mdio.USERACCESS0 = 0x0041FFFF
    我想您的意思是、我应该检查 Halcogen PINMUX 选项卡。 不幸的是、我错过了这样的检查体验。 因为我使用的是开发套件... 是否可以在某个地方提供随时可用的 Halcogen 配置?

    我在 Halcogen 中看到的是与 MDIO 相连的焊球 G3。
    和焊球 V5及 MDCLK。 我假设这是 MDIO 时钟!?
    如何验证这是正确的设置?

    此致
    Michael
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果检查了 G3和 V5的 MDIO 和 MDCLK、则 pinmux 设置正确。 您可以在 CCS 寄存器窗口(CCS->View->Registers)中仔细检查 pinmmr7和 pinmmr8的寄存器。 位字段[11:8]应该为 b0100 (位10被置位)。

    BTW、MDIO 时钟(MDCLK)应小于2.5MHz。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Wang、

    感谢您的支持。 同时、我能够解决这个问题:

    "Hercules 安全 MCU 开发套件- TMS570 MCU"的主要问题是缺少文档。 遗憾的是、我期望 EMAC/PHY 可用于 DIP 开关的默认设置。 到目前为止、我没有发现板 DIP 开关默认设置为"以太网关闭"的提示。 将开关移至"ON"是分辨率!

    此致
    Michael
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Wang、

    它现在正在工作。 但是、我只想双击以下内容:
    >BTW 时,MDIO 时钟(MDCLK)应小于2.5MHz。
    在哪里可以找到 MDIO/MDCLK 时钟设置/配置? 我本来想在 Halcogen 找到设置,但我没有成功。

    此致
    Michael
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Michael、

    位于 TRM 的第1837页:spnu515b.pdf

    32.2.1时钟控制

    所有内部 EMAC 逻辑在 VCLKA4域上同步计时。 请参阅体系结构
    章节、了解更多详细信息。

    MDIO 时钟基于 VCLK3外设总线时钟的分频、并指定运行至
    2.5MHz (虽然典型运行频率为1.0MHz)。 因为 VCLK3外设时钟频率是
    可配置、应用软件或驱动程序必须控制分频值。