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.

[参考译文] AM2432:CAN't 通过 CTT 工具上的总线搜索检测子器件

Guru**** 2788945 points

Other Parts Discussed in Thread: AM2432, TMDS243EVM, SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1608290/am2432-can-t-detect-subdevice-by-bus-search-on-ctt-tool

器件型号: AM2432
Thread: TMDS243EVMSysConfig 中讨论的其他器件

您好、

我的客户现在通过连接某些类型的主设备在 AM2432 上评估 ISDK 11.0.0.13 的 EtherCAT 子设备。

至于与 TwinCAT 的连接、他们能够确认 EtherCAT 通信在按预期通过总线搜索检测到后转换为 Op。

但是、在与 CTT 工具结合使用时、搜索不会检测到子器件。

 

当搜索失败时、他们通过 Wireshark 检查数据包数据、发现其定制电路板上的子器件根本没有响应 CTT 工具发出的第一个 BWR 命令。

当它们比较 CTT 工具和 TwinCAT 上数据包的内容时、BWR 的 MAC 目标存在差异。 对于 TwinCAT、这是单播 (01:01:05:05:01:00:00)、但在 CTT 工具中广播 (FF:FF:FF:FF:FF:FF:FF:FF:FF:FF)。

他们作为子器件的定制电路板直接与主器件 (PC) 连接。

从这些结果可以看出、测试人员假定 AM2432 上正在读取/丢弃广播数据包、但不确定。

您能否向他们提供任何建议或建议、以找出根本原因并解决此问题?

 

以下是从 CTT 工具和 TwinCAT 发送的 BWR 命令日志。

 

BWR 日志已从 CTT 工具发送

CTT.jpg

 

从 TwinCAT 发送的 BWR 日志

TwinCAT.jpg

 

谢谢。此致、

