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.
尊敬的工程师:
我们有一个 LAUNCHXL-F28P65X 用于 EtherCAT 测试。 与中所述的解决方案结合使用
"">e2e.ti.com/.../launchxl-f28p65x-unable-to-scan-for-the-device-by-twincat"、
在我们更换 PHY 芯片后、EtherCAT 工作正常。 我们的测试代码为:
"C:\ti\c2000\C2000Ware_5_01_00_00\libraries\communications\ethercat\f28p65x\examples\f28p65x_cpu1_echoback_solution"
该工程仅使用 CPU1。 我们使用了闪存构建选项、因此即使重新供电也能正常运行。 但是、当我们使用 CPU2测试 EtherCAT 通信时、它不能正常工作、下面是我们的完整测试程序、您应该可以轻松地重现此过程。
1.软件版本
CCS:12.5.0.00007
C2000Ware:C2000Ware_5_01_00_00
TwinCAT 版本:v3.1.4024.12
SSC 版本:5.12
示例项目位置:***\C2000Ware_5_01_00_00\libraries\communications\ethercat\f28p65x\examples\f28p65x_cpu2_echoback_solution
2.问题说明
使用 SSC 生成 EtherCAT 堆栈源代码并导入 f28p65x_CPU2_echoback_solution 工程:
两个项目都切换到闪存构建并添加_LAUNCHXL_F28P65X 宏定义:
添加 EterhCAT 堆栈源路径、以确保正确编译 f28p65x_cpu2_echoback_solution 工程:
编译后、获取 f28p65x_cpu1_allocat_ecat_to_cpu2和 f28p65x_cpu2_echoback_solution 的以下信息:
为确保正确下载到闪存、为 f28p65x_cpu1_allocat_ecat_to_CPU2添加了以下配置:
下载完成后、首先点击 CPU1的工程以运行、然后点击 CPU2的工程以运行:
将生成的 xml 文件从 SSC 复制到"C:\TwinCAT\3.1\Config\Io\EtherCAT"、然后重新打开 TwinCAT 以开始扫描:
虽然可以扫描器件、但在点击 OK 后、CPU2指示它已输入非法错误:
同时、TwinCAT 无法进入 OP 状态:
因此、我们想问 f28p65x_cpu2_echoback_solution 项目是否正常运行? 是不是我们错过了一些关键步骤?
如果您也可以重现问题、我们如何解决该问题?
谢谢!
问题迎刃而解。 关键是下载顺序。 在运行 CPU1程序之前、请考虑尚未将 GSRAM 权限分配给 CPU2。 我们需要先下载 CPU1的程序并运行、然后下载 CPU2的程序并在之后运行、这样就可以正常工作。 以下是关键步骤:
1. 为 CPU1加载程序并运行;
2. 确保 CPU2内核未连接;
3、连接 CPU2内核,为 CPU2加载程序;
4.运行 CPU2、工程应该可以工作。