英明

 

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

    其他信息、  

    当发生上述问题时、他们通过将 PC 与其定制电路板上的 OUT 端口(端口 1)连接来确认 Wireshark 日志。

    可以检索 CTT 工具发出的 BWR 数据包。 此时、WC(工作计数器)递增 1 个计数。

      

    ESC DL 状态 (0x0110) 解决方案 将 PC 连接到 OUT 端口为 0x5611、它仅显示端口 0 处于链路状态。

    ESC DL 状态 (0x0110) 之后 将 PC 连接到 OUT 端口是 0x5a31、表示端口 0 和 1 处于链路状态。

    从这些结果来看、尽管 ESC 可以作为 EtherCAT 数据包从 CTT 工具接收 BWR 命令、但对 BWR 命令处理:0x0100、0x0101 的数据写入和命令响应似乎不起作用。

      

      

    其他信息、

    他们确认、TMDS243EVM 能够正确地与 CTT 工具通信。

    这些软件(EtherCAT 协议栈、ESI 文件等) 已将解决方案从 EVM 移植到其定制板。 仅针对 EVM 及其电路板之间的差异修改了 SysConfig 设置

      

    谢谢。此致、

    英明

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

    他们能否共享完整的 CTT 会话日志

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

    您好 Pratheesh、

    感谢您的答复。

    下面是 CTT 日志。

    SEP =;
    Cult=ja-JP;
    2026/01/21 10:24:05;信息;CTT 从 C:\Program Files (x86)\EtherCAT Conformance Test 启动
    2026/01/21 10:24:05;信息;运行已安装版本:2.7.0.0
    2026/01/21 10:24:05;信息;“EtherCAT 一致性测试“(ThreadID:1、时间:2026/01/21 10:24:05);
    2026/01/21 10:24:05;信息;ECConformanceTest、Version=2.7.0.0、文化=中性 PublicKeyToken=180016cd49e5e8c3;
    2026/01/21 10:24:05;信息;FSoE、版本=1.4.0.0、文化=中性 PublicKeyToken=180016cd49e5e8c3;
    2026/01/21 10:24:05;信息;加载插件:CrcVerifier、Version=1.2.5.0、Culture=Neutral、 PublicKeyToken=180016cd49e5e8c3;
    2026/01/21 10:24:05;信息;加载插件:CTTReportingTool、版本=1.0.14.0、文化=中性 PublicKeyToken=180016cd49e5e8c3;
    2026/01/21 10:24:05;信息;加载插件:TF-12xx_Settings、Version=1.0.5.0、Culture=Neutral、 PublicKeyToken=null;
    2026/01/21 10:24:05;信息;========================================================================================================================================== ;
    2026/01/21 10:24:05;信息;CttService |添加测试文件;
    2026/01/21 10:24:05;信息;测试集:读取“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\TF-set_v1.8_Default_CTT_V2.7.0.xml.ctfs“;
    2026/01/21 10:24:05;信息;测试设置:读取“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCA-set_v1.8_EtherCAT_CTT_v2.7.0.ctfs' tf;
    2026/01/21 10:24:05;信息;测试集:读取“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCAT-set_v1.8_profiles_CTT_v2.7.0.ctfs“ tf;
    2026/01/21 10:24:05;信息;测试集:读取“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCAT-set_v1.8_semi_device_profiles_CTT_v2.7.0.ctfs“ tf;
    2026/01/21 10:24:05;信息;测试集:读取“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCAT-set_v1.5_fsoe_subinstance_ctt_v2.7.0.ctfs' tf;
    2026/01/21 10:24:05;信息;测试设置:读取“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCAT-set_v1.1_fsoe_maininstance_ctt_v2.7.0.ctfs“ tf;
    2026/01/21 10:24:06;信息;添加测试文件“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCA-1300_v1i9i0_ESI_test.xml“ tf;
    2026/01/21 10:24:06;信息;添加测试文件“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCA-1301_v1i2i0_ESI_EtherCAT_p.xml“ tf;
    2026/01/21 10:24:06;信息;添加测试文件“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCA-1100_v1i5i0_dll_test.xml“ tf;
    2026/01/21 10:24:07;信息;添加测试文件“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCA-1200_v1i6i0_esm.xml“ tf;
    2026/01/21 10:24:07;信息;添加测试文件“C:\Program Files (x86)\EtherCAT Conformance Test\TestFiles\EtherCA-1201_v1i6i0_显 tf 式设备.xml“;
    2026/01/21 10:24:07;信息;CttService |添加已取消的测试文件;
    2026/01/21 10:24:59;信息;CttService |获取主设备 GUID:bbe0f900-2d13-4cd8-969b-17c3550fae5f;
    2026/01/21 10:24:59;信息;CttService |主设备扫描:MasterGuid:bbe0f900-2d13-4cd8-969b-17c3550fae5f
    2026/01/21 10:25:00;警告;EcMaster:丢失帧 (ecat.cmd == 8 && ecat.idx == 0x91 && ecat.adp == 0x0 && ecat.ado == 0x100)
    2026/01/21 10:25:01;警告;EcMaster:丢失帧 (ecat.cmd == 8 && ecat.idx == 0x92 && ecat.adp == 0x0 && ecat.ado == 0x100)
    2026/01/21 10:25:02;警告;EcMaster:丢失帧 (ecat.cmd == 8 && ecat.idx == 0x93 && ecat.adp == 0x0 && ecat.ado == 0x100)
    2026/01/21 10:25:03;错误;CttService | Scan 导致错误:EcMaster:丢失帧 (ecat.cmd == 8 && ecat.idx == 0x94 && ecat.adp == 0x0 && ecat.ado == 0x100);


    谢谢。此致、

    英明

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

    松本山

    客户是否可以测试 SDK-AM243X 软件开发套件 2025.00.00 (INDUSTRIAL-COMMUNICATIONS-SDK)| TI.com 中的固件 ? 这包括针对此类场景的链路检测增强。 请参阅 AM243x 工业通信 SDK:版本说明 2025.00.00 中的 PINDSW-9142

    [引述 userid=“10509" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1608290/am2432-can-t-detect-subdevice-by-bus-search-on-ctt-tool/6196912

    ESC DL 状态 (0x0110) 解决方案 将 PC 连接到 OUT 端口为 0x5611、它仅显示端口 0 处于链路状态。

    [/报价]

    因此、端口 0 链路状态在未建立连接时有效?

    此致、
    Aaron  

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

    您也可以参阅此页面、了解以前已解决的与链路检测相关的问题: AM243x 工业通信 SDK:EtherCAT 调试指南

    此致、
    Aaron  

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

    此外、以下寄存器将有助于了解 EtherCAT 固件是否正在从 CTT 工具接收数据包:

    这样、我们可以确定问题是来自 ESC 固件还是 PHY 移植。

    此致、
    Aaron  

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

    松本山

    请确保 PHY 地址配置正确、并且链路极性也符合增强链路的预期。 请参阅“ MDIO 工作原理进行链路检测 “(在 AM243x 工业通信 SDK 中):EtherCAT subdevice FWHAL。 MDIO PHY 地址应与 MDIO 链路寄存器匹配、交换它们可能会导致未知问题。

    此致、
    Aaron

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

    您好 Aaron、

    感谢您分享一些信息。 我们收到了客户对您的咨询的一些反馈。 请查看以下内容、如果您想解决此问题、请向他们提供任何建议。

    他们可以对其进行测试、但他们无法估计建立测试环境所需的工时、因此他们希望在确认确定性解决了该问题后继续进行。
    即使当前使用 ENHANCED_LINK 功能已禁用、PINDSW-9142 是否适用?

    如果他们测试升级、是否根据下面所示的步骤更新 EtherCAT 固件?
    EtherCAT 固件迁移指南 “(在 AM243x 工业通信 SDK 中):EtherCAT subdevice FWHAL。  

     

      

    [引用 userid=“550875" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1608290/am2432-can-t-detect-subdevice-by-bus-search-on-ctt-tool/6199019

    ESC DL 状态 (0x0110) 解决方案 将 PC 连接到 OUT 端口为 0x5611、它仅显示端口 0 处于链路状态。

    因此、端口 0 链路状态在未建立连接时有效?

    [/报价]

    它根据端口 0 的连接状态正确更改。  

    如果连接 CTT 工具和端口 0: 0x5611

    如果没有端口 0 连接: 0x5511

      

      

    此外、以下寄存器将有助于了解 EtherCAT 固件是否正在从 CTT 工具接收数据包:

    他们使用电缆将端口 0 连接到 PC 后立即检查计数器更新。
    更新完成后、他们从 CTT 工具运行扫描、并相应地更新计数器值。

      

      

    请确保 PHY 地址配置正确、并且链路极性也符合增强型链路的预期。 请参阅“ MDIO 工作原理进行链路检测 “(在 AM243x 工业通信 SDK 中):EtherCAT subdevice FWHAL。 MDIO PHY 地址应与 MDIO 链路寄存器匹配、交换它们可能导致未知问题。

    PHY 地址为端口 0=0、端口 1=1。

    EtherCAT 在 SysConfig 上定义如下:

      

      

    谢谢。此致、

    英明

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

    他们是否还可以从 PC 共享相应的 Wireshark 日志?

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

    您好 Pratheesh、

    请参阅随附的文件。 (Wireshark 捕获文件和屏幕截图图像)。

    只能获得 7 个数据包。 这些未被过滤。

     

    e2e.ti.com/.../CTT_5F00_CustomBoard_2800_AM2432_29005F00_log.pcapng

    此致、

    英明

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

    松本山

    因此、到对提供的详细信息进行了总结:

    问题摘要

    • 问题:尽管使用 TwinCAT 正常运行、但 CTT 工具在总线搜索期间无法检测到带有 TI EtherCAT 子器件堆栈的 AM2432 定制电路板。

    配置:

    • 硬件:AM2432 定制板(从 TMDS243EVM 移植)
    • 软件:AM2432 上的 IC SDK 11.0.0.13
    • 连接:AM2432 定制电路板与运行 CTT 工具的 PC 之间的直接连接
    • PHY 配置:端口 0=0、端口 1=1
    • SysConfig:
      • MDIO 手动模式基地址:0x10E40
      • MDIO 手动模式链路状态更新:基于 PHY 轮询
      • 增强链接:已禁用

    行为发现:

    • 与 TwinCAT 配合使用、但 CTT 失败
      • TwinCAT:通过总线搜索检测子器件、并按预期将通信转换至 Op 状态
      • CTT 工具:未在子设备的端口 0 上检测到子设备
      • 子设备完全不响应 CTT 工具发出的第一个 BWR 命令
    • BWR 数据包中的主要差异:
      • TwinCAT BWR:Mac 目的地=单播 (01:01:05:05:01:00:00)
      • CTT 工具 BWR:MAC 目标=广播 (FF:FF:FF:FF:FF:FF:FF:FF)
    • ESC DL 状态寄存器 (0x0110) 行为
      • PC 连接到 IN 端口:0x5611(只有端口 0 显示链路状态)
      • 将 PC 连接到 OUT 端口后:0x5a31(端口 0 和端口 1 都显示链路状态)
      • 链路状态根据端口 0 连接状态正确变化
    • 帧接收证据
      • 来自 CTT 工具的 BWR 数据包可通过输出端口(端口 1)上的 Wireshark 检索 — 这是否意味着仅连接端口 1 时扫描成功?
      • 端口 0 帧计数器正在递增 — 递增的值是否与 Wireshark 日志中的帧数相匹配?
    • PHY 配置
      • DL 状态按预期更新→PHY 配置正确
      • 端口 0 帧计数器递增→正在接收 BWR 帧、而不被丢弃

    您是否还能提供 ICSS 内存转储 (0x30000000 - 0x30040000)?

    还请提供 PHY 寄存器转储以交叉验证配置。 此外、客户在定制电路板中使用哪种 PHY?

    客户是否在  TMDS243EVM ICSSG0 实例上评估了相同的配置?  

    此致、
    Aaron

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

    您好 Aaron、

    感谢您总结当前情况。 客户希望更正您的一些意见并回答您的问题。

    请在下面查看他们的反馈。

    ----------------------------------------------------------------------------------------

    问题:尽管使用 TwinCAT、但 CTT 工具在总线搜索期间无法检测到带有 TI EtherCAT 子器件堆栈的 AM2432 定制电路板。

    它不是 TI 栈。 我们参考工业通信 SDK 中的 EtherCAT 子器件 Beckoff SSC 演示、移植了使用 Beckhoff SSC 工具创建的代码。 我们确认此堆栈在 EVM 上可以正常工作。

      

    CTT 工具中的 BWR 数据包可通过输出端口(端口 1)上的 Wireshark 检索 — 这是否意味着仅连接端口 1 时扫描成功?

    不、这是不正确的。 结果来自使用以下不正确的 EtherCAT 配置进行测试:
    CTT 工具–输入端口(端口 0)–输出端口(端口 1)–PC (Wireshark)

    采用此配置时、即使一切正常、BWR 数据包也会到达 PC (Wireshark)、然后被丢弃。
    然而、数据包到达 PC (Wireshark) 这一事实表明它们至少到达 AM2432。

      

    另外、客户在定制电路板中使用哪个 PHY?

    我们使用 DP83822。

     

    客户是否在  TMDS243EVM ICSSG0 实例上对相同内容进行了评估?

    我们尚未在 EVM 上评估 ICSSG0 实例。
    我们的理解是、由于硬件配置、无法使用 ICSSG0 实例。

    对于其他您的问题、我们会在确认后通知您。

    --------------------------------------------------------------------------------------------

     谢谢。此致、

    英明

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

    松本山

    这不是 TI 协议栈。 我们参考工业通信 SDK 中的 EtherCAT 子器件 Beckoff SSC 演示、移植了使用 Beckhoff SSC 工具创建的代码。 我们确认此堆栈在 EVM 上正常工作。

    我懂了。

    CTT 工具–输入端口(端口 0)–输出端口(端口 1)–PC (Wireshark)

    这看起来不是有效的测试环境。 在这种情况下、PC 不会充当子设备。 是否无法将 PC 连接到 CTT 工具并捕获帧?

    我们的理解是、由于硬件配置、无法使用 ICSSG0 实例。

    是、正确。 标准 AM243 EVM 没有电路板支持。 您可以通过定制板获得 PRU_ICSSG0 支持。

    此致、
    Aaron  

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

    您好 Aaron、

    感谢您发送编修。 请在下面查看客户的反馈。 由于他们也回复了您的询问、请提供任何建议。

      

    [引用 userid=“550875" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1608290/am2432-can-t-detect-subdevice-by-bus-search-on-ctt-tool/6201316
    CTT 工具–输入端口(端口 0)–输出端口(端口 1)–PC (Wireshark)

    这看起来不是有效的测试环境。 在这种情况下、PC 不会充当子设备。 是否无法将 PC 连接到 CTT 工具并捕获帧?

    [/报价]

    尚未使用 EtherCAT 将其作为正确配置进行测试。
    在 CTT 工具和 AM2432 的一对一配置中、Wireshark 只能在发送数据包的时间内验证来自 CTT 工具的数据包、因此我认为上述测试可以证明数据包到达 AM2432。
    但是、如果确认未对齐、请忽略它。

    我认为我已经发送的 Wireshark 日志就是答案。
    我们将发送通过在连接 CTT 工具的 PC 上运行的 Wireshark 获取的日志 — 在端口(端口 0)中。

      

      

    此外、我们能够测试启用了增强链路模式、但问题尚未解决。

    Port0 帧计数器正在递增 — 递增的值是否与 Wireshark 日志中的帧数相匹配?

    我们通过定期调用以下函数来监控 Rx 端口 0 帧计数器 (ESC 0x0E00)。


    uint32_t  ESC_val;
      HW_EscReadDWord (ESC_val、0x0E00);
      DebugP_LOG(“ESC REG 0x0E00 = 0x%x \n\r“、ESC_val);
    }

    然后、如下所示、由于与 Wireshark 上的帧数量相匹配、十六进制的第二位数字增加。  

    在 beginging : ESC REG 0x0E00 = 0x8 0 0

    在 Wireshark 上、确认发送了三个帧 (NOP): ESC REG 0x0E00 = 0x8 3. 0

    在 Wireshark 上、确认发送了四个帧 (BWR):  ESC REG 0x0E00 = 0x8 7. 0

     

     

    您是否还能提供 ICSS 内存转储 (0x30000000 - 0x30040000)?

    请参阅随附的文件。  我们以二进制格式转储 0x30000000 - 0x30040000、且 CTT 工具直接连接到 Port.e2e.ti.com/.../IPRU_5F00_CSSG0_5F00_0x30000000_2D00_0x30040000.bin 中的 

     

      

    还请提供 PHY 寄存器转储、以对配置进行交叉验证。 此外、客户在定制电路板中使用哪个 PHY?

    请参阅随附的文件。 我们使用直接连接到 IN 端口的 CTT 工具转储 IN/OUT 的寄存器。

    e2e.ti.com/.../PhyRegisterDump.txt

      

    谢谢。此致、

    英明

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在 CTT 工具和 AM2432 的一对一配置中、Wireshark 只能在发送数据包时验证来自 CTT 工具的数据包、因此我认为上述测试可以证明数据包到达 AM2432。

    这不正确、它还可以检测 DUT 一对一返回到配置的数据包、以及与 CTT 在同一 PC 上运行的 Wireshark。

    使用此配置时、即使一切正常、BWR 数据包仍应到达 PC (Wireshark)、然后被丢弃。
    然而、数据包到达 PC (Wireshark) 这一事实表明它们至少到达 AM2432。

     WKC 到达的这些数据包是否会递增? 否则、表明可能存在输入/输出端口交换的可能性。 如果 WKC 递增、则它确实是进程路径(当两个链路都处于活动状态时输入到输出)、如果不是、则为输出到输入(两个链路都处于活动状态)。

    [引述 userid=“10509" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1608290/am2432-can-t-detect-subdevice-by-bus-search-on-ctt-tool/6202804

    在 Wireshark 上、确认发送了三个帧 (NOP): ESC REG 0x0E00 = 0x8 3. 0

    在 Wireshark 上、确认发送了四个帧 (BWR):  ESC REG 0x0E00 = 0x8 7. 0

    [/报价]

    在这种情况下、他们是否可以从 PHY 验证 MII CLK?

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

    松本山

    感谢您提供 ICSS 存储器转储和 PHY 寄存器转储。 我会重新检视您的建议。

    此外、是否可以共享定制电路板的原理图来排除端口交换的任何可能性?

    此致、
    Aaron

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

    您好 Pratheesh、

    感谢您发送编修。 以下是客户的反馈。

      

    这不正确、它还可以检测 DUT 在与 CTT 相同的 PC 上一对一返回到配置和 Wireshark 的数据包。

    ‑、我知道在 1 μ s 到‑1 配置中、从 DUT 返回的数据包通常可以由在与 CTT 相同的 PC 上运行的 Wireshark 捕获。
    ‑、在这种情况下、未检测到这些返回数据包、因此我尝试了将 PC 连接到 OUT 端口的非 I ² C 标准设置。

      

     通过 WKC 到达的这些数据包是否会递增? 否则、表明可能存在输入/输出端口交换的可能性。 如果 WKC 增加、则它确实是进程路径(当两个链路都处于活动状态时输入到输出)、如果不是、则它是输出到输入(两个链路均处于活动状态)。

    BWR 命令的 WKC 会递增。
    虽然从 CTT 发送的数据包的 WKC 为 0、但从定制电路板的 OUT 端口发送的数据包显示 WKC 为 1。
      

      

      

    在本例中、他们是否可以从 PHY 验证 MII CLK?

     这是 MII CLK 波形。  

       

      

     

    谢谢。此致、
    英明

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

    松本山

    虽然从 CTT 发送的数据包的 WKC 为 0、但从定制电路板的 OUT 端口发送的数据包显示 WKC 为 1。
    只能获取 7 个数据包。 这些未过滤。

    仅将最新响应与之前共享的 Wireshark 日志(其中 WKC 不递增)进行比较、区别是什么?

    此致、
    Aaron

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

    松本山

    Port.IPRU_CSSG0_0x30000000-0x30040000.bin
     

    从日志中可以看出、我的观察结果如下:

    • 0x308(转发的 RX 错误计数器)饱和至 0xFF
    • 0x30c(ECAT 处理单元错误计数器)饱和至 0xFF
    • 0x210 和 0x311(端口 0 和端口 1 的链路丢失计数器)递增、这可能是由于测试环境中的链路中断所致。
    • 值为 1 的 0x0982-0x0983(SyncSignals 的脉冲长度)-看起来像 SyncSignals 的脉冲长度未从 EEPROM 进行更新。
    • 0x0EHC(PRU MII RX 链路极性)具有“低电平有效“。 如果禁用了增强链路、这一点无关紧要。
    • 0x0E48-0x0E4B(对于 MDIO 手动模式、MDIO 活动寄存器)指示组合的 PHY 地址(位 0 +位 1 设置)。
    • 0x0E4C-0x0E4F(用于 MDIO 手动模式的 MDIO 链路寄存器)指示端口 1 上的链路接通?

    跟进问题:

    • 客户能否澄清是否存在 RX 错误?

    MDIO 配置似乎正确。 我还将检查 PHY 寄存器、并查看是否有任何意外行为。

    此致、
    Aaron

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

    您好 Aaron、

     

    将最新响应与之前共享的 Wireshark 日志(其中 WKC 不递增)进行比较、有什么区别?

    抱歉、我们可能无法正确理解您的问题、但区别在于 Wireshark 日志中的 WC 为 0 或 1。 您可以在每个 Wireshark 日志的数据中看到它。

    谢谢。此致、

    英明

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

    您好 Aaron、

    感谢您的观察。

    客户能否澄清是否存在 RX 错误?

    关于 RX 错误计数器 (ESC 0x308)、在定制电路板上没有电缆连接的情况下、启动后计数器值立即确认为“0",“,并且、并且在将电缆连接到 CTT 工具 (PC) 后计数器值立即增加至 0xFF。

      

    正如您所注的、PHY 链路本身似乎已正确建立、因此他们无法理解上述错误计数器将增加的原因。

    此外、当他们检查 RX 错误计数器 (ESC 0x308) 时、即使在 EtherCAT 通信正常工作的配置中、错误计数器的行为也不同。

     

    < TwinCAT — –CustomBoard (AM2432)>

      在该配置下、在上电和 EtherCAT 通信转换到操作之间未观察到 RX 错误计数器增加。

     

    < CTT (PC)–EK1100 - CustomBoard (AM2432)>

      在该配置下、上电后 RX 错误计数器略微递增、然后在从 CTT 工具成功完成扫描时、计数器将清零。

      如果在此之后无人看管、计数器会稍微向上计数。

      ESC REG 0x308 = 0x16
      ESC REG 0x308 = 0x16
      ESC REG 0x308 = 0x16
      ESC REG 0x308 = 0x0   <= CTT 工具完成扫描时清除的值。
      ESC REG 0x308 = 0x0
      ESC REG 0x308 = 0x0
      ESC REG 0x308 = 0x0
      ESC REG 0x308 = 0x2
      ESC REG 0x308 = 0x2

     

    您能告诉我们 RX 错误计数器 (ESC 0x308) 计数的条件是什么?

     

    谢谢。此致、

    英明

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

    松本山

    您能告诉我们 RX 错误计数器 (ESC 0x308) 计数的条件是什么吗?

    0x308 和 0x30A 将跟踪转发的错误计数器。 当前一个器件检测到 CRC 时、它将在数据包的 FCS 之后添加奇半字节、而 ESC 将在此处计算转发的 CRC 错误。  

    这将有助于识别网络中的哪个节点正在生成 CRC 错误。  

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

    您好 Aaron、  

    感谢您支持该问题。

    通过修改 DP83822 上的以下寄存器、他们的电路板还能够与 CTT 工具通信。

    CR2 (0xA)= 0x0102
    CR3 (0xb)= 0x1008
    ANAR (0x4)= 0x01e1
    PHYCR (0x19)= 0x802*   * PHY 地址

    BMCR (0x0)= 0x3100

     

    现在、他们正在继续检查这一点、因为他们不知道为什么这种修改可以解决问题。

    我已关闭该主题。 如果我们从他们那里收到任何更新、我会发布另一个线程。

    谢谢。此致、

    松本秀